aboutsummaryrefslogtreecommitdiff
path: root/src/leveldb/README.md
diff options
context:
space:
mode:
authorAva Chow <github@achow101.com>2024-06-04 20:32:25 -0400
committerAva Chow <github@achow101.com>2024-06-04 20:32:25 -0400
commit55cf34a5c30f1aee0737b48fa2814996359eca89 (patch)
tree13af2fb645850f449759b08f0ad28c1bc797272c /src/leveldb/README.md
parent09fe1435d9cae5d32fa4e24042d7a862b7c7bf22 (diff)
parent7f3f6c6dc80247e6dfb0d406dc53bc8198f029fd (diff)
Merge bitcoin/bitcoin#30047: refactor: Model the bech32 charlimit as an Enum
7f3f6c6dc80247e6dfb0d406dc53bc8198f029fd refactor: replace hardcoded numbers (LÅ‘rinc) 5676aec1e1a6d2c6fd3099e120e263a0a7def089 refactor: Model the bech32 charlimit as an Enum (josibake) Pull request description: Broken out from #28122 --- Bech32(m) was defined with a 90 character limit so that certain guarantees for error detection could be made for segwit addresses (see https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki#checksum-design). However, there is nothing about the encoding scheme itself that requires a limit of 90 and in practice bech32(m) is being used without the 90 char limit (e.g. lightning invoices, silent payments). Further, increasing the character limit doesn't do away with error detection, it simply changes the guarantee. The primary motivation for this change is for being able to parse BIP352 v0 silent payment addresses (see https://github.com/bitcoin/bitcoin/pull/28122/commits/622c7a98b9f08177a3cfb601306daabb101af1fd), which require up to 118 characters. In addition to BIP352, modeling the character limit as an enum allows us to easily support new address types that use bech32m and specify their own character limit. ACKs for top commit: paplorinc: re-ACK 7f3f6c6dc80247e6dfb0d406dc53bc8198f029fd achow101: ACK 7f3f6c6dc80247e6dfb0d406dc53bc8198f029fd theuni: utACK 7f3f6c6dc80247e6dfb0d406dc53bc8198f029fd Tree-SHA512: 9c793d657448c1f795093b9f7d4d6dfa431598f48d54e1c899a69fb2f43aeb68b40ca2ff08864eefeeb6627d4171877234b5df0056ff2a2b84415bc3558bd280
Diffstat (limited to 'src/leveldb/README.md')
0 files changed, 0 insertions, 0 deletions