lib/stellar/key_pair.rb in stellar-base-0.23.1 vs lib/stellar/key_pair.rb in stellar-base-0.24.0.pre.1

- old
+ new

@@ -1,43 +1,47 @@ module Stellar class KeyPair - def self.from_seed(seed) - seed_bytes = Util::StrKey.check_decode(:seed, seed) - from_raw_seed seed_bytes - end + module FactoryMethods + def from_seed(seed) + seed_bytes = Util::StrKey.check_decode(:seed, seed) + from_raw_seed seed_bytes + end - def self.from_raw_seed(seed_bytes) - secret_key = RbNaCl::SigningKey.new(seed_bytes) - public_key = secret_key.verify_key - new(public_key, secret_key) - end + def from_raw_seed(seed_bytes) + secret_key = RbNaCl::SigningKey.new(seed_bytes) + public_key = secret_key.verify_key + new(public_key, secret_key) + end - def self.from_public_key(pk_bytes) - public_key = RbNaCl::VerifyKey.new(pk_bytes) - new(public_key) - end + def from_public_key(pk_bytes) + public_key = RbNaCl::VerifyKey.new(pk_bytes) + new(public_key) + end - def self.from_address(address) - pk_bytes = Util::StrKey.check_decode(:account_id, address) - from_public_key(pk_bytes) - end + def from_address(address) + pk_bytes = Util::StrKey.check_decode(:account_id, address) + from_public_key(pk_bytes) + end - def self.random - secret_key = RbNaCl::SigningKey.generate - public_key = secret_key.verify_key - new(public_key, secret_key) - end + def random + secret_key = RbNaCl::SigningKey.generate + public_key = secret_key.verify_key + new(public_key, secret_key) + end - def self.from_network_passphrase(passphrase) - network_id = Digest::SHA256.digest(passphrase) - from_raw_seed network_id - end + def from_network_passphrase(passphrase) + network_id = Digest::SHA256.digest(passphrase) + from_raw_seed network_id + end - def self.master - from_raw_seed(Stellar.current_network_id) + def master + from_raw_seed(Stellar.current_network_id) + end end + extend FactoryMethods + def initialize(public_key, secret_key = nil) @public_key = public_key @secret_key = secret_key end @@ -112,8 +116,12 @@ @public_key.verify(signature, message) rescue RbNaCl::LengthError false rescue RbNaCl::BadSignatureError false + end + + def to_keypair + self end end end