当前位置:首页 » 区块链精品文章 » 正文

6.3 实战:多重签名交易

1557 人参与  2018年09月30日 14:28  分类 : 区块链精品文章  评论

本节以比特币测试网络作为开发试验环境,结合Node.js实现开源项目ODIN的标识注册功能,说明如何利用多重签名交易形式来嵌入自定义数据,签名广 播后,再被矿工节点确认存入区块链后,最终能被读取、解析,得到注册结果。这样就实现了一个从写入区块链到从区块链读取的完整过程。

6.3.1 将ODIN标识注册到区块链上的实例解析

ODIN是Open Data Index Name即“开放数据索引命名标识”的缩写,第10章中会介绍ODIN更多的技术细节。广义上说,ODIN是指在网络环境下标识和交换数据内容索引的一种 开放式系统。ODIN的实现关键是把数据嵌入比特币交易的多重签名输出数据块中,对于1-of-N输出,每个数据块的第1个公钥固定是发送者的,第2~N 个公钥的地址空间用来存放编码的ODIN消息数据。下面一段文字是ODIN技术规范里对于“新注册ODIN标识”的具体消息定义。

其中:

·比特币源地址对应ODIN标识注册者。

·比特币目的地址对应ODIN标识拥有者。

6.3.2 运行示例程序

示例程序包括两部分。

(1)OdinMonitorTestnet.js

监测比特币测试网络Testnet相关区块链数据的变化,从中解析出新注册的ODIN标识。

源码可以从下述网址下载:http://ppkpub.org/sample/OdinMonitorTestnet.js

(2)OdinRegisterTestnet.js

在比特币测试网络Testnet注册一个新的ODIN标识。

源码可以从下述网址下载:http://ppkpub.org/sample/OdinRegisterTestnet.js

将上述示例代码下载并保存到测试环境下(保存文件名为OdinRegisterTestnet.js和OdinMonitorTestnet.js)。在开发测试环境的命令行下输入以下命令,启动监测示例程序。


node OdinMonitorTestnet.js


然后新开启一个文本终端窗口,在命令行下输入以下命令运行注册示例程序。


node OdinRegisterTestnet.js


运行上述注册示例程序后,到比特币测试网络的Docker运行环境的命令行下输入“make generate BLOCKS=10”,模拟产生新的区块记录,刚产生的交易记录就会得到有效的确认,并被存入区块链中。这时在监测程序的运行界面上就会提示解析到新的 ODIN标识注册记录,如图6-22所示。

image.png

刚接触比特币及其底层区块链技术的开发者常常会面临问题:如何上手比特币区块链应用开发技术?如何了解它的关键技术实践点?本章用简短的篇幅,结合笔者在 PPk ODIN开源项目中的实践经验,用具体案例来阐述和介绍相关开发知识。读者通过学习本章,可以理解RPC协议接口和关键的比特币“交易”数据结构,进而举 一反三,就可以灵活应用到自己的开发实践中。

来源:我是码农,转载请保留出处和链接!

本文链接:http://www.54manong.com/?id=1011

区块链是什么  

微信号:qq444848023    QQ号:444848023

加入【我是码农】QQ群:864689844(加群验证:我是码农)

<< 上一篇 下一篇 >>

网站分类

标签列表

最近发表

全站首页 | 数据结构 | 区块链| 大数据 | 机器学习 | 物联网和云计算 | 面试笔试

本站资源大部分来自互联网,版权归原作者所有!