昨天剛翻譯完一篇Frederick Pohl的小說《Day Million》,打算繼續(xù)翻譯科普《Calculate the Cosmos》,正好一個朋友問我我好幾天前發(fā)的一條朋友圈是什么意思,所以打算展開寫一下。
那條朋友圈,是我說我覺得區(qū)塊鏈與學(xué)術(shù)論文出版系統(tǒng)很搭,而且可以做到鏈幣分離。
要說理由的話,大致能想到下面這九條:
- 使用區(qū)塊鏈,將文章和作者都放在區(qū)塊鏈上,使用區(qū)塊鏈本身的特性可以防止惡意篡改;
- 文章和作者是掛鉤的,所以文章本身不會被冒名頂替(使用數(shù)字指紋與非對稱加密可以做到);
- 引入類似現(xiàn)在已有的文章查重的機(jī)制,可以知道文章的每個段落是否是從別人的文章直接搬過來的,以及是否有引用他人文章但沒有標(biāo)明出處的,這個需要在現(xiàn)有的文章格式基礎(chǔ)上增加一些元數(shù)據(jù)信息,改動不是很大;
- 可以在區(qū)塊鏈上加上作者個人信用數(shù)據(jù),這個數(shù)據(jù)在區(qū)塊鏈上的話所有節(jié)點(diǎn)都可以公開查詢,而且無法修改,所以如果有抄襲或者造價行為,會直接影響到這個賬號的聲譽(yù),對學(xué)術(shù)界來說是很重要的;
- 學(xué)術(shù)文章本身不要求高頻交易這種行為,所以使用比特幣的POW方案的話可以人為降低認(rèn)證時間周期,降低算力消耗;
- 學(xué)術(shù)文章本身可以分類,所以也不要求全網(wǎng)只有一根鏈,有利于拓展;
- 學(xué)術(shù)文章允許分岔,出現(xiàn)不同版本,對共識算法要求較低;
- 學(xué)術(shù)文章的撰寫與評論可以給與一定的獎勵,獎勵可以是聲譽(yù)值或者別的東西,不用和數(shù)字貨幣掛鉤,這樣鏈和幣就可以分離,有利于鏈本身的發(fā)展,不會被幣綁架;
- 共識機(jī)制本身可以是學(xué)界常用的網(wǎng)格計(jì)算,這樣算力不會白白浪費(fèi),而是做有意義的事。
這么設(shè)計(jì)的核心思想,將幣從鏈上去除,取而代之的是信用與聲譽(yù)。這點(diǎn)在很多傳統(tǒng)DAPP上是做不到的,因?yàn)闆]有幣作為獎勵機(jī)制,節(jié)點(diǎn)憑什么給你入塊記賬?
傳統(tǒng)的共識方案就是入塊者獲得獎勵,獎勵被稱為挖礦,這樣能刺激節(jié)點(diǎn)持續(xù)在線并爭奪記賬入塊的權(quán)利。如果沒有激勵,那節(jié)點(diǎn)就不會浪費(fèi)資源給你記賬——除非是死宅,但死宅無法統(tǒng)一世界。而激勵的代價,無論是POW還是POS,必然是馬太效應(yīng),這個上一篇文章里我就計(jì)算過相關(guān)模型了。
或者可以是用DAG的方案,沒有挖礦,沒有記賬權(quán)爭奪。但DAG方案需要witness,這貨本身就是一個非平庸階層,且不說和去中心的點(diǎn)對點(diǎn)對等網(wǎng)絡(luò)的設(shè)計(jì)理念相沖,witness的選舉本身也是需要一套解決方案的,所以并不能做到萬無一失——當(dāng)然,我們可以有各種繞開的方案,比如機(jī)制去中心而決策中心的方案。當(dāng)然,DAG總體而言還是比POX方案更環(huán)保高效的。
不談這些,我們的目標(biāo)是將鏈與幣分開,而要做到分開,一個目標(biāo)就是記錄節(jié)點(diǎn)能維持記賬的不中斷——過去使用電驢或者BT的時候大家應(yīng)該都感受到過,如果某個seed-source不在線了,那就只能呵呵了。
挖礦(產(chǎn)生新幣)與記賬(區(qū)塊入鏈)原則上是可以分開的,這個此前我設(shè)計(jì)過一套不完善的方案雛形。但我們換一個思路,不禁止挖礦,但讓挖礦不再那么有經(jīng)濟(jì)利益,那會如何?
吸引人來的方式除了簡單粗暴地撒錢,另一個方法就是給別的能吸引目標(biāo)受眾的東西。
所以,可以做垂直領(lǐng)域——學(xué)術(shù)文章的發(fā)布與流通。
對于學(xué)術(shù)界來說,經(jīng)濟(jì)利益當(dāng)然是一個很大的驅(qū)動力,但學(xué)術(shù)聲譽(yù)是更重要的。
區(qū)塊鏈原則上可以為一個無信任網(wǎng)絡(luò)提供算法保證的機(jī)械公信力,這是它最大的價值所在(雖然理論上1024n級量子糾纏的量子計(jì)算機(jī)可以輕易擊碎現(xiàn)有的所有區(qū)塊鏈安防,但畢竟實(shí)用的量子計(jì)算機(jī)還天曉得什么時候能面世呢)。而對于學(xué)術(shù)體系來說,這恰恰是有吸引力的地方——學(xué)術(shù)界最怕的就是抄襲與造假。
這里問題就分成了兩個領(lǐng)域:
- 使用區(qū)塊鏈?zhǔn)侄蝸矸莱u;
- 使用區(qū)塊鏈?zhǔn)侄蝸矸涝旒佟?/li>
所以,我們下面就這兩個問題分別討論。
當(dāng)然,在開始討論之前還是要說一些在學(xué)術(shù)文章上使用區(qū)塊鏈的幾個最大的好處,這個其實(shí)在上面的九點(diǎn)中已經(jīng)提到了。
首先就是對數(shù)據(jù)修改的采納頻率沒有高要求——現(xiàn)實(shí)世界的經(jīng)濟(jì)與金融行為都要求高頻交易,但在學(xué)術(shù)系統(tǒng)中,比特幣的6次確認(rèn)用一個小時根本不叫事,等論文發(fā)表等個幾天也是常有的,何況才一個小時。
其次就是不同論文提交的現(xiàn)有順序其實(shí)完全不重要,這和比特幣必須保持單鏈這種一讀群寫模式是很不相同的。對于學(xué)術(shù)界來說,重要的是反抄襲反造假,同步發(fā)表不叫事。所以這套系統(tǒng)天然地允許多鏈,因此是MultiBlockChain還是DAG都可以,不是重點(diǎn)。
要防抄襲,其實(shí)相對來說是非常簡單的一件事,我們“只”需要做到下面這些事:
- 區(qū)塊鏈上可以同時保存作者(賬號)與論文(索引地址)的信息,所以是雙鏈;
- 論文之間要有一個判斷是否存在段落級重復(fù)的判定機(jī)制(這是小問題,每個大學(xué)都有這么一套判重系統(tǒng),問題不過就是做得有多爛罷了……);
- 文章格式要允許區(qū)分引用于非引用的復(fù)制粘貼(對LaTeX來說這壓根不叫事);
- 判定結(jié)果保存在區(qū)塊鏈用戶信息上,且是公開的(所以要使用智能合約)。
因此,這部分的整個流程是這樣的:
全網(wǎng)有至少兩條鏈,一條鏈?zhǔn)亲髡咝畔?,別的鏈上是文章。
作者使用一種修正過的LaTeX文檔格式來編寫論文,論文與作者信息掛鉤,這點(diǎn)可以在LaTeX格式的作者格式中做修改,直接使用作者哈希。
提交文章的行為并不是將文章直接提交給區(qū)塊鏈,而是提交給一份智能合約,這份智能合約會觸發(fā)一個校驗(yàn),驗(yàn)證提交的文章與全網(wǎng)當(dāng)前所有的文章是否存在非引用段落的重復(fù),這里可以具體設(shè)計(jì)各參數(shù)和判定條件,但結(jié)果就是給出一篇文章是否存在抄襲行為的值,一旦大于某閾值,提交失敗,智能合約自動撤銷提交申請,區(qū)塊鏈上不寫入任何數(shù)據(jù);而如果沒有抄襲,那智能合約自動將數(shù)據(jù)加入?yún)^(qū)塊鏈。
如果發(fā)現(xiàn)文章抄襲,則會對文章相關(guān)作者的個人信息進(jìn)行調(diào)整,比如下降聲譽(yù)值和學(xué)術(shù)信用度等;而如果文章成功發(fā)表,則自動增加聲譽(yù)值或?qū)W術(shù)信用度。
文章如果被成功加入到區(qū)塊鏈,還可以執(zhí)行另一份智能合約或者DAPP,便是將所有引用的文章自動增加引用數(shù),被引用文章的作者也增加引用數(shù)以及聲譽(yù)值等。
這里具體數(shù)值有哪些,以及在不同行為下如何變更,可以深入設(shè)計(jì),這里暫且按下不表。
因此,這里的關(guān)鍵就是那份智能合約或者DAPP應(yīng)該如何設(shè)計(jì),但這事相對于別的DAPP落地項(xiàng)目來說,那真的是小CASE,不足掛齒。
防抄襲只是第一步,下一步是防造假。
以AEternity(此前我翻譯過他們的白皮書)和DFinity為例,他們提供了Oracle為基礎(chǔ)的Prediction Market,這Oracle理論上是橋接現(xiàn)實(shí)世界數(shù)據(jù)與區(qū)塊鏈數(shù)據(jù)的通道——雖然它的原始與最終目標(biāo)是作為一個巨大的期貨對賭契約。
因此,一個設(shè)計(jì)方案是使用Oracle作為所有文章中所用數(shù)據(jù)的數(shù)據(jù)源提供者。
但這個想法只是一種理想,因?yàn)镺racle機(jī)制所解決的問題是數(shù)據(jù)在區(qū)塊鏈上傳遞的過程中不會被篡改,以及入鏈的時候得到大多數(shù)人的接受和相信,但它并不能杜絕數(shù)據(jù)源本身的造假行為——也即,如果入鏈的數(shù)據(jù)本就錯誤,而這份數(shù)據(jù)又很稀有以至于沒有任何來提出質(zhì)疑,那么現(xiàn)有的Oracle方案只能接受這份數(shù)據(jù)。
一句話:Oracle只能保證入鏈之后的數(shù)據(jù)安全與真實(shí)有效,入鏈之前的數(shù)據(jù)安全與真實(shí)有效它管不了也沒法管。
而,學(xué)術(shù)論文中的數(shù)據(jù)往往具有這種稀缺性,所以很可能一份假數(shù)據(jù)也不會有人來質(zhì)疑。
所以,這里就需要引入兩種不同的機(jī)制:
- 事后評議
- 撤銷發(fā)布
學(xué)術(shù)文章和UTXO賬簿相比,相同點(diǎn)是都有輸入輸出(輸入就是引用了哪些文章,輸出就是文章自身的索引地址)。所以采用我在此前一篇文章中設(shè)計(jì)的“熔斷”機(jī)制,是可以做到撤銷發(fā)布的——而且由于這里文章之間的關(guān)系很松散,并不要求輸入輸出嚴(yán)格匹配,所以撤銷發(fā)布其實(shí)不存在技術(shù)層面的阻礙。
事實(shí)上,一個更加簡單粗暴的方案,是采用GIT所用的步進(jìn)變更記錄,來維護(hù)一份文章是否被引用的表,那就不存在撤銷,而只要將相應(yīng)文章的狀態(tài)在那張表里變更為已撤銷即可。當(dāng)然,這樣這份文章狀態(tài)變更表就需要一根單獨(dú)的鏈來記錄了。
事后評議的部分則非常簡單,就是作者各數(shù)值狀態(tài)的變更,在區(qū)塊鏈上這個操作不存在什么技術(shù)難度。
解決了上述兩個問題后,我們就可以說現(xiàn)在這樣一種設(shè)計(jì)下的區(qū)塊鏈——無論是MBC還是DAG——是可以滿足學(xué)術(shù)系統(tǒng)對作者與論文誠信的需求的。
下面需要解決的就是共識機(jī)制。
相對于金融平臺或者貨幣形態(tài)的區(qū)塊鏈項(xiàng)目,這套系統(tǒng)對共識機(jī)制的要求其實(shí)很低——個人看來,甚至低于判斷是否抄襲的智能合約。
整個網(wǎng)絡(luò)的結(jié)構(gòu)其實(shí)更加接近DAG,當(dāng)然是用MBC也可以。
一個不引用任何別的文章的文章可以作為Root節(jié)點(diǎn),這樣整個網(wǎng)上可以存在大量Root節(jié)點(diǎn)。而后通過引用關(guān)系可以構(gòu)建一顆多岔樹,引用關(guān)系是網(wǎng)上的有向邊,文章是節(jié)點(diǎn),所以一般不會出現(xiàn)有向環(huán),即循環(huán)引用。
當(dāng)一篇新的文章加入到網(wǎng)絡(luò)中的時候,可能是添加到某些已有的節(jié)點(diǎn)之下,也可能是新開辟一個Root節(jié)點(diǎn)。共識機(jī)制所要做的,其實(shí)僅僅是確保這篇文章不會被多個節(jié)點(diǎn)同時當(dāng)做新節(jié)點(diǎn)給加入——也就是雙花問題。
但因?yàn)槲覀儸F(xiàn)在有熔斷機(jī)制,所以即便出現(xiàn)了雙花也無所謂,同作者同文章的雙花直接熔斷撤銷即可。
更何況,即便出現(xiàn)了雙花問題也不大——因?yàn)樵谶@個系統(tǒng)中真正有意義的是文章上的內(nèi)容,與文章本身有幾個實(shí)現(xiàn)并沒有多大關(guān)系。
所以,這里的共識機(jī)制可以很弱,個人建議依然采用POW。
但這個POW有點(diǎn)特別——它并不是計(jì)算無意義的哈希計(jì)算,而是完成一系列學(xué)術(shù)計(jì)算。
因此,這套共識機(jī)制需要有一個任務(wù)發(fā)布平臺與之對應(yīng)。
人們在任務(wù)發(fā)布平臺上根據(jù)特定的格式編寫任務(wù)的執(zhí)行程序與判定程序,然后各節(jié)點(diǎn)運(yùn)行執(zhí)行程序,并將得到的結(jié)果送交判定程序進(jìn)行判定,判定通過就是共識達(dá)成,任務(wù)平臺記錄結(jié)果并反饋給任務(wù)發(fā)布者,同時算出結(jié)果的節(jié)點(diǎn)得到相應(yīng)的回報——聲譽(yù)值。
這樣,這套系統(tǒng)的共識算法其實(shí)本身是一個格點(diǎn)計(jì)算平臺,計(jì)算結(jié)果作為是否挖到礦的判斷標(biāo)準(zhǔn)。
比如,SETI@Home或者計(jì)算蛋白質(zhì)折疊方式,都可以放到這個平臺上用。
好了,我們現(xiàn)在有了一個有用的共識機(jī)制了。
在這個系統(tǒng)上,還可以很方便地引入評論系統(tǒng)——評論可以作為一類特殊的文章。
數(shù)據(jù)結(jié)構(gòu)和UTXO還是很類似,輸入就是評論的哪篇文章或評論,只能有單一輸入,而輸出只是自己的索引地址。所以是One-In-One-Out的結(jié)構(gòu)。
發(fā)表評論和發(fā)表文章一樣,對個人聲譽(yù)等數(shù)據(jù)都有影響。
然后會需要一個文章與評論的評分系統(tǒng),這一方面是和前面所說的事后評議相關(guān),另一方面也通過不同的評分來給出一篇文章的評價。這里,不同聲譽(yù)值和學(xué)術(shù)信用度的人給出的評分的權(quán)重是不同的。
一旦一篇文章被撤銷,那么所有給高評價的用戶都會遭受損失(也是智能合約/DAPP來完成的),從而這在一定程度上也讓大家為自己的選擇負(fù)責(zé)。
因?yàn)椴僮髟蕉?,用戶?shù)據(jù)會越大,所以可以采用我此前文章中設(shè)計(jì)的遺忘熔斷來有效減少無用信息。
當(dāng)然,上面還只是一些小附件,真正重要的是,這樣的系統(tǒng)中需要一個仲裁集團(tuán),為是否需要撤稿或者給予某作者一定的懲罰以最終的仲裁——沒人會指望智能合約可以做一切事,這個看下合約理論就知道了。
仲裁集團(tuán)的生成其實(shí)很方便,使用每個用戶的聲譽(yù)值與學(xué)術(shù)信用度就可以選出,只有此后是使用傳統(tǒng)的PAXOS或RAFT的方式,還是POS/dPOS的投票方式,都無所謂。
至此,一個整體設(shè)計(jì)的草案就完成了,我們需要以下這些東西:
- 多鏈MBC或者DAG;
- 基于LaTeX的文檔格式;
- 非引用抄襲判定機(jī)制;
- 熔斷與遺忘機(jī)制;
- 聲譽(yù)與學(xué)術(shù)信用度更改標(biāo)準(zhǔn);
- 一個仲裁集團(tuán)。
它的優(yōu)點(diǎn),是構(gòu)造了一個信用無法修改、文章無法修改、作者記錄無法修改、任何人都可以發(fā)表、任何人都可以閱讀的幣鏈分離的學(xué)術(shù)文章發(fā)表與流通區(qū)塊鏈系統(tǒng)。
它的缺點(diǎn),就是其實(shí)可以中心化來干的干嘛一定要區(qū)塊鏈來做這個有點(diǎn)蛋疼我除了想到能這么做以外并沒有想到為什么要這么做大概唯一理由就是防抄襲和防造假比較容易么但似乎看起來這也不是什么天大的理由啊真是蛋疼。
本文遵守創(chuàng)作共享CC BY-NC-SA 4.0協(xié)議
通過本協(xié)議,您可以分享并修改本文內(nèi)容,只要你遵守以下授權(quán)條款規(guī)定:姓名標(biāo)示 、非商業(yè)性、相同方式分享。
具體內(nèi)容請查閱上述協(xié)議聲明。
本文禁止一切紙媒,即印刷于紙張之上的一切組織,包括但不限于轉(zhuǎn)載、摘編的任何應(yīng)用和衍生。網(wǎng)絡(luò)平臺如需轉(zhuǎn)載必須與本人聯(lián)系確認(rèn)。