www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] 這位未婚老嫗溫和恬靜坐在那里,你會(huì)以為她的大腦有種洞穿別人潛意識(shí)的魔力,破解任何難題只不過(guò)是個(gè)時(shí)間問(wèn)題。想到她一輩子都住在英國(guó)圣瑪麗米德小村莊,這更加令人景仰。她只是通過(guò)村莊和那里的日常生活這一

這位未婚老嫗溫和恬靜坐在那里,你會(huì)以為她的大腦有種洞穿別人潛意識(shí)的魔力,破解任何難題只不過(guò)是個(gè)時(shí)間問(wèn)題。想到她一輩子都住在英國(guó)圣瑪麗米德小村莊,這更加令人景仰。她只是通過(guò)村莊和那里的日常生活這一棱鏡來(lái)了解世界,不過(guò),由于她對(duì)整個(gè)村莊的觀察如此細(xì)致入微,整個(gè)世界仿佛都逃不過(guò)她的慧眼。

俄羅斯作家列夫托爾斯泰寫道:知一村而知世界。

以上兩位作者指的是,從一個(gè)簡(jiǎn)單視角和狹小空間來(lái)推演出最深刻的真相和知識(shí)的出色能力。這種能力對(duì)那些在塵世生活中覺(jué)得迷茫、不堪重負(fù)和厭倦的靈魂而言,是一個(gè)巨大的鼓舞,與此同時(shí),對(duì)那些準(zhǔn)備冒險(xiǎn)探索而在理解世界方面感到重負(fù)的靈魂而言,這種能力也是一個(gè)完全的解脫。

兩種狀態(tài)其實(shí)都是一種投降,前者意味著一切都懂了,也就索然無(wú)趣了,后者則意味著沒(méi)有什么事情是能搞清楚的,也就是不可企及的。創(chuàng)新和變革的高速發(fā)展,常常讓我們從一個(gè)極端滑向另一個(gè)極端。

不過(guò)人們還存在另外一種選擇:追求理解。一份追求意味著一項(xiàng)計(jì)劃的起點(diǎn)。如果你想,譬如「追求當(dāng)上一名醫(yī)生」,你不可能早上醒來(lái)就決定今天就可以做一臺(tái)手術(shù)。你得學(xué)習(xí)相關(guān)課程,申請(qǐng)醫(yī)學(xué)院或者參加其他的醫(yī)學(xué)培訓(xùn)。想想我們會(huì)問(wèn)孩子 : 「你長(zhǎng)大了做什么?」但問(wèn)成年人的問(wèn)題則是「你在學(xué)習(xí)什么?」或者「你正在學(xué)什么本事?」我們對(duì)答案會(huì)有明顯不同的預(yù)期——想成為什么是一回事,追求成為什么則完全不同。

如果我們真想弄明白某件事,那就得從我們起點(diǎn)開(kāi)始追求,需要去搞懂微小的細(xì)節(jié)以及它們與我們的世界如何關(guān)聯(lián)的歷史。

以下是理解密碼學(xué)及其應(yīng)用的一段追尋旅程。我開(kāi)始只是因?yàn)槊艽a學(xué)與區(qū)塊鏈相關(guān),就去探查了一些密碼學(xué)的最新應(yīng)用和流行詞匯,最后卻發(fā)現(xiàn),密碼學(xué)其實(shí)反倒是故事的起點(diǎn)。

本文的主要目的是讓沒(méi)有數(shù)學(xué)、計(jì)算機(jī)科學(xué)或密碼學(xué)背景的非專業(yè)讀者理解密碼學(xué)、其過(guò)往和當(dāng)前歷史,以及未來(lái)的應(yīng)用和潛力。

偵探小說(shuō)家愛(ài)·倫坡的短篇小說(shuō)《金甲蟲(chóng)》曾給美國(guó)當(dāng)代經(jīng)濟(jì)學(xué)家米爾頓·弗里德曼帶來(lái)啟發(fā),所以,談到密碼學(xué)的時(shí)候,誰(shuí)知道一篇好的文章可能會(huì)把什么樣的腦袋吸引到這個(gè)領(lǐng)域來(lái)呢…

起源

整體說(shuō)來(lái),密碼學(xué)旨在通過(guò)加密協(xié)議,讓世界進(jìn)行安全的通信,或在兩方或多方之間安全地進(jìn)行信息分享,并能阻止惡意第三方讀取或截獲私有信息。密碼學(xué)涵蓋很多加密模式,用不同方法保護(hù)存儲(chǔ)的數(shù)據(jù)不會(huì)因第三方「竊取」而曝光。

歷史

密碼學(xué)歷史可以被分成兩個(gè)時(shí)間段:經(jīng)典和現(xiàn)代。

在經(jīng)典密碼學(xué)世界中,信息是通過(guò)密鑰組合或者說(shuō)是一組字母或數(shù)字來(lái)加密,然后由同一組密鑰解密。一個(gè)簡(jiǎn)單的例子是「凱撒密碼」,字母只是按字母表的順序進(jìn)行位移,就可以加密或解密。值得注意的是,一旦搞清楚私密密鑰,此前所有的加密信息就都被解開(kāi)了。整體而言,到第二次世界大戰(zhàn)期間,雖然加密技術(shù)不斷進(jìn)步,但加密手段仍然未有超越,無(wú)非是一連串的字母位移和配置,最終都被手工或借助計(jì)算機(jī)而破解。

在貝爾實(shí)驗(yàn)室從事密碼學(xué)研究的美國(guó)數(shù)學(xué)家克勞德·香農(nóng)(Claude Elwood Shannon)于 1948 年創(chuàng)立了信息論,他在信息論中聲稱,最好的加密方法應(yīng)該不顯示關(guān)于被加密的明文的任何信息。要知道信息論正是要量化信息,使其能被分享。

信息現(xiàn)在被定義為「熵」,或者叫一個(gè)變量所涉及的不確定性的度量。譬如,想象一下你在記錄拋硬幣的結(jié)果,硬幣頭像朝上的可能是 50%,記為數(shù)字 1, 硬幣頭像朝下的可能是 50%,記為數(shù)字 0。你把一連串 1 和 0 的結(jié)果記錄下來(lái),這個(gè)序列不能被壓縮成一個(gè)更短的字符串——因?yàn)?1 和 0 出現(xiàn)的幾率均等,那么我們?cè)趺纯赡芸s短這個(gè)字符串呢?辦不到的。但想象一下,如果頭像朝上的概率為 80%,朝下的概率為 20%,你所得到的字符串中, 1 的數(shù)量會(huì)遠(yuǎn)多于 0,這樣我們就可以壓縮字符串來(lái)代表一個(gè)真實(shí)的、更大數(shù)量的 1 和 0。這種關(guān)于某種可能性的表達(dá)就是「信息」,也是關(guān)于壓縮如何工作的原理。

香農(nóng)知道,要隱藏信息,一個(gè)好的加密方法應(yīng)該制造隨機(jī)性,這樣一來(lái)原始信息就無(wú)法溯源出來(lái)。譬如,我們對(duì) COLOR 和 COLOUR 兩個(gè)英文單詞進(jìn)行加密,我們知道這兩個(gè)詞很相似。不過(guò),如果我們用一種加密機(jī)制來(lái)加密,結(jié)果卻完全不同,那就堪稱完美的加密。

這意味著,即便要被加密的原初消息只有極小的變化,也應(yīng)翻譯成迥然不同的加密消息,和原始消息的加密消息之間沒(méi)有絲毫相像。有趣的是,目前還沒(méi)有任何一種加密技術(shù)可以做到一丁點(diǎn)的變化就能影響到加密信息的全部。密碼學(xué)還在追求完美的保密性。

接著,伴隨計(jì)算機(jī)的誕生,1970 年代迎來(lái)了現(xiàn)代密碼學(xué),即利用復(fù)雜性理論來(lái)發(fā)展加密方法,用戶可以輕松地加密、解密或驗(yàn)證消息,而在不知道私密密鑰的情況下 ,「暴力破解」這一方法所需的算力被證明相當(dāng)之高,要達(dá)到量子計(jì)算的難度。

因此,與經(jīng)典密碼學(xué)中加密方法必須保密這一條件不同,現(xiàn)代密碼學(xué)的方法和算法都可以被共享。即便提前知道相應(yīng)的理論和算法,也幾乎不會(huì)給你「破解它們」提供什么優(yōu)勢(shì)。

以下兩個(gè)里程碑式的突破把世界帶入現(xiàn)代密碼學(xué)時(shí)代:

· 數(shù)字加密標(biāo)準(zhǔn)(DES)

· 公開(kāi)密鑰密碼學(xué)(譬如:RSA 算法和 Diffie-Helman 算法)

DES (Data Encryption Standard)規(guī)范了電子數(shù)據(jù)的加密方法,這推動(dòng)了對(duì)密碼學(xué)更廣泛的研究。(題外話,美國(guó)政府干預(yù) DES 的開(kāi)發(fā),助長(zhǎng)了人們對(duì)政府通過(guò)后門干預(yù)加密技術(shù)的不信任,等等。關(guān)于啟用后門技術(shù)的優(yōu)缺點(diǎn)的爭(zhēng)論一直持續(xù)到今天。)言歸正傳,DES 在 2002 年已被高級(jí)加密標(biāo)準(zhǔn) (AES) 所取代。

至于公開(kāi)密鑰密碼學(xué),其工作原理如下:

1. 用戶 A 生成一個(gè) ⑴ 私密密鑰(私鑰)和一個(gè) ⑵ 公開(kāi)密鑰(公鑰)。

一個(gè)「密鑰」的定義是什么呢?密鑰是一段信息,可以決定一個(gè)算法的輸出。舉個(gè)非常簡(jiǎn)化的例子,假設(shè)用戶 A 有一個(gè)算法 F(x,k),其中她想用密鑰 k 「掩飾」一個(gè)數(shù)字 x,然后發(fā)送給另一個(gè)用戶 B,公式如下:

F(x, k) = x * k * 7

x 的值根據(jù)用戶 A 想要共享的數(shù)據(jù)或數(shù)字而變化。然后用戶 A 會(huì)用密鑰 k 乘以 x,以「隱藏」它。

假設(shè)用戶 A 的密鑰是 10,她想把數(shù)字 3 發(fā)給用戶 B。她會(huì)用 3 * 10 * 7 = 210 來(lái)「加密」數(shù)字 3。用戶 A 會(huì)把 210 發(fā)送給用戶 B。如果用戶 B 知道密鑰 k 和算法 F,他只需要把 210 除以 10 和 7 來(lái)「解密」這個(gè)秘密數(shù)字,結(jié)果即為 3。不過(guò),在本例中,加密密鑰和解密密鑰是相同的,或者稱為對(duì)稱加密,即用于加密和解密的是同一個(gè)密鑰 3。

而在非對(duì)稱加密中,公鑰「加密」和私鑰「解密」是兩個(gè)不同的數(shù)字,其算法也要比上面提到的復(fù)雜得多。

一般來(lái)說(shuō),公鑰是從私鑰派生出來(lái)的;不過(guò),要從公鑰出發(fā)找到私鑰,「在計(jì)算上是不可行的」。在正規(guī)術(shù)語(yǔ)中,這被稱為陷門函數(shù)(trapdoor funcTIon)——在一個(gè)方向上很容易處理、但在反方向上執(zhí)行起來(lái)極具挑戰(zhàn)性。

因此,從私鑰生成公鑰很容易,但是從公鑰計(jì)算出私鑰非常有挑戰(zhàn)性。這種差異性越大,這種方法就被認(rèn)為越安全。從根本上說(shuō),它依賴于計(jì)算中的一個(gè)事實(shí):乘法計(jì)算起來(lái)非??欤ㄒ枚?。

繼續(xù)……

2. 用戶 A 把她的公鑰發(fā)送給用戶 B。

3. 用戶 B 用用戶 A 的公鑰加密一條要發(fā)給 A 的信息 。

4. 用戶 B 給用戶 A 發(fā)送一條加密的信息。

5. 用戶 A 利用她的私鑰解密這條信息,然后讀到用戶 B 發(fā)給她的信息。

在 RSA 算法中,簡(jiǎn)單說(shuō)來(lái),私鑰和公鑰是基于兩個(gè)大素?cái)?shù)相乘形成的半素?cái)?shù)而生成的。前面講過(guò),因式分解(除法)在計(jì)算上比乘法困難得多。不過(guò),RSA 作為一種密碼學(xué)完整性的方法正在衰落。

Global Security 指數(shù)是一種量化加密系統(tǒng)的安全性的標(biāo)準(zhǔn),它將破解一個(gè)加密系統(tǒng)所需的算力翻譯成「燒開(kāi)水」所需的能量?;谶@個(gè)指數(shù), 288 位的 RSA 加密,可用燒開(kāi)不到一茶匙水所用的算力破解。目前,大多數(shù) RSA 密碼術(shù)使用 2048 位的密鑰。

我們可以對(duì)比來(lái)看一種新型的私 / 公鑰密碼術(shù)——橢圓曲線密碼術(shù)(EllipTIc Curve Cryptography,ECC)。破解一個(gè) 288 位的 ECC 系統(tǒng),所需的能量可以煮沸地球上所有的水。因此,后者正在快速取代 RSA,成為區(qū)塊鏈和零知識(shí)證明中使用的密碼學(xué)系統(tǒng)的基礎(chǔ)。這是關(guān)于 ECC 與 RSA 對(duì)比的一個(gè)相當(dāng)綜合的概括。

在繼續(xù)講下去之前,我想提醒一下密碼學(xué)的使用在歷史上有多么重要。

從愷撒大帝到現(xiàn)在,一個(gè)國(guó)家或一個(gè)民族能夠安全交流的價(jià)值,以人類生命和經(jīng)濟(jì)價(jià)值計(jì)算都是不可估量的。早在巴比倫人占領(lǐng)以色列時(shí)期的 《耶利米書》中,巴比倫人被以色列人擄到巴比倫時(shí),巴比倫就被稱為代表暗碼式翻譯的「示沙克」(耶利米書 25 章 26 小節(jié)),有可能是指保護(hù)先知不受懲罰。甚至托馬斯·杰斐遜也參與過(guò)密碼學(xué),他制作了美國(guó)軍隊(duì)使用的杰斐遜圓盤,這個(gè)發(fā)明一直延用到 20 世紀(jì)。后來(lái),英國(guó)科學(xué)家艾倫·圖靈破解德軍 Enigma 密碼學(xué)的工作,被認(rèn)為縮短了二戰(zhàn)的時(shí)間。毫無(wú)疑問(wèn),密碼學(xué)改變了歷史。

為什么需要零知識(shí)

在前面演示的私鑰 / 公鑰示例中,請(qǐng)注意,用戶 A 永遠(yuǎn)不應(yīng)該暴露她的私鑰,因?yàn)槿魏潍@得她的私鑰的惡意方都能夠解密其獲得的每一條加密消息。

我們來(lái)考慮另一種情況:常規(guī)密碼在大部分數(shù)據(jù)庫(kù)中都存儲(chǔ)為哈希(hash),而不是明文。哈希是一個(gè)函數(shù),會(huì)把一個(gè)輸入轉(zhuǎn)換成另一個(gè)惟一的字符串?dāng)?shù)據(jù),從而掩飾或隱藏原始數(shù)據(jù)。

在哈希函數(shù)中,實(shí)際上「不可能」從哈希函數(shù)創(chuàng)建的惟一數(shù)據(jù)字符串反推出原始數(shù)據(jù)。例如,系統(tǒng)可以使用 keccak256 哈希算法,將密碼「3nY82$pwt4」哈希為 0xc24ea779490258728751c1789aa30fa007261f5c052e22914599b46 ae13ccc5a。看看這種字母和數(shù)字的組合,即使知道哈希算法并使用強(qiáng)大的算力,也無(wú)法倒推出原始密碼 3nY82$pwt4 。重要的是,哈希函數(shù)在定義上是決定性的,這意味著相同的輸入總是會(huì)得到相同的輸出。因此,如果一個(gè)網(wǎng)站將您的密碼存儲(chǔ)為 0xc24ea779490258728751c1789aa30fa007261f5052e22914599b46 ae13ccc5a,那么當(dāng)您輸入「3nY82$pwt4」時(shí),該網(wǎng)站可以通過(guò)對(duì)其哈希,并與存儲(chǔ)在數(shù)據(jù)庫(kù)中的哈希進(jìn)行比較,來(lái)檢查您是否輸入了正確的密碼。

在上面的例子中,請(qǐng)注意:雖然網(wǎng)站不會(huì)存儲(chǔ)您的明文密碼,但您仍然需要通過(guò)一個(gè)安全通道與網(wǎng)站共享密碼,這樣才能證明你知道你的正確密碼。

如果您可以向網(wǎng)站證明您知道正確的密碼,而又不向他們共享或透露該密碼,那不是更好嗎?或者做的更出色,證明以前的那個(gè)你就是現(xiàn)在你說(shuō)的這個(gè)你 ?

總體來(lái)說(shuō),這種方法是當(dāng)今大多數(shù)行業(yè)驗(yàn)證信息的方式——需要提供信息來(lái)驗(yàn)證它,需要重新執(zhí)行計(jì)算來(lái)驗(yàn)證它是否完整地正確執(zhí)行。比如,如果銀行想批準(zhǔn)一筆從您的帳戶到另一賬戶的電匯,銀行必須在轉(zhuǎn)賬前檢查你的賬戶,來(lái)確認(rèn)你的帳戶中有足夠的錢,來(lái)證明您不是在花費(fèi)你實(shí)際不擁有的錢。同樣,如果你想證明自己的身份,你必須提供你的社會(huì)安全號(hào)碼或政府簽發(fā)的其他身份證明。

而在另一些情況下,不需要知道知識(shí)的細(xì)節(jié)就可以檢查結(jié)果。例如,供應(yīng)商 A 的出價(jià)是否高于供應(yīng)商 B ? 供應(yīng)商 B 不應(yīng)該看到供應(yīng)商 A 的出價(jià),同樣,很可能雙方都不想向客戶以外的第三方披露自己的出價(jià)。不過(guò),零知識(shí)證明可以向一個(gè)監(jiān)管或?qū)徲?jì)機(jī)構(gòu)證明,供應(yīng)商 A 的出價(jià)低于供應(yīng)商 B 。

這就是零知識(shí)證明所提供的東西:一方(證明者)能夠向另一方(驗(yàn)證者)證明,他們擁有某一條特定的信息,而又無(wú)需披露該信息是什么。

零知識(shí)證明 (Zero Knowledge Proof)系統(tǒng)

零知識(shí)證明系統(tǒng)是 1989 年由 Shafi Goldwasser、Silvio Micali 和 Charles Rackoff 在《交互證據(jù)系統(tǒng)的知識(shí)復(fù)雜性》(The Knowledge Complexity of InteracTIve Proof Systems)論文中首次提出的。(值得注意的是,這篇論文在最終發(fā)表之前被拒絕了大約三四年。)

這些最初的零知識(shí)證明系統(tǒng)是交互的,意味著數(shù)學(xué)證明的完成,需要驗(yàn)證者和證明者幾方的交互才能完成。這意味著驗(yàn)證者不能獨(dú)立操作,而證明者必須在場(chǎng)或可以出場(chǎng)才能完成證明?,F(xiàn)在,我們已經(jīng)發(fā)展到非交互式的證據(jù)系統(tǒng),在這種系統(tǒng)中,證明者可以發(fā)布一個(gè)證據(jù),并將其留給驗(yàn)證者進(jìn)行檢查。

零知識(shí)證明的驗(yàn)證方法強(qiáng)調(diào)的是可靠性和完備性。可靠性的原則是指,證明者不能說(shuō)服驗(yàn)證者接受一個(gè)錯(cuò)誤的陳述。事實(shí)上,這基于一種可能性,即證明者生產(chǎn)一個(gè)假的證據(jù)的可能性非常、非常、非常低,這一點(diǎn)與幾十年來(lái)我們一直信任的當(dāng)前的加密機(jī)制沒(méi)有什么不同。完備性的原則是指,一個(gè)證明者能夠說(shuō)服驗(yàn)證者接受一條正確的陳述。

很明顯,零知識(shí)證明的一個(gè)主要特征是,它們能夠在保證隱私的同時(shí)證明信息被知曉,但是零知識(shí)證明系統(tǒng)系統(tǒng)更有趣的地方在于,它們?cè)絹?lái)越簡(jiǎn)潔,這一點(diǎn)經(jīng)常被忽視。零知識(shí)證明系統(tǒng)能夠比其他方法更簡(jiǎn)潔地證明信息。驗(yàn)證一個(gè)證據(jù)的時(shí)間,比重演一個(gè)計(jì)算以驗(yàn)證其正確性所需的時(shí)間要指數(shù)級(jí)的短得多,而后者是目前各種變動(dòng)中的計(jì)算所最常用的方法。

重演計(jì)算代價(jià)高昂,需要時(shí)間和資源。(請(qǐng)注意,這與驗(yàn)證算法或程序的正確性不同——驗(yàn)證計(jì)算的完整性則完全是另一個(gè)范疇。)

更重要的是,這意味著執(zhí)行計(jì)算本就效率低下的區(qū)塊鏈,應(yīng)該被用于驗(yàn)證計(jì)算的證據(jù),而不是用于一般的計(jì)算本身。

快進(jìn)到今天的大環(huán)境,我們有幾種不同的零知識(shí)證明系統(tǒng)的實(shí)用案例:

在此,我們將簡(jiǎn)要討論 :

· ZK-SNARKs

·ZK-STARKs

· 防彈證明

ZK-SNARKs

ZK-SNARKs 是「零知識(shí)簡(jiǎn)潔的非交互式知識(shí)論證」(zero knowledge succinct non-interacTIve arguments of knowledge)的縮寫,Zcash 采納了這種方法,Zcash 現(xiàn)在叫 Electric Coin Company,用這種方法將加密貨幣的支付匿名化。(注:Zcash 區(qū)塊鏈實(shí)際上是比特幣區(qū)塊鏈的一個(gè)分叉。)

在 Zcash 區(qū)塊鏈中,礦工不需要知道:

1. 誰(shuí)在發(fā)送 Zcash (因此也無(wú)需知道他們擁有多少 Zcash)。

2. 誰(shuí)在收取 Zcash.

3. 被傳遞的 Zcash 的數(shù)量。

不過(guò),礦工依然能夠證實(shí)交易。

使用 ZK-SNARKs,礦工證實(shí)的事情包括,沒(méi)有發(fā)送者發(fā)送或創(chuàng)建比他們當(dāng)前擁有的 Zcash 更多的 Zcash,接收方只收到發(fā)送方試圖發(fā)送的金額。以這種方式,Zcash 成了一個(gè)真正的匿名系統(tǒng)。在比特幣和包括以太坊在內(nèi)的大多數(shù)公共區(qū)塊鏈上,所有交易信息都是公開(kāi)的,發(fā)送地址、接收地址和金額都是已知的。此外,每個(gè)單獨(dú)帳戶中持有的幣都是已知的。

(應(yīng)該提醒的是,實(shí)際上 Zcash 有兩種不同的地址格式。T 地址是公開(kāi)的,從這些地址發(fā)送和接收的信息可以被視為比特幣區(qū)塊鏈。Z 地址是私密的,如果一個(gè) Z 地址將 Zcash 發(fā)送到另一個(gè) Z 地址,那么該信息將完全保持私密狀態(tài)。不過(guò),如果一個(gè) Z 地址將 Zcash 發(fā)送到一個(gè) T 地址,信息將成為公共狀態(tài)。據(jù)估計(jì),Zcash 區(qū)塊鏈上只有 1% 的交易使用完全私密交易。在 2018 年底 Sapling 升級(jí)之前,由于規(guī)模和內(nèi)存等要求,Zcash 區(qū)塊鏈上的私人交易只能在筆記本電腦上進(jìn)行。現(xiàn)在,私人交易只需要 2 - 3 秒 , 理論上可以從移動(dòng)設(shè)備上完成交易,這是相當(dāng)驚人的。想一想,不到兩年前的 2017 年 Scarbrough 感恩節(jié)時(shí),我和我從事網(wǎng)絡(luò)安全的兄弟展開(kāi)過(guò)一次隱私大辯論,我們都沒(méi)有想到,零知識(shí)交易在如此短的時(shí)間可以發(fā)展到如此快的交易速度。我輸?shù)袅四菆?chǎng)辯論,但公平地說(shuō),只是對(duì)方獲得的支持人數(shù)比我多。)

ZK-SNARKs 具體如何運(yùn)作?

ZK-SNARKs 背后的數(shù)學(xué)理論是精細(xì)和密集的,但是可以(稍微)用正確的原理和定理進(jìn)行濃縮。以下是 Christian Reitweissner 的「SNARKs in a Nutshell」論文的一個(gè)壓縮版本。

首先,問(wèn)題被編碼并壓縮成一組多項(xiàng)式等式,作為一個(gè)二次運(yùn)算程序。

t(x)h(x) = w(x)v(x)

利用這些方程,證明者的目標(biāo)是使驗(yàn)證者相信等式成立。

這些多項(xiàng)式可以是好幾個(gè)項(xiàng),如果對(duì)大量的點(diǎn)進(jìn)行等式檢查,效率會(huì)相當(dāng)?shù)汀榱艘牒?jiǎn)潔性,ZK-SNARKs 依賴于 Schwartz-Zippel 輔助定理,即不同的多項(xiàng)式在大多數(shù)點(diǎn)的求值是不同的,因此只要檢查少量的點(diǎn),其實(shí)就可驗(yàn)證證明者使用的多項(xiàng)式是否正確。這樣,求值只需要在點(diǎn)的一個(gè)子集來(lái)證明等式,而這些求值點(diǎn)是隨機(jī)和秘密的。隨機(jī)性和秘密點(diǎn)通常被稱為 ZK-SNARKs 可信設(shè)置的有毒廢物。設(shè)置階段生成一個(gè)公共引用字符串 (common reference string ,CRS),該字符串生成一個(gè)隨機(jī)點(diǎn) s,從該點(diǎn)求值多項(xiàng)式,并生成一個(gè)秘密數(shù)字 α,來(lái)「移位」多項(xiàng)式的值以保持機(jī)密性。s 和 α 在設(shè)置階段之后立即銷毀,于是惡意行為者就不會(huì)得到它們,從而只能在自己的基礎(chǔ)上構(gòu)造出錯(cuò)誤的證據(jù)。

驗(yàn)證者現(xiàn)在可以檢查,在一個(gè)隨機(jī)點(diǎn) s 處下列多項(xiàng)式保持相等:

t(s)h(s) = w(s)v(s)

接下來(lái),就是掩蓋隨機(jī)性、秘密求值點(diǎn),并允許驗(yàn)證者將使用同態(tài)加密形式的證據(jù)拼成完整拼圖。在同態(tài)加密中,值的加密方式是這樣的:可以對(duì)這些值執(zhí)行數(shù)學(xué)運(yùn)算,然后解密以顯示一個(gè)值,就好像最初的數(shù)字被用在求值中一樣。換句話說(shuō),它允許您隱藏?cái)?shù)字、執(zhí)行一次求值并取消隱藏,就像您對(duì)原初的、未隱藏的數(shù)字進(jìn)行操作一樣 (在本例中不是所有的數(shù)學(xué)操作,而是某一些)。

證明者只知道 E(s),但能夠計(jì)算 E(t(s)), E(h(s)), E(w(s)) 和 E(v(s))。

通過(guò)乘以另一個(gè)秘密值 k 來(lái)混淆同態(tài)加密值,證明者也能夠隱藏其原始信息。

本質(zhì)上,驗(yàn)證者是在檢查下面這個(gè)形式的等式,t(s)h(s)k = w(s)v(s)k

ZK-SNARKs 如何設(shè)置 ?

對(duì)于上面提到的如何生成「多項(xiàng)式等式」和隨機(jī)設(shè)置,有一些人表示懷疑。

關(guān)于多項(xiàng)式等式的質(zhì)疑,我能給出的最短版本是,最初要被證明的等式(比如 A 》 B 嗎 ? 或者 A + B =C 嗎 ? )被壓縮到一個(gè)回路中,即約束條件被用于創(chuàng)建這些多項(xiàng)式。

另外,你是如何選擇隨機(jī)數(shù)的呢 ?

在 Zcash 的第一個(gè)版本中,最初的創(chuàng)始成員使用了一種精心設(shè)計(jì)的方法,通過(guò)他們所謂的「儀式」來(lái)制造這種隨機(jī)產(chǎn)生的有毒廢物,完整故事請(qǐng)見(jiàn)這個(gè)鏈接 https://www.wnycstudios.org/story/ceremony。

「儀式」最終是一個(gè)產(chǎn)生隨機(jī)結(jié)果的多方計(jì)算 (MPC)。換句話說(shuō),儀式的每個(gè)成員 (總共六方) 都產(chǎn)生了各自獨(dú)特的隨機(jī)密鑰,這些密鑰被組合成一個(gè)再次隨機(jī)的密鑰。最近,在 Zcash 的最新版本 Sapling 中,他們?yōu)?MPC 實(shí)施了一種新的方法論——80 多名參與者一起生成了 ZK-SNARKs 的隨機(jī)私鑰。在這種新方法中,只需要一方保持忠誠(chéng),私鑰就不會(huì)被復(fù)制——換一種說(shuō)法,這意味著儀式的所有參與方都必須變節(jié),才能顛覆這個(gè)系統(tǒng)。

ZK-STARKs

相比之下,STARKs (簡(jiǎn)潔透明知識(shí)論證,succinct transparent arguments of knowledge)則因其透明和簡(jiǎn)潔密碼學(xué)而被稱贊。和 ZK-SNARKs 不同,STARKs 不需要一個(gè)可信的設(shè)置,因此也不需要 ZK-SNARKs 中出現(xiàn)的有毒廢物那種事情——因此具有透明性。STARKs 能夠通過(guò)使用 Arthur-Merlin 協(xié)議消除對(duì)可信設(shè)置的需要。在該協(xié)議中,驗(yàn)證者 Arthur 為每個(gè)問(wèn)題生成隨機(jī)性,而證明者 Merlin 則通過(guò)解決問(wèn)題來(lái)提供證據(jù)。

STARKs 還通過(guò)使用最小的密碼假設(shè)和在安全和抗沖突的哈希函數(shù)之間取得平衡,而使其密碼術(shù)更簡(jiǎn)潔。這留下了潛在的后量子時(shí)代的安全風(fēng)險(xiǎn)。最小密碼假設(shè)適用于交互式 STARKs,而非交互式 STARKs 則需要 Fiat-Shamir 啟發(fā)式。

Starkware (https://starkware.co/)正在與 0x 合作進(jìn)行一個(gè)非常棒的項(xiàng)目,在去中心化和中心化的通證交易所中使用 ZK-STARKs,他們就此主題發(fā)表的文章相當(dāng)清晰,有興趣的讀者可以了解一下。

STARK 證明和驗(yàn)證的速度都比 SNARKs 和防彈證明快,只不過(guò)這個(gè)領(lǐng)域的第一個(gè) STARK 項(xiàng)目和開(kāi)發(fā)工具才剛剛浮現(xiàn)。

防彈證明(Bulletproof)

防彈是另一種形式的零知識(shí)系統(tǒng),它不需要可信設(shè)置,但它確實(shí)比 SNARKs 和 STARKs 需要更長(zhǎng)的證明時(shí)間。這些證明方法目前已經(jīng)在門羅幣中實(shí)施——實(shí)現(xiàn)速度快得令人咂舌,學(xué)術(shù)論文發(fā)表才 6 個(gè)月左右就開(kāi)始實(shí)施。

防彈基于現(xiàn)有的 range proof 方法,可將多個(gè) range proof 合為一個(gè),且其數(shù)據(jù)比以往方法還要小。

有趣的是,防彈允許證據(jù)聚合,這意味著您可以通過(guò)多方計(jì)算,在同一時(shí)間收集和驗(yàn)證來(lái)自不同方的多個(gè)證據(jù)。在最近發(fā)表的文章中,Zether 防彈,被部署于智能合約隱私,而最近,摩根大通在其私有的、許可型的區(qū)塊鏈 Quorum 中添加了這些功能。

零知識(shí)證明系統(tǒng)面臨的挑戰(zhàn)

零知識(shí)證明要被廣泛采用,還面臨如下一些主要挑戰(zhàn):

證據(jù)設(shè)置時(shí)間(開(kāi)發(fā)者工具 / 勞動(dòng)力準(zhǔn)備)

對(duì)于每個(gè)計(jì)算或場(chǎng)景,必須生成一組數(shù)學(xué)證明來(lái)實(shí)現(xiàn)編碼。到目前為止,市面上出現(xiàn)了幾種開(kāi)發(fā)工具;不過(guò)這仍然需要一種具有挑戰(zhàn)性的專業(yè)技能。零知識(shí)領(lǐng)域(在很大程度上密碼學(xué)也如此)面臨的技能差距與量子計(jì)算領(lǐng)域相似,因?yàn)樵趶V泛采用之前,必須培訓(xùn)更多開(kāi)發(fā)人員了解如何把一項(xiàng)應(yīng)用組合起來(lái)。

證據(jù)生成和驗(yàn)證時(shí)間 / 規(guī)模要求

零知識(shí)要求證明方生成一個(gè)證據(jù)供驗(yàn)證方驗(yàn)證。這兩項(xiàng)活動(dòng)都需要時(shí)間,近年來(lái)(實(shí)際上是近幾個(gè)月)這方面所需的時(shí)間已大大縮短,但這仍是大規(guī)模采用需要考慮的一個(gè)問(wèn)題。

證據(jù)的標(biāo)準(zhǔn)化

本文已經(jīng)解釋了生成證據(jù)的不同方法論,但每個(gè)方法都有相似的起點(diǎn)。標(biāo)準(zhǔn)化是必要的,它可以使零知識(shí)證明從臨時(shí)處理特定問(wèn)題,發(fā)展到處理更大范圍的相關(guān)問(wèn)題和場(chǎng)景。ZK 標(biāo)準(zhǔn)組織正在致力于解決相關(guān)問(wèn)題。

ZK-SNARK 可信設(shè)置需求

ZK-SNARKs 需要考慮的另一個(gè)因素是:在加密世界需要建立一個(gè)可信的設(shè)置,或者稱為「有毒廢物」。

前文講過(guò),在可信設(shè)置中,會(huì)生成一個(gè)隨機(jī)生成的「私鑰」,該私鑰是作為被保護(hù)的秘密,以便系統(tǒng)根據(jù)需要生成零知識(shí)證明,它是可信設(shè)置建立的基礎(chǔ)。然而,如果私鑰 / 有毒廢物被泄露,那么擁有私鑰的任何人都可以提供錯(cuò)誤的證據(jù)——這意味著他們可以提供證據(jù),聲稱他們知道某條信息,而實(shí)際上他們并不知道,這就是脆弱性所在。

記得吧,我們說(shuō)過(guò) ZK-STARKs 和防彈證明不需要可信設(shè)置,但今年剛發(fā)布的 Sonic 是一個(gè)新的方法論,它可為 ZK-SNARKs 的可信設(shè)置提供一個(gè)通用的、可更新的引用字符串,這是針對(duì)更大的證據(jù)系統(tǒng)而提出的一種簡(jiǎn)化可信設(shè)置的解決方案。

一點(diǎn)感觸

在私人產(chǎn)業(yè),我們幾乎還沒(méi)有開(kāi)始評(píng)估和理解零知識(shí)證明系統(tǒng)最適合在什么地方使用,以及哪種類型的證據(jù)最適合在什么情況下使用。要知道,行業(yè)的大部分精力仍在研究網(wǎng)絡(luò)安全從哪里開(kāi)始著手,更不用說(shuō)如何將零知識(shí)納入這一戰(zhàn)略了。

在公共領(lǐng)域,零知識(shí)證明在速度和規(guī)模方面的快速發(fā)展,無(wú)疑會(huì)給關(guān)注相關(guān)領(lǐng)域的受眾留下深刻印象,但在加密貨幣領(lǐng)域,更大范圍的受眾迄今為止并沒(méi)有對(duì)這種隱私解決方案進(jìn)行資源投入,這一點(diǎn)可以從保護(hù)隱私的區(qū)塊鏈的低參與度而得到證明。

當(dāng)然,公平地說(shuō),智能合約的隱私解決方案仍處于非常初級(jí)的階段(簡(jiǎn)單交易還好一點(diǎn)),人們期望,這將使公共區(qū)塊鏈加速采用隱私保護(hù)方法。

結(jié)論

上面詳細(xì)介紹的零知識(shí)證明系統(tǒng),只是密碼學(xué)領(lǐng)域正在發(fā)生的故事的一部分。還有其他形式的零知識(shí)證明,如 ZK-SHARKs 和 Mimblewimble。在密碼學(xué)的其他領(lǐng)域也有一些有趣的發(fā)展,比如完全同態(tài)加密和量子密碼學(xué)。

零知識(shí)證明和密碼術(shù)所提供的隱私和保密性,在某種程度上是疊加的,它在社會(huì)中的作用取決于你如何衡量它。

對(duì)于希望保護(hù)個(gè)人資料的個(gè)人或保護(hù)商業(yè)秘密的公司,它是一種權(quán)利,給那些不想傷害它的機(jī)構(gòu)一種義務(wù),就像那些享有言論自由的人被懇求不要用它來(lái)傷害他人一樣。

對(duì)政府而言(理想情況下),它是一種責(zé)任,因?yàn)樯婕暗酱蠖鄶?shù)公民的權(quán)利,公民希望并相信,政府將用一種方式既允許我們保護(hù)自己的隱私,又保護(hù)我們免受惡意行為者濫用隱私的侵害;然而在現(xiàn)實(shí)中,我們知道這種情況在今天是不可能存在的。

盡管如此,密碼學(xué)的目標(biāo)在這兩個(gè)領(lǐng)域都是存在的,這樣一個(gè)社會(huì)才能真正實(shí)現(xiàn)自由:自由地保護(hù)信息的隱私,同時(shí)又不用擔(dān)心濫用隱私造成傷害??紤]到密碼學(xué)在過(guò)去幾個(gè)世紀(jì)的歷史,未來(lái)某一天,伴隨著將被理解的恰當(dāng)?shù)臄?shù)學(xué)和科學(xué)進(jìn)展,密碼學(xué)或許能幫助世界實(shí)現(xiàn)這樣的目標(biāo),這一期望似乎并不瘋狂。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉