Module: Linzer::Key::Helper
- Included in:
- Linzer
- Defined in:
- lib/linzer/key/helper.rb
Instance Method Summary collapse
-
#generate_ecdsa_p256_sha256_key(key_id = nil) ⇒ Object
www.rfc-editor.org/rfc/rfc4492.html#appendix-A Table 6: Equivalent curves defined by SECG, ANSI, and NIST secp256r1 | prime256v1 | NIST P-256.
-
#generate_ecdsa_p384_sha384_key(key_id = nil) ⇒ Object
www.rfc-editor.org/rfc/rfc4492.html#appendix-A Table 6: Equivalent curves defined by SECG, ANSI, and NIST secp384r1 | | NIST P-384.
- #generate_ed25519_key(key_id = nil) ⇒ Object
- #generate_hmac_sha256_key(key_id = nil) ⇒ Object
- #generate_jws_key(algorithm:) ⇒ Object
- #generate_rsa_pss_sha512_key(size, key_id = nil) ⇒ Object
- #generate_rsa_v1_5_sha256_key(size, key_id = nil) ⇒ Object
- #jwk_import(key, params = {}) ⇒ Object
- #new_ecdsa_p256_sha256_key(material, key_id = nil) ⇒ Object
- #new_ecdsa_p384_sha384_key(material, key_id = nil) ⇒ Object
- #new_ed25519_key(material, key_id = nil) ⇒ Object
- #new_ed25519_public_key(material, key_id = nil) ⇒ Object
- #new_hmac_sha256_key(material, key_id = nil) ⇒ Object
- #new_rsa_pss_sha512_key(material, key_id = nil) ⇒ Object
-
#new_rsa_pss_sha512_public_key(material, key_id = nil) ⇒ Object
XXX: investigate: was this method made redundant after: github.com/nomadium/linzer/pull/10.
- #new_rsa_v1_5_sha256_key(material, key_id = nil) ⇒ Object
-
#new_rsa_v1_5_sha256_public_key(material, key_id = nil) ⇒ Object
XXX: investigate: was this method made redundant after: github.com/nomadium/linzer/pull/10.
Instance Method Details
#generate_ecdsa_p256_sha256_key(key_id = nil) ⇒ Object
www.rfc-editor.org/rfc/rfc4492.html#appendix-A Table 6: Equivalent curves defined by SECG, ANSI, and NIST secp256r1 | prime256v1 | NIST P-256
66 67 68 69 |
# File 'lib/linzer/key/helper.rb', line 66 def generate_ecdsa_p256_sha256_key(key_id = nil) material = OpenSSL::PKey::EC.generate("prime256v1") Linzer::ECDSA::Key.new(material, id: key_id, digest: "SHA256") end |
#generate_ecdsa_p384_sha384_key(key_id = nil) ⇒ Object
www.rfc-editor.org/rfc/rfc4492.html#appendix-A Table 6: Equivalent curves defined by SECG, ANSI, and NIST secp384r1 | | NIST P-384
79 80 81 82 |
# File 'lib/linzer/key/helper.rb', line 79 def generate_ecdsa_p384_sha384_key(key_id = nil) material = OpenSSL::PKey::EC.generate("secp384r1") Linzer::ECDSA::Key.new(material, id: key_id, digest: "SHA384") end |
#generate_ed25519_key(key_id = nil) ⇒ Object
49 50 51 52 |
# File 'lib/linzer/key/helper.rb', line 49 def generate_ed25519_key(key_id = nil) material = OpenSSL::PKey.generate_key("ed25519") Linzer::Ed25519::Key.new(material, id: key_id) end |
#generate_hmac_sha256_key(key_id = nil) ⇒ Object
40 41 42 43 |
# File 'lib/linzer/key/helper.rb', line 40 def generate_hmac_sha256_key(key_id = nil) material = OpenSSL::Random.random_bytes(64) Linzer::HMAC::Key.new(material, id: key_id, digest: "SHA256") end |
#generate_jws_key(algorithm:) ⇒ Object
89 90 91 |
# File 'lib/linzer/key/helper.rb', line 89 def generate_jws_key(algorithm:) Linzer::JWS.generate_key(algorithm: algorithm) end |
#generate_rsa_pss_sha512_key(size, key_id = nil) ⇒ Object
6 7 8 9 |
# File 'lib/linzer/key/helper.rb', line 6 def generate_rsa_pss_sha512_key(size, key_id = nil) material = OpenSSL::PKey.generate_key("RSASSA-PSS") Linzer::RSAPSS::Key.new(material, id: key_id, digest: "SHA512") end |
#generate_rsa_v1_5_sha256_key(size, key_id = nil) ⇒ Object
23 24 25 26 |
# File 'lib/linzer/key/helper.rb', line 23 def generate_rsa_v1_5_sha256_key(size, key_id = nil) material = OpenSSL::PKey::RSA.generate(size) Linzer::RSA::Key.new(material, id: key_id, digest: "SHA256") end |
#jwk_import(key, params = {}) ⇒ Object
93 94 95 |
# File 'lib/linzer/key/helper.rb', line 93 def jwk_import(key, params = {}) Linzer::JWS.jwk_import(key, params) end |
#new_ecdsa_p256_sha256_key(material, key_id = nil) ⇒ Object
71 72 73 74 |
# File 'lib/linzer/key/helper.rb', line 71 def new_ecdsa_p256_sha256_key(material, key_id = nil) key = OpenSSL::PKey::EC.new(material) Linzer::ECDSA::Key.new(key, id: key_id, digest: "SHA256") end |
#new_ecdsa_p384_sha384_key(material, key_id = nil) ⇒ Object
84 85 86 87 |
# File 'lib/linzer/key/helper.rb', line 84 def new_ecdsa_p384_sha384_key(material, key_id = nil) key = OpenSSL::PKey::EC.new(material) Linzer::ECDSA::Key.new(key, id: key_id, digest: "SHA384") end |
#new_ed25519_key(material, key_id = nil) ⇒ Object
54 55 56 57 |
# File 'lib/linzer/key/helper.rb', line 54 def new_ed25519_key(material, key_id = nil) key = OpenSSL::PKey.read(material) Linzer::Ed25519::Key.new(key, id: key_id) end |
#new_ed25519_public_key(material, key_id = nil) ⇒ Object
59 60 61 |
# File 'lib/linzer/key/helper.rb', line 59 def new_ed25519_public_key(material, key_id = nil) new_ed25519_key(material, key_id) end |
#new_hmac_sha256_key(material, key_id = nil) ⇒ Object
45 46 47 |
# File 'lib/linzer/key/helper.rb', line 45 def new_hmac_sha256_key(material, key_id = nil) Linzer::HMAC::Key.new(material, id: key_id, digest: "SHA256") end |
#new_rsa_pss_sha512_key(material, key_id = nil) ⇒ Object
11 12 13 14 |
# File 'lib/linzer/key/helper.rb', line 11 def new_rsa_pss_sha512_key(material, key_id = nil) key = OpenSSL::PKey.read(material) Linzer::RSAPSS::Key.new(key, id: key_id, digest: "SHA512") end |
#new_rsa_pss_sha512_public_key(material, key_id = nil) ⇒ Object
XXX: investigate: was this method made redundant after: github.com/nomadium/linzer/pull/10
18 19 20 21 |
# File 'lib/linzer/key/helper.rb', line 18 def new_rsa_pss_sha512_public_key(material, key_id = nil) key = OpenSSL::PKey::RSA.new(material) Linzer::RSAPSS::Key.new(key, id: key_id, digest: "SHA512") end |
#new_rsa_v1_5_sha256_key(material, key_id = nil) ⇒ Object
28 29 30 31 |
# File 'lib/linzer/key/helper.rb', line 28 def new_rsa_v1_5_sha256_key(material, key_id = nil) key = OpenSSL::PKey.read(material) Linzer::RSA::Key.new(key, id: key_id, digest: "SHA256") end |
#new_rsa_v1_5_sha256_public_key(material, key_id = nil) ⇒ Object
XXX: investigate: was this method made redundant after: github.com/nomadium/linzer/pull/10
35 36 37 38 |
# File 'lib/linzer/key/helper.rb', line 35 def new_rsa_v1_5_sha256_public_key(material, key_id = nil) key = OpenSSL::PKey.read(material) Linzer::RSA::Key.new(key, id: key_id, digest: "SHA256") end |