Class: Sandal::Sig::ES256

Inherits:
ES
  • Object
show all
Defined in:
lib/sandal/sig/es.rb

Overview

The ECDSA-SHA256 signing algorithm.

Constant Summary collapse

NAME =

The JWA name of the algorithm.

"ES256"
CURVE_NAME =

The ECDSA curve name.

"prime256v1"

Instance Attribute Summary

Attributes inherited from ES

#name

Instance Method Summary collapse

Methods inherited from ES

decode_asn1_signature, decode_jws_signature, encode_asn1_signature, encode_jws_signature, #sign, #valid?

Constructor Details

#initialize(key) ⇒ ES256

Creates a new instance.

Parameters:

  • key (OpenSSL::PKey::EC or String)

    The key to use for signing (private) or validation (public). If the value is a String then it will be passed to the constructor of the EC class.

Raises:

  • (ArgumentError)

    The key is not in the “prime256v1” group.



124
125
126
# File 'lib/sandal/sig/es.rb', line 124

def initialize(key)
  super(NAME, 256, 256, make_key(key, CURVE_NAME))
end