Class: JWK::ASN1

Inherits:
Object
  • Object
show all
Defined in:
lib/jwk/asn1.rb

Class Method Summary collapse

Class Method Details

.ec_private_key(crv, d, raw_public_key) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/jwk/asn1.rb', line 14

def ec_private_key(crv, d, raw_public_key)
  object_id = object_id_for_crv(crv)

  sequence(
    integer(1),
    integer_octet_string(d),
    context_specific(true, 0, object_id),
    context_specific(true, 1, bit_string(raw_public_key))
  )
end

.rsa_private_key(*args) ⇒ Object



9
10
11
12
# File 'lib/jwk/asn1.rb', line 9

def rsa_private_key(*args)
  raise ArgumentError('Some pieces missing for RSA Private Key') unless args.length == 8
  sequence(integer(0), *args.map { |n| integer(n) })
end

.rsa_public_key(n, e) ⇒ Object



4
5
6
7
# File 'lib/jwk/asn1.rb', line 4

def rsa_public_key(n, e)
  pubkey = bit_string(sequence(integer(n), integer(e)))
  sequence(rsa_header, pubkey)
end