mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-11-10 06:07:16 +01:00
It is very difficult for the fuzzer to create a valid checksum for each serialized invoice, and we were therefore unable to fuzz deeper than invoice decoding. We can help the fuzzer generate valid serialized invoices by calculating and appending the checksum ourselves. We also switch to using mainnet invoices to make it easier to find valid invoices for seeding the fuzzer. We prepend the required "lnbc" prefix ourselves to further help the fuzzer generate valid invoices.
zpay32
The zpay32 package implements a basic scheme for the encoding of payment
requests between two lnd nodes within the Lightning Network. The zpay32
encoding scheme uses the
zbase32
scheme along with a checksum to encode a serialized payment request.
The payment request serialized by the package consist of: the destination's public key, the payment hash to use for the payment, and the value of payment to send.
Installation and Updating
$ go get -u github.com/lightningnetwork/lnd/zpay32