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

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

Overview

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:



176
177
178
179
180
181
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 176

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.



170
171
172
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 170

def identity
  @identity
end

#obfuscated_ticket_ageObject (readonly)

Returns the value of attribute obfuscated_ticket_age.



170
171
172
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 170

def obfuscated_ticket_age
  @obfuscated_ticket_age
end

Instance Method Details

#serializeString

Returns:

  • (String)


184
185
186
187
188
189
# File 'lib/tttls1.3/message/extension/pre_shared_key.rb', line 184

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