前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >区块链上存证,只需这四步

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

作者头像
申龙斌
发布2018-09-14 18:19:27
4.8K0
发布2018-09-14 18:19:27
举报
文章被收录于专栏:申龙斌的程序人生
区块链具有许多特性(详见《区块

区块链里的信息具有不可篡改性,比如中本聪在创世区块中写的一段话:“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 ---

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-08-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 申龙斌的程序人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档