class Aptible::CLI::Helpers::SecurityKey::AuthenticatorParameters

Attributes

app_id[R]
assert_str[R]
challenge[R]
client_data[R]
device_location[R]
key_handle[R]
origin[R]
request[R]
rp_id[R]
version[R]

Public Class Methods

new(origin, challenge, app_id, device, device_location) click to toggle source
# File lib/aptible/cli/helpers/security_key.rb, line 17
def initialize(origin, challenge, app_id, device, device_location)
  @origin = origin
  @challenge = challenge
  @app_id = app_id
  @version = device.version
  @key_handle = device.key_handle
  @rp_id = device.rp_id
  @version = device.version
  @device_location = device_location
  @client_data = {
    type: 'webauthn.get',
    challenge: challenge,
    origin: origin,
    crossOrigin: false
  }.to_json
  key_handle = Base64.strict_encode64(
    Base64.urlsafe_decode64(device.key_handle)
  )
  client_data_hash = Digest::SHA256.base64digest(@client_data)
  in_str = "#{client_data_hash}\n" \
    "#{device.rp_id}\n" \
    "#{key_handle}"
  @assert_str = in_str
end