mrtnetwork/blockchain_utils

GitHub: mrtnetwork/blockchain_utils

纯 Dart 跨平台区块链与密码学工具库,提供多链地址编解码、BIP 系列密钥派生、助记词管理、加密算法与签名验证等一站式能力。

Stars: 36 | Forks: 19

# blockchain_utils 探索一个多功能且强大的加密工具包,它由纯 Dart 精心打造,旨在为多个平台的开发者、企业和区块链爱好者提供服务。该软件包提供了广泛的核心功能,包括针对各种数据格式的编码/解码、对众多区块链地址的支持、强大的加密算法、助记词管理等——所有这些都无需依赖外部库。无论您是希望保护私钥安全、与区块链网络进行交互,还是确保数据的完整性,这款跨平台解决方案都能简化您的加密之旅。体验一套专为满足您在 iOS、Android、Web、Linux 等平台上多样化的编码、加密和区块链需求而设计的全面工具。 这个综合性的软件包在开发过程中受到了几个关键来源的启发,最终促成了其 Dart 版本的诞生。 - python [bip_utils](https://github.com/ebellocchia/bip_utils) - python [ecdsa](https://github.com/tlsfuzzer/python-ecdsa) - rust [schnorrkel](https://github.com/w3f/schnorrkel) - js [stablelib](https://github.com/StableLib/stablelib) - rust [strobe](https://github.com/rozbb/strobe-rs) ## 功能 **编码与解码:** 1. **Base32 编码/解码:** 使用自定义字符集表示二进制数据,以满足各种编码需求。 2. **SS58 编码/解码:** 以紧凑且易读的格式编码基于 Substrate 的区块链地址和公钥。 3. **Base58 和 Base58 XMR 编码/解码:** 高效地编码二进制数据,其中 Base58 XMR 专为 Monero 地址定制。 4. **Base58Check 编码/解码:** 支持在区块链相关数据中创建和校验校验和。 5. **Bech32 编码/解码:** 包括用于 Bitcoin Cash (BCH) 的 Bech32 和 Bech32 SegWit 地址,为区块链地址提供更好的错误检测和可读性。 6. **Hex 编码/解码:** 将二进制数据编码为十六进制,并能将其解码还原。 7. **Web3 Secret Storage Definition:** 使用 Web3 Secret Storage 格式安全地存储和管理私钥。 8. **UUIDv4 生成:** 遵循 UUIDv4 标准生成随机 UUID(通用唯一识别码)。 **区块链地址编码/解码:** - Zilliqa (ZIL) - Tezos (XTZ) - Ripple (XRP) - Monero (XMR) - Substrate address - Solana (SOL) - P2WPKH - P2TR - P2SH - Bitcoin Cash P2PKH - Harmony (ONE) - OKEx - Neo - NEAR - Nano - Injective - ICON - Filecoin - Ethereum - Ergo - EOS - Elrond - AVAX - Atom - Aptos - Algorand - Ada Shelley - Ada Byron - Ton **二进制数据:** 9. **CBOR 编码/解码:** 以跨语言兼容的方式紧凑地表示结构化数据。 **加密算法:** 10. **加密算法与操作:** - AES (Advanced Encryption Standard) - ChaCha - ChaCha20Poly1305 - CRC32 (Cyclic Redundancy Check) - CTR mode (Counter mode) - ECB mode (Electronic Codebook mode) - GCM (Galois/Counter Mode) - HMAC (Hash-based Message Authentication Code) - PBKDF2 (Password-Based Key Derivation Function 2) - Poly1305 - scrypt (Password-based Key Derivation Function) - XModem CRC - Blake2b - Keccak - MD4 (Message Digest 4) - MD5 (Message Digest 5) - Rijndael (AES) - SHA (Secure Hash Algorithm) - SHA224 - SHA256 - SHA384 - SHA512 - XXhash 这些算法提供了广泛的加密功能,包括加密、解密、消息认证、哈希处理等,从而增强应用程序的安全性和数据完整性。 **协议:** 11. **Strobe Protocol:** 一个用于加密协议的框架,为各种设备提供了简洁性与兼容性。 **零知识证明:** 12. **Merlin Transcript:** 一种基于 STROBE 的记录构建方式,用于零知识证明。 **基于 Schnorrkel 的加密技术:** 13. **基于 Schnorrkel 的加密操作:** 包括用于签名、验证、密钥管理等操作的 Schnorrkel。 **区块链支持:** 14. **BIP39 助记词生成与管理:** 生成符合 BIP39 标准的助记词,并管理从中派生出的加密密钥。 15. **Substrate 密钥、地址和代币管理:** 在基于 Substrate 的区块链中高效管理密钥和地址。 16. **Monero 密钥、地址和代币管理:** 处理 Monero 加密货币,支持密钥管理、地址派生和 Monero 助记词。 17. **BIP32 多曲线密钥派生与地址管理:** 在符合 BIP32 标准的前提下,跨越多个加密曲线派生密钥。 18. **SLIP10 密钥派生与管理:** 高级的密钥派生功能。 19. **BIP38 安全纸钱包:** 加密私钥以保护加密货币资产的安全。 20. **BIP44 密钥、地址和代币管理:** 管理密钥、派生地址并处理各种代币,完全符合 BIP44 标准。 21. **BIP49 密钥、地址和代币管理:** 类似于 BIP44,符合 BIP49 标准。 22. **BIP84 密钥、地址和代币管理:** 管理密钥、派生地址并处理各种代币,符合 BIP84 标准。 23. **BIP86 密钥、地址和代币管理:** 管理密钥、派生地址并处理各种代币,符合 BIP84 标准。 24. **Electrum 助记词 V1 和 V2 及密钥与地址管理:** 支持 Electrum 助记词 V1 和 V2,包括 SegWit 和标准交易。 25. **TonMnemonic:** 增加了对 Ton 助记词的支持,支持创建、验证和种子生成。 这些功能使您的软件包成为满足编码、加密、区块链管理、BIP39 助记词支持以及各种区块链地址编码和解码需求的全面解决方案。 25. **签名与验证:** 实现了用于签名和验证交易摘要的类。 - Bitcoin (ECDSA, Schnorr) - BitcoinCash (EDDSA) - Dogecoin (EDDSA) - Litecoin (EDDSA) - Dash (EDDSA) - BSV (EDDSA) - Ethereum (EDDSA) - Tron (EDDSA) - Solana (EDDSA) - XRP (EDDSA, ECDSA) - Solana (EDDSA, EDDSA Khalow) 26. **MuSig2 操作:** - 签名和验证 - Nonce 生成 - 聚合公钥计算 - 聚合 Nonce 计算 **示例:探索我们的工具包** 通过交互式测试,探索我们全面的加密和区块链工具包的各项功能。访问我们的[测试页面](https://github.com/mrtnetwork/blockchain_utils/tree/main/test)以获取数以千计的示例,展示纯 Dart 的跨平台功能。学习编码、加密、地址管理、助记词以及更多内容。 ## 贡献 欢迎您的贡献!请遵循以下准则: - Fork 本仓库并创建一个新分支。 - 进行更改并确保测试通过。 - 提交 pull request,并详细描述您的更改。 ## 功能请求与 Bug 请在 issue 跟踪器中提交功能请求和 Bug。
标签:Dart, SOC Prime, 加密货币, 区块链, 密码学, 开发工具, 手动系统调用, 编码解码