開始討論之前我們先來看一個場景
假設(shè)博投,我創(chuàng)作了一首歌片排,并且錄成了mp3。這時候我想是不是有人愿意買我的歌辛友,但是同時也會擔(dān)心會不會被抄襲薄扁。好了,現(xiàn)在我們有了兩個需求
- 產(chǎn)品確權(quán)(防抄襲)
- 賣出去(這里特指能一手交錢废累,一手交貨)
我們先來看看如何確權(quán)邓梅。這個方法因該大家都知道,數(shù)字簽名嘛九默,將曲譜內(nèi)容(文本)計算hash震放,然后用私鑰將曲譜簽名,搞定驼修。
確實確權(quán)了殿遂,別人只要計算你曲譜的hash,并用你的公鑰將簽名解密乙各,比對hash就能確定墨礁,這個曲譜是你寫的。但是mp3文件怎么辦耳峦?
要將整個文件簽名恩静,簽名內(nèi)容太龐大,耗時也長,可行驶乾,但是非常不方便操作邑飒。那有什么辦法既可以確權(quán),又方便操作的呢级乐?這個其實大家也都知道疙咸,計算個文件hash,對文件hash簽名风科,再一次撒轮,搞定。這里確權(quán)問題是解決了贼穆,但是又有個新的問題:文件题山,一定要給到源文件才能驗證,文件已經(jīng)給出去了故痊,也失去了保護文件的意義了顶瞳。那有沒有一個“既不用給出源文件,又能證明源文件是我的”的方法嗎崖蜜?有浊仆,為文件哈希添加公告,申明:“我對這個文件擁有所有權(quán)”并對公告簽名豫领。
現(xiàn)在抡柿,雖然,我們已經(jīng)做到了對文本和文件進行了確權(quán)操作等恐,但是總覺得哪里不對洲劣?要是有人也用我的文本內(nèi)容去做了確權(quán)怎么辦?
其實以上問題不是確權(quán)的問題课蔬,是“明明知道這個文件是屬于你的囱稽,但是我還是要無償使用”需要解決的問題。這時候我們需要一個可以安全的交易平臺二跋,并且是無法抵賴的系統(tǒng)战惊。是的,區(qū)塊鏈完全滿足這兩個條件扎即,并且還可以送你個附加功能:匿名吞获。
我們來梳理下,要實現(xiàn)這樣一筆去中心化交易谚鄙,需要滿足哪些條件各拷?
- 賣方需要證明文件屬于自己。
- 合約能證明賣方給的文件是正確的闷营。
- 買方能確定收到的文件是正確的烤黍。
- 交易全程不能出現(xiàn)文件明文。
在區(qū)塊鏈系統(tǒng)中,交易雙方其實是兩個錢包地址速蕊,因此是匿名的嫂丙,但是為了方便描述,我們將賣方叫Alice互例,買方叫Bob奢入。
我們來看下基于合約的交易實現(xiàn)流程:
整個業(yè)務(wù)流程中
- Alice能安全的將明文給到Bob筝闹,但是整個流程中媳叨,不會出現(xiàn)明文。
- 合約能基于一個可判斷的邏輯关顷,證明Alice給到的密文是正確的糊秆,并由此完成交易。
- Bob收到文件后议双,可通過比對hash痘番,確保文件是正確的。
可見該業(yè)務(wù)流程設(shè)計平痰,完全滿足文件確權(quán)和去中心化交易需求汞舱。如果該項功能能實現(xiàn),對區(qū)塊鏈應(yīng)用來說宗雇,是一次極大的飛躍昂芜。