Module: AdequateCryptoAddress::Utils::Xlm
- Defined in:
- lib/adequate_crypto_address/utils/xlm.rb
Constant Summary collapse
- CHARSET =
'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'
Class Method Summary collapse
Class Method Details
.convertbits(data, frombits, tobits, pad: true) ⇒ Object
20 21 22 |
# File 'lib/adequate_crypto_address/utils/xlm.rb', line 20 def convertbits(data, frombits, tobits, pad: true) Bech32.convert_bits(data, from_bits: frombits, to_bits: tobits, pad: pad) end |
.decode(input) ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/adequate_crypto_address/utils/xlm.rb', line 10 def decode(input) values = input.chars.map { |c| CHARSET.index(c) } return nil if values.include?(nil) bytes = convertbits(values, 5, 8, pad: false) return nil unless bytes bytes.pack('C*') end |