Class: Myra::Request::Signature
- Inherits:
-
Object
- Object
- Myra::Request::Signature
- Defined in:
- lib/myra/request/signature.rb
Constant Summary collapse
- REQUEST_STRING =
'myra-api-request'
Instance Attribute Summary collapse
-
#base ⇒ Object
readonly
Returns the value of attribute base.
-
#date ⇒ Object
readonly
Returns the value of attribute date.
-
#secret ⇒ Object
readonly
Returns the value of attribute secret.
Instance Method Summary collapse
- #date_key ⇒ Object
- #for(signing_string) ⇒ Object
-
#initialize(secret:, date:, base: 'MYRA') ⇒ Signature
constructor
A new instance of Signature.
- #signing_key ⇒ Object
Constructor Details
#initialize(secret:, date:, base: 'MYRA') ⇒ Signature
Returns a new instance of Signature.
11 12 13 14 15 |
# File 'lib/myra/request/signature.rb', line 11 def initialize(secret:, date:, base: 'MYRA') @secret = secret @date = date @base = base end |
Instance Attribute Details
#base ⇒ Object (readonly)
Returns the value of attribute base.
9 10 11 |
# File 'lib/myra/request/signature.rb', line 9 def base @base end |
#date ⇒ Object (readonly)
Returns the value of attribute date.
9 10 11 |
# File 'lib/myra/request/signature.rb', line 9 def date @date end |
#secret ⇒ Object (readonly)
Returns the value of attribute secret.
9 10 11 |
# File 'lib/myra/request/signature.rb', line 9 def secret @secret end |
Instance Method Details
#date_key ⇒ Object
17 18 19 |
# File 'lib/myra/request/signature.rb', line 17 def date_key method.(digest, "#{base}#{secret}", date) end |
#for(signing_string) ⇒ Object
25 26 27 |
# File 'lib/myra/request/signature.rb', line 25 def for(signing_string) base64.(hmac_method.(digest('sha512'), signing_key, signing_string)) end |
#signing_key ⇒ Object
21 22 23 |
# File 'lib/myra/request/signature.rb', line 21 def signing_key method.(digest, date_key, REQUEST_STRING) end |