Class: TTTLS13::Message::Extension::PskIdentity

Inherits:
Object
  • Object
show all
Defined in:
lib/tttls1.3/message/extension/pre_shared_key.rb

Overview

NOTE:

struct {
    opaque identity<1..2^16-1>;
    uint32 obfuscated_ticket_age;
} PskIdentity;

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(identity: '', obfuscated_ticket_age: 0) ⇒ PskIdentity

Returns a new instance of PskIdentity.

Parameters:

  • identity (String) (defaults to: '')
  • obfuscated_ticket_age (Integer) (defaults to: 0)

Raises:



188
189
190
191
192
193
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 188

def initialize(identity: '', obfuscated_ticket_age: 0)
  @identity = identity || ''
  @obfuscated_ticket_age = obfuscated_ticket_age
  raise Error::ErrorAlerts, :internal_error \
    if @identity.empty? || @obfuscated_ticket_age.negative?
end

Instance Attribute Details

#identityObject (readonly)

Returns the value of attribute identity.



181
182
183
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 181

def identity
  @identity
end

#obfuscated_ticket_ageObject (readonly)

Returns the value of attribute obfuscated_ticket_age.



182
183
184
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 182

def obfuscated_ticket_age
  @obfuscated_ticket_age
end

Instance Method Details

#serializeString

Returns:

  • (String)


196
197
198
199
200
201
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 196

def serialize
  binary = ''
  binary += @identity.prefix_uint16_length
  binary += @obfuscated_ticket_age.to_uint32
  binary
end