区块链上存证,只需这四步

区块链具有许多特性(详见《区块

区块链里的信息具有不可篡改性,比如中本聪在创世区块中写的一段话:“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks”,用来讽刺中心化银行的困境。这种不可篡改性是把双刃剑,好处是写入的内容有时间戳,可以作为证据,坏处是如果写入了不合伦理的内容,也无法删除。

结合公开可查性和去中心化等特性,区块链可用于存证业务,当你的一件作品(画作、专利、文章等)被他人抄袭或侵权,你如何证明这件作品最早出自你之手?

现在你可以把作品生成一份签名,再保存在区块链上,当发生纠纷时可以作为重要的证据。现在类似的网站服务已经很多了,比如访问https://proofofexistence.com,拖入一份文件,再支付少量BTC,存证就完成了。

这种事情在我国也有成功案例了,2018年6月28日,全国首例区块链存证案在杭州互联网法院一审宣判,法院支持了原告采用区块链作为存证方式并认定了对应的侵权事实。

当然也有人把情书或爱的誓言写在区块链上,比如下面这笔交易中隐藏着一封情书。

https://blockchain.info/block/0000000000000000016f615859ca5cb88bb3983777df6f9f5ecbd57261cad454

写这封信的人用一堆收款地址拼出了这封信,还花了0.00314159 BTC的手续费,看来不仅是黑客,还是个数学迷。信的内容是这样的:

“Dayah Dover, your personality is unmatched. Your intelligence justshines. You can do things few people can. And you’re always just gorgeous. You are really my entire world, givingmy life meaning and fun. Dayah, I love you.”

另外一种写入比特币的区块链的办法是利用OP_RETURN的功能特性,这个特性从2014年的0.9.0版本就引入了,曾经可以返回80个字节的内容,比特币的核心开发者认为这个功能可能会被滥用,可能会被写入太多与交易无关的内容,又限制在40个字节以内。

Bitcoin Core存证步骤

如果使用Bitcoin Core客户端,不用编程也可以在区块链里写上一些内容,当然需要会使用Bitcoin Core钱包,手里还要有一点点BTC。

第一步:listunspent

在Bitcoin Core的客户端输入listunspent命令,找出一笔未花费的BTC记录。

{

"txid": "709259267029aa453ed862baab542af46598518c7002bccd18a1eb3660e868de",

"vout": 1,

"address": "1Lyyh5SC4bm51hjyuKhG8D69WCJn4RXnT7",

"account": "",

"scriptPubKey": "76a914db3101ca50be7e128579e1c0da14af1e764c362688ac",

"amount": 0.00075062,

"confirmations": 32289,

"spendable": true,

"solvable": true,

"safe": true

}

第二步:createrawtransaction

这一步用于构建一笔交易,输入项就是刚才选好的txid和vout。

输出项的第一个参数是data,这里是将要写入的内容,需要把ASCII码转换为十六进制。随后需要一个输出地址和数量。

createrawtransaction '[{"txid":"709259267029aa453ed862baab542af46598518c7002bccd18a1eb3660e868de","vout":1}]' '{"data":"4557207368656e6c6f6e6762696e","3FLiKnEipFW9kVZoWrPxGaT2LEo5vc9xFq":0.0007}'

如果构建成功,返回一串十六进制数值。

0200000001de68e86036eba118cdbc02708c519865f42a54abba62d83e45aa2970265992700100000000ffffffff020000000000000000106a0e4557207368656e6c6f6e6762696e701101000000000017a91495bac022b4431ae2f232e328e4dad52a1f9c3c9d8700000000

第三步:signrawtransaction

这一步需要把刚才的交易数据签名,需要用到钱包的私钥,先把钱包解锁一段时间,比如60秒。

walletpassphrase 'shenlongbin password' 60

然后运行签名的命令。

signrawtransaction '0200000001de68e860**********3c9d8700000000'

签名如果成功,返回如下内容。

第四步:sendrawtransaction

把交易数据广播到全网络。

sendrawtransaction '0200000*************0000000'

整个过程对于明白比特币原理的程序员来说,并不太复杂,但对于普通用户来说相当有难度,有许多网站提供了类似的服务,比如搜索eternitywall。

我以前在发币的时候把最后一个数字拼接起来,也可以实现区块链刻字。有兴趣的朋友可以访问:

http://www.sxrzsd.com/html/lettering.html

用BTC进行存证的代价相对较高,现在出现了各种区块链,你完全可以把文章发表在steemit上,也有存证的效果,不仅不用花钱,如果文章写得好还可以赚点STEEM。

--- END ---

原文发布于微信公众号 - 申龙斌的程序人生(slbGTD)

原文发表时间:2018-08-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏liuchengxu

Tendermint: 什么是 ABCI (应用区块链接口)

区块链应用接口(Application BlockChain Interface,ABCI)允许应用的拜占庭容错复制可以由任意一种编程语言编写。

1113
来自专栏区块链大本营

敢挑战吗?这30个以太坊开发示例,让你成为80万都挖不走的区块链人才!

我曾经买过加密货币,曾试图使用一些丑陋矿机挖矿,看过一些稀稀拉拉的Solidity教程。但不得不承认,在当时,我更偏爱前者,我切身体会到了加密货币的狂热,急切需...

1483
来自专栏圆方圆学院精选

区块链技术面试常被问到的Hyberledger Fabric关键概念

先给英文官方原文地址:https://hyperledger-fabric.readthedocs.io/en/latest/overview.html

2111
来自专栏区块链入门

这30个以太坊开发示例,让你成为80万都挖不走的区块链人才!

我曾经买过加密货币,曾试图使用一些丑陋矿机挖矿,看过一些稀稀拉拉的Solidity教程。但不得不承认,在当时,我更****偏爱前者,我切身体会到了加密货币的狂热...

3183
来自专栏华仔的技术笔记

ugChain技术测评

3745
来自专栏Spark学习技巧

入门 | 区块链vs传统数据库:分布式运行有何优势?

作者:Shaan Ray 机器之心编译 参与:路雪、李泽南 区块链(blockchain)这一概念正因比特币等虚拟货币的兴盛而变得火热起来,实际上,这种技术因为...

4015
来自专栏极客编程

以太坊智能合约升级策略

本文是对以太坊中可升级智能合约领域的各种实现策略的总结 ,目的是汇总迄今为止的相关资源,以帮助我们在设计智能合约时,考虑如何对其进行升级和更新。

1132
来自专栏区块链入门

【链安科技】Token合约F_E漏洞

有相关安全公司风险监控平台于今日发现,ERC20代币合约F_E由于业务逻辑实现漏洞,任何人都可以随意转出他人账户中的Token。并且该Token已经上线交易所,...

911
来自专栏区块链大本营

《以太坊攻略》,小白如何逆袭成为技术大咖?要学的全在这里了

ConsenSys产品经理认为,区块链新手和经验丰富的区块链开发人员,需要共享工具、开发模式和组件。

1553
来自专栏专注研发

区块链关键字的解析

目前大多数区块链先驱都喜欢将区块链分为三层:应用服务层、服务平台层、底层区块链核心层

2302

扫码关注云+社区

领取腾讯云代金券