mirror of
https://github.com/pezkuwichain/pezkuwi-wallet-android.git
synced 2026-07-22 13:45:48 +00:00
b32f3e8d50
Phase 1 of native BTC send/receive support (native SegWit/P2WPKH only, bc1q... addresses - Taproot and legacy/P2SH-SegWit explicitly out of scope). Hand-rolled since no Bitcoin library exists on this project's classpath (bitcoinj/PSBT/Base58/ Bech32) - same rationale as this session's Tron work needing its own Base58Check. - Bech32/Bech32m codec (BIP173/BIP350) + segwit address encode/decode - DER ECDSA signature encoding with BIP62 low-S normalization - HASH160/P2WPKH scriptPubKey construction and address<->accountId conversion - BIP143 sighash computation and raw segwit transaction serialization Every primitive is verified byte-for-byte against official BIP173/BIP350/BIP143 test vectors (fetched directly from github.com/bitcoin/bips at implementation time) - see each *Test.kt's doc comment for exact vector provenance. No JDK is available in this environment to run these locally; also cross-verified via an independent Python transliteration of each function before committing.