編者按:本文來自CSDN,作者:PatrickWoodhead,譯者:Shawn,星球日報經授權轉載。區塊鏈的發展史,實質上是開發者與哈希函數之間長達十年的情史。事實上,如果你理解哈希函數,那么理解區塊鏈的挖礦模式和不可篡改性便是一件輕而易舉的事情!哈希函數的應用很廣泛,比如每當你在網站上輸入密碼時,都會用到哈希函數。雖然哈希函數的用途雖然非常簡單,但是它的性能卻非常強大,在所有與版本控制、安全性和真實性有關的軟件中無處不在。但要明白什么是哈希函數并不容易,雖然解釋的資料很多,但要么過于專業晦澀難懂,要么枯燥無味。因此,在這篇文章中,營長會用一種大白話的方式讓你理解哈希函數的本質,并且通過emoji表情,形象的讓你秒懂哈希函數背后的內含。哈希函數是什么?哈希函數在近年來的技術進步中發揮著非常重要的作用。哈希函數是什么?它的工作原理是什么?我認為我們都應該至少有個基本的了解。網上有很多關于哈希函數的解釋,這些解釋要么晦澀難懂,要么枯燥無味。其實,我們可以把哈希函數想象成一個emoji工廠,工廠接收一行一行的emoji,但它接受的emoji只有獼猴桃、菠蘿、茄子、辣椒、胡蘿卜和玉米。emoji工廠接受和輸出的6種emoji輸入的emoji被工廠處理后,輸出的也只是一行行上述emoji。這個emoji工廠之所以特別,有以下幾個原因。1.工廠返回的emoji要比它接收的emoji少每次,工廠都會從以上6個emoji選項中選出8個emoji。然后,處理這些emoji并返回一行emoji,這些emoji也是從上面的6種emoji中選出來的。重點是,它輸出的emoji比接收的emoji少。Emoji哈希工廠2.對于相同的輸入,工廠總是返回相同的輸出如果你把8個emoji以相同的排列順序送入工廠兩次,那么工廠兩次都將以相同的順序返回3個emoji。也就是說,這個工廠具有確定性。這一點,從上面的動圖中也可以看出,對于相同的輸入,工廠每次都會返回相同的輸出。3.emoji工廠是一條單向通道如果你輸入一行8個emoji,工廠就會立即返回一個輸出。但是,如果我將工廠輸出的3個emoji告訴你,但是不告訴你對應的輸入是什么,你是無法通過分析工廠和輸出來推導出輸入的。實際上,要想找出輸入,最快的方法是試錯。換句話說,要想找出某個輸出對應的輸入,最快的方式就是隨機輸入不同的emoji組,直到找到正確的那組。而且,你甚至可以在工廠里走一走,觀察它的實際運作方式,但你仍然不能根據輸出求解或逆向推導出輸入。這是一個嚴謹的單向工廠。也許你還是有點云里霧里,那么我們不妨以做蛋糕為例,如果我給你制作蛋糕所需的配料和一個詳細的配方,你只要依照配方使用這些配料,馬上就能做出一個蛋糕。假如我讓你用同樣的配料和配方再做一次,你很快就會做出一個相同的蛋糕。蛋糕的烘焙同理。但是,如果我給你的是蛋糕和配方,而配方不包含配料用量,只包含烘培步驟,你就很難計算出這個蛋糕的確切配料用量。這種情況下,用不同的蛋糕配料用量進行試錯或許是最好的方法。這樣,我們再來看一下emoji的屬性。4.只改變輸入中的一個emoji,也會得到完全不同的輸出在做蛋糕這個類比中,通過一次又一次的試錯,你可能會越來越接近正確的配料用量。但是對于emoji表情工廠來說,哪怕只對輸入作出細微的改變,就會得到完全不同的輸出。以上面的動圖為例,如果將輸入中第一個茄子換成胡蘿卜,那么得到的輸出就會是完全不同的3個emoji。這就意味著在給定輸出的情況下,無法通過不斷試錯「逐步逼近」正確的輸入。只能隨機嘗試不同的emoji組合,直到碰巧發現正確的輸入為止。區塊鏈挖礦本質上就是通過計算機不斷地進行試錯來找到輸入,這個輸入經過emoji工廠的處理能夠返回帶有某個特性的輸出,例如,以兩個茄子開頭的輸出。5.要找到某個輸出所對應的兩個輸入,最快的方法就是試錯看到這,你一定會問:等等,如果輸出比輸入短,那么每個輸出肯定會對應多個輸入吧?說的很對。如果你將8個emoji放入工廠,只得到3個emoji,那么一個輸出必定對應多個輸入。但是,emoji工廠的設計太妙了,即使你知道某個輸出對應的輸入之一,找出其余輸入的最快方法仍然是試錯法。換句話說,要找到一個輸出對應的兩個輸入,最快的方法就是試錯,直到發生「碰撞」為止。哈希函數的應用在說哈希函數的實際應用之前,我們先簡單對上面提到的五個哈希函數的屬性做個總結。工廠接收8個emoji并且返回3個emoji;相同的輸入總是返回相同的輸出;輕微改變輸入會導致輸出完全不同;給定一個輸出,試錯是計算對應輸入的最快方法;試錯是找到同一個輸出對應的兩個不同輸入的最快方法。在哈希函數中,這些特性之所以很重,我們不妨通過實際的應用來看看。假設你的密碼由8個emoji組成。每當你在網站輸入密碼時,網站存儲的不是你的密碼,而是你密碼的“哈希值”。這樣一來,如果出現數據泄露或者有人竊取到該網站存儲的個人數據,那么竊取者得到的只是一堆哈希值,而非實際的密碼!由于工廠是單向的,如果竊取者想根據哈希值逆向計算出實際的密碼,唯一的方法就是試錯。由于你的密碼由8個emoji組成,竊取者可能不用花很長時間就可破解你的密碼。但在實際生活中,可選作密碼的字符串集合要大得多,這就意味著可能的輸入也要多得多。而且,實際生活中哈希工廠/函數的輸出的長度也遠遠長于3個字符。因此在現實中,竊取者要花費很多很多年的時間才能根據哈希值算出對應的密碼!雖然這依然存在數據泄露的風險,但并不影響你重新登錄網站,你知道自己的密碼,直接輸入就好。這時,你輸入的密碼會立即由哈希工廠轉化成一個哈希值。網站可以立刻檢查這個哈希值是否與你的賬戶名所對應的哈希值匹配,因為哈希工廠總是返回相同的輸出,然后網站就會允許你登陸。但是密碼長度不一定都是8個emoji那么長,如果我想對一行更長的emoji表情進行哈希計算呢?沒有問題!通過這項由RalphMerkle和IvanDamg?rd兩位密碼學專家提出的簡單技術,任意長度的emoji組合經過「哈希計算」都可以被轉化成僅由3個emoji表情組成的哈希值。Merkle-Damg?rd架構具體怎么實現呢?如果給定一個長度更長的emoji組合,我們可以創建一組工廠來處理它。具體步驟如下:先對這行emoji進行分段,前8個emoji作為第一段,之后每5個emoji為一段來進行分段;將第一段emoji輸入第一個工廠;得到一個由3個emoji組成的輸出,將這個輸出與第二段emoji放在一行一起輸入第二個工廠;不斷重復這個過程,直到這行emoji表情組全部經過工廠處理。將最后一個工廠的輸出返回。這樣我們就把更長的emoji組轉化成3個emoji了!那么,既然現在輸入的長度問題解決了,那么找到輸出相同的兩行輸入會容易得多嗎?你可能直覺上會這么認為。但是,實際上并非如此。就像在一家工廠中找到「一次碰撞」一樣困難。原因在于,假設除了試錯之外,還有某種方法可以找到輸出相同的兩行較長的emoji組合輸入。那么,在某個實行Merkle-Damg?rd架構的工廠中,你輸入兩行不同的emoji組合,這個工廠將返回相同的輸出。但是,這意味著你使用試錯法之外的方法找到了一次碰撞,這就與上文中的假設相矛盾了,因為我們假設每個工廠都具有抗碰撞性!所以,通過增設工廠和數學推理,我們創造了一種方法,可以將任意長度的emoji組合處理成3個emoji。更重要的是,即使某人知道一個由3個emoji組成的輸出,也沒有比試錯法更快的方法可以用來計算出任意長度的對應輸入。鑒于現實世界的哈希計算存在太多組合,試錯可能會花費許多年!有了這個簡單的原理,你就可以將自己的emoji密碼設置成任意長度,其安全性不會受影響。哈希函數與區塊鏈那么哈希函數是怎樣應用在區塊鏈上的呢?想象一下,你有一個文檔,里面描述的可能是關于一筆金融交易。你要向人們證明這個文檔在某個確切的時刻處于某個確切的狀態。你可以將整個文檔放入使用Merkle-Damg?rd架構的哈希工廠中,將輸出結果通過電子郵件發送給100個人。由于這個工廠是單向的,所以郵件接收者無法讀出文檔的原始內容。如果未來有人聲稱你的文檔是假的,或者你篡改了文檔,你就可以證明在你把這個文檔發送給去中心化的社區時,這個文檔處于某個確切的狀態。因為哈希工廠是抗碰撞的,人們自然會相信你不是騙子!了解真正的哈希函數哈希函數的「單向性」和「抗碰撞性」是非常強大的,這兩個特性正在隨著區塊鏈的發展改變整個技術世界。但是emoji工廠/哈希函數內部到底是如何運作呢?這就要牽扯到很多技術細節了。實際上,如果你確信上述特性成立,那么工廠的內部運作就無關緊要了。哈希函數的特性比它們的內部運作更有趣。真正的哈希函數接受的是十六進制字符串。十六進制字符串僅由“0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f”十六個字符組成。哈希函數接受任意長度的輸入,并且返回64個十六進制字符。有時,為了增強安全性,會返回128個十六進制字符。SHA-256是一種普遍使用的哈希函數。
數據:BTC已實現上限達到15個月低點:金色財經消息,據Glassnode數據顯示,BTC已實現上限剛剛達到15個月低點,數額為385,688,808,817.36美元。[2022/12/8 21:31:01]
美聯儲11月加息75個基點的概率為80.3%:10月31日消息,據CME“美聯儲觀察”:美聯儲11月加息50個基點至3.50%-3.75%區間的概率為19.7%,加息75個基點的概率為80.3%;到12月累計加息100個基點的概率為8.8%,累計加息125個基點的概率為46.9%,累計加息150個基點的概率為44.3%。(金十)[2022/10/31 11:59:30]
芝加哥聯儲行長贊成年內每次會議都加息25個基點:4月2日消息,芝加哥聯邦儲備銀行行長Charles Evans表示,在通脹率居高不下和勞動力市場火爆的情況下,他的利率展望與同僚們的預期中值一致,即今年會再進行6次幅度25基點的加息。Evans表示,他預計美國經濟將穩健增長,失業率料降至3.5%左右。(財聯社)[2022/4/2 13:59:54]
美國掉期市場定價顯示美聯儲將在明年6月的會議上加息25個基點:11月22日消息,美國掉期市場定價顯示美聯儲將在明年6月的會議上加息25個基點。(金十)[2021/11/23 7:05:12]
美聯儲基金期貨完全計價美聯儲將于明年9月加息25個基點:美聯儲基金期貨目前完全計價美聯儲將于明年9月加息25個基點。 (金十)[2021/10/16 20:32:50]
Tags:EMOEMOJI區塊鏈MERMY Ceremonial EventEMOJI價格區塊鏈技術通俗講解舉例MER幣
文|張雪、盧曉明編輯|盧曉明出品|Odaily星球日報“牛市萬事大吉,只有奇跡出現才能拯救熊市,而加密貨幣貸款就是那曇花一現的奇跡”.
1900/1/1 0:00:00近日,BitcoinSV社區匿名開發者_unwriter在推出數個BitcoinSV底層開發工具如BitDB、BitSocket之后,又推出了一個重磅項目-Planaria變形蟲.
1900/1/1 0:00:00編者按:本文來自鏈聞ChainNews,作者李畫,Odaily星球日報經授權轉載。1月18日,以太坊核心開發者在電話會議中達成一致,確定了以太坊君士坦丁堡升級的時間推遲到在7280000區塊高度.
1900/1/1 0:00:00如果不是身處其中,絕大多數人都想不到,“區塊鏈”是留學機構的熱詞之一。“你考慮一下皇家墨爾本理工學院的區塊鏈MBA,這也是世界排名前100的大學。雅思只要6.5,不需要托福和GRE.
1900/1/1 0:00:00據彭博社報道,知情人士透露,中國市值最大的保險公司平安保險(集團)股份有限公司(簡稱“平安保險”),正準備將旗下一個金融管理門戶網站金融壹賬通進行首次公開募股.
1900/1/1 0:00:00編者按:本文來自:一本區塊鏈,作者:比薩,Odaily星球日報經授權轉載。發票,已經成為區塊鏈在國內落地最快的領域之一。2018年8月,深圳國貿旋轉餐廳開出全國第一張區塊鏈發票.
1900/1/1 0:00:00