class Mobius::Client::Auth::Sign
Signs challenge transaction on user's side.
Public Instance Methods
call()
click to toggle source
Adds signature to given transaction.
@return [String] base64-encoded transaction envelope
# File lib/mobius/client/auth/sign.rb, line 26 def call validate! envelope.dup.tap { |e| e.signatures << e.tx.sign_decorated(keypair) }.to_xdr(:base64) end
Private Instance Methods
developer_keypair()
click to toggle source
@return [Stellar::Keypair] Stellar::Keypair object for given address.
# File lib/mobius/client/auth/sign.rb, line 39 def developer_keypair @developer_keypair ||= Stellar::KeyPair.from_address(address) end
envelope()
click to toggle source
@return [Stellar::TransactionEnvelope] Stellar::TransactionEnvelope for given challenge.
# File lib/mobius/client/auth/sign.rb, line 44 def envelope @envelope ||= Stellar::TransactionEnvelope.from_xdr(xdr, "base64") end
keypair()
click to toggle source
@return [Stellar::Keypair] Stellar::Keypair object for given seed.
# File lib/mobius/client/auth/sign.rb, line 34 def keypair @keypair ||= Stellar::KeyPair.from_seed(seed) end
validate!()
click to toggle source
# File lib/mobius/client/auth/sign.rb, line 48 def validate! raise Mobius::Client::Error::Unauthorized unless envelope.signed_correctly?(developer_keypair) end