bips/bip-0016/qa.mediawiki,位于 vault · jl2012/bips

  • jl2012
  • 发布于 2025-06-13 17:26
  • 阅读 17

本文档是 BIP 16 的质量保证测试计划,旨在通过一系列测试程序来验证 BIP 16 的实现是否正确。测试内容包括在测试网络和主网络上运行 BIP-16 兼容的 Bitcoin 客户端,测试多重签名交易,以及创建和运行单元测试和交易模糊器等。

跳至内容

jl2012/ bips Public

forked from bitcoin/bips

折叠文件树

文件

vault

搜索此仓库

/

qa.mediawiki

复制路径

BlameMore 文件操作

BlameMore 文件操作

最近提交

petertoddpetertodd

截至 2012 年 3 月 9 日 19:50 的存档修订

打开提交详情

2013年10月21日

c2b8cff · 2013年10月21日

历史

历史

打开提交详情

查看此文件的提交历史。

190 行 (163 loc) · 8.56 KB

/

qa.mediawiki

顶部

文件元数据和控制

  • 预览

  • 代码

  • Blame

190 行 (163 loc) · 8.56 KB

原始

复制原始文件

下载原始文件

编辑和原始操作

此页面是 BIP 16 的质量保证测试计划。 如果你发现缺少测试,请添加它。 如果你可以帮助测试,请编辑此页面进行签名确认。

完成 测试程序 测试者
在测试网和主网上运行支持 BIP-16 的 Bitcoin 0.6<br>使用 GUI、RCP sendtoaddress 和 RCP sendmany 命令发送币<br>结果:在所有情况下都发送了币 Gavin Andresen
测试 multisig 1-of-1<br>运行 0.6 bitcoind,使用以下命令获取公钥:./bitcoind -testnet validateaddress $(./bitcoind -testnet getnewaddress)<br>生成一个 multisig 1-of-1 地址:./bitcoind addmultisigaddress 1 {上面的公钥}<br>使用该地址给自己发送一些比特币<br>结果:交易已通过网络确认,并在 listtransactions 中正确显示。<br>结果:余额不受影响 Gavin Andresen; 请参阅 testnet block 44989 中的交易
测试 multisig 1-of-2<br>运行 0.6 bitcoind,获取 2 个新的比特币地址<br>生成一个 multisig 1-of-2 地址:./bitcoind addmultisigaddress 1 {address1} {address2}<br>使用该地址给自己发送一些比特币<br>结果:交易已通过网络确认,并在 listtransactions 中正确显示。<br>结果:比特币余额不受影响。 Gavin Andresen; 请参阅 testnet block 44989 中的交易
测试 multisig 1-of-3、2-of-3、3-of-3<br>使用其他新的多重签名交易类型重复上述测试程序 Gavin Andresen; 请参阅 testnet block 44989 中的交易
测试 multisig send-to-other<br>重复上述测试程序,但使用两个 bitcoind,准备如下:<br>bitcoind 1:运行 getnewaddress 和 addmultisigaddress<br>bitcoind 2:仅 addmultisigaddress<br>使用该地址从 2 发送到 1<br>结果:交易被网络接受/确认<br>结果:2 的余额下降,2 的 listtransactions 显示正确的结果<br>结果:1 的余额上升,1 的 listtransactions 显示正确的结果 Gavin Andresen; 请参阅 testnet block 44989 中的交易
测试赎回多重签名交易<br>完全使用多重签名交易为新的空钱包提供资金<br>等待交易确认<br>使用 sendtoaddress 和 sendmany 生成 spend-from-multisig 交易<br>花费到单地址和多重签名地址,并测试 send-to-other 和 send-to-self<br>结果:交易被网络接受/确认<br>结果:余额减少,listtransactions 显示正确的消息 Gavin Andresen; 请参阅 testnet block 44989 中的交易
在上述测试钱包之一上运行 0.6 Bitcoin-Qt GUI<br>结果:余额和交易显示正确 Gavin Andresen
在测试网和主网上运行支持 BIP-16 的反向移植 Bitcoin 0.3.19 至 0.5.1<br>使用 GUI、RCP sendtoaddress 和 RCP sendmany 命令发送币<br>结果:在所有情况下都发送了币 Gavin Andresen(已测试 0.3.19、0.3.24 和 0.5.1)
在测试网上运行支持 BIP-16 的 Bitcoin 0.6.0<br>使用内置矿工挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen
在测试网上运行支持 BIP-16 的 Bitcoin 0.6.0<br>使用 getwork 接口挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen
在测试网上运行支持 BIP-16 的 Bitcoin 0.6.0<br>使用 getmemorypool 接口挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gregory Maxwell; 使用 p2pool 请参阅 testnet block 45400(以及许多其他区块,也在主网上进行了测试)
在测试网上运行支持 BIP-16 的 Bitcoin 0.3.19 至 0.5.1 反向移植<br>使用内置矿工挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen(已在盒中测试网上全部测试)
在测试网上运行支持 BIP-16 的 Bitcoin 3.19 至 0.5.1 反向移植<br>使用 getwork 接口挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen(已在盒中测试网上全部测试)
在测试网上运行支持 BIP-16 的 Bitcoin 0.3.19 至 0.5.1 反向移植<br>使用内置矿工挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen(已在盒中测试网上全部测试)
在测试网上运行支持 BIP-16 的 Bitcoin 3.19 至 0.5.1 反向移植<br>使用 getwork 接口挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串 Gavin Andresen(已在盒中测试网上全部测试)
在测试网上运行支持 BIP-16 的 Bitcoin 3.19 至 0.5.1 反向移植<br>使用 getmemorypool 接口挖矿<br>结果:区块被接受,显示在 blockexplorer.com/testnet 上<br>结果:挖出的区块的 coinbase 包含 /P2SH/ 字符串
为以下项创建/运行单元测试:<br>多重签名签署/验证<br>多重签名无效签名失败<br>多重签名 IsStandard() 成功/失败<br>从多重签名交易中提取地址<br>BIP 16 IsStandard() 成功/失败(包括 OP_PUSHDATA1/2/4 失败)<br>BIP 16 AreInputsStandard() 成功/失败<br>BIP 16 与其他 3 种标准交易类型的兼容性<br>BIP 16 无递归测试<br>BIP 16 切换日期逻辑<br>OP_CHECKMULTISIG 计算 BIP 16 交易内部的签名操作 Gavin Andresen(请参阅 bitcoin 源代码树中的 test/multisig_tests.cpp、test/script_tests.cpp、test/script_P2SH_tests.cpp、test/sigopcount_tests.cpp;在 src/ 目录中“make test_bitcoin”进行编译)
创建/运行“交易模糊器”以对 BIP 16 交易进行压力测试 Gavin Andresen (https://github.com/gavinandresen/bitcoin-git/tree/fuzzer ,在盒中测试网和测试网上各运行两次,每次测试运行 100,000 个“模糊”交易)有效的模糊交易出现在(例如)testnet block 44987
在主网上运行 Bitcoin 0.6<br>结果:区块创建正确<br>结果:区块在其 coinbase 中包含 /P2SH/ 字符串 各种矿池
在主网上运行 BIP 16 vinced_mergedmine 反向移植<br>结果:区块创建正确<br>结果:区块在其 coinbase 中包含 /P2SH/ 字符串 (Gavin for slush: 在修复错误后,运行没有问题)
在盒中测试网上测试链拆分处理<br>在盒中测试网链上的两个区块中创建两个有效哈希、无效签名交易,这两个区块在时间上是分开的<br>运行一个 bitcoind 以与链同步,其中 -paytoscripthashtime 设置在两个区块之间<br>结果:第一个交易/区块被接受,第二个导致链拆分<br>使用未来的 -paytoscripthashtime 重新运行 bitcoind<br>结果:整个链被接受 Gavin Andresen:盒中测试网文件位于:http://www.skypaint.com/bitcoin/bip16chain.tar.gz 第一个半有效 BIP16 交易位于区块 2431(时间 1328202835),第二个位于区块 2436(时间 1328204241)
  • 原文链接: github.com/jl2012/bips/b...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
jl2012
jl2012
江湖只有他的大名,没有他的介绍。