Module: BSV::Wallet::Serializer::Decrypt::Args
- Defined in:
- lib/bsv/wallet/serializer/decrypt.rb
Overview
Args wire layout:
[key-related params]
[VarInt ciphertext_len][ciphertext bytes]
[optional_bool seek_permission]
Class Method Summary collapse
Class Method Details
.deserialize(bytes) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/bsv/wallet/serializer/decrypt.rb', line 34 def deserialize(bytes) r = BSV::Wallet::Wire::Reader.new(bytes) params = Common.(r) len = r.read_varint ciphertext = r.read_bytes(len) = r.read_optional_bool params.merge(ciphertext: ciphertext, seek_permission: ) end |
.serialize(args) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/bsv/wallet/serializer/decrypt.rb', line 17 def serialize(args) w = BSV::Wallet::Wire::Writer.new Common.( w, protocol_id: args[:protocol_id], key_id: args[:key_id], counterparty: args[:counterparty], privileged: args[:privileged], privileged_reason: args[:privileged_reason] ) ciphertext = Common.to_binary(args[:ciphertext]) w.write_varint(ciphertext.bytesize) w.write_bytes(ciphertext) w.write_optional_bool(args[:seek_permission]) w.buf end |