Bech32m

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

Bech32m è il formato di indirizzi introdotto con l'aggiornamento Taproot.

Bech32m è una versione modificata dello schema di codifica Bech32, utilizzato per codificare gli indirizzi SegWit. Bech32m è quasi identico a Bech32: Utilizza una codifica di tipo base32 che è più resistente agli errori rispetto alla codifica base58 utilizzata nei normali indirizzi Bitcoin.; usa solo lettere minuscole; e inizia con una parte leggibile dall'uomo, che è "bc1" per gli indirizzi SegWit. Bech32 ha un meccanismo di rilevamento degli errori integrato, che ha lo scopo di rilevare alterazioni ai dati codificati da Bech32.

Tuttavia, l'implementazione originale di Bech32 presentava una vulnerabilità in questo meccanismo, che consentiva a un utente malintenzionato di modificare un indirizzo senza invalidare il checksum.

Quando una stringa Bech32 termina con una "p", l'aggiunta o la rimozione di "q" prima della "p" non la invalida. Bech32m rimuove questa vulnerabilità modificando una costante utilizzata nello schema di codifica, ed è quindi più sicuro.

Come specificato in BIP 350 come schema di codifica per gli indirizzi SegWit versione 1 (Taproot).


aggiornato il 2022-12-20