編者按:本文來自區塊鏈大本營,作者:wagslane,譯者:火火醬,Odaily星球日報經授權轉載。本文對哈希函數進行簡要的介紹,旨在幫助讀者理解為什么要使用哈希函數,以及其基本工作原理。文中將省略具體證明和實現細節,而將重點放在高級原理上。為什么要使用哈希函數
哈希函數被廣泛應用于互聯網的各個方面,主要用于安全存儲密碼、查找備份記錄、快速存儲和檢索數據等等。例如,Qvault使用哈希散列將主密碼擴展為私人加密密鑰。用途列表清單詳見:https://en.wikipedia.or/本文將重點介紹哈希函數的幾個重要特性,也可以說是其最重要的特性:哈希函數確定性地加擾數據;無論輸入是什么,哈希函數的輸出大小始終相同;無法從加擾的數據中檢索原始數據;確定性地加擾數據
首先,想象一個魔方。
Fairyproof:BNB鏈上ShadowFi (SDF)遭到攻擊,被盜1078個BNB:9月2日消息,根據區塊鏈安全公司Fairyproof的探測系統,部署在BNB鏈上的ShadowFi (SDF)遭到攻擊。
根本原因是它的“burn”函數的可見性是“public”。這種可見性通常不應該設置為公開,而應該是一個內部函數。
攻擊過程如下:
步驟1:攻擊者獲取了一定數量的SDF
步驟2: 燒掉交易對中的一些SDF,以推高SDF的價格
步驟3:攻擊者將步驟1中獲取的所有SDF交換為WBNB
下面是攻擊交易的截圖:
在撰寫本文時,大約有1078 BNB(30萬美元)被盜,并通過BNB鏈上的Tornado Cash提現。[2022/9/2 13:05:04]
以太坊第九個主網影子分叉“Shadow Fork9”上線:金色財經消息,以太坊的第九個主網影子分叉“Shadow Fork9”已上線,在影子分叉發生后的幾個小時內,沒有報告任何重大故障。與完整的測試網Merge硬分叉(如Sepolia硬分叉)不同,影子分叉是一個較小的測試分叉,專注于當以太坊合并最終發生時需要的一兩個小規模更改。以太坊基金會DevOps工程師Parithosh解釋道,在Shadow Fork9中,開發人員主要專注于測試更新和最近的Sepolia硬分叉中使用的版本。[2022/7/15 2:14:36]
我們從恢復魔方開始。如果我們隨機轉動魔方,到最后,魔方將會呈現和開始時完全不同的狀態。同樣,如果我們重新開始,重復完全相同的動作,那么我們會不斷得到完全相同的結果。盡管看起來結果可能是隨機產生的,但實質上并非如此。這就是“確定性”的意思。“確定性”在安全存儲密碼方面起著至關重要的作用。例如,假設我的密碼是“iLoveBitcoin”。我可以使用哈希函數對其進行加擾:iLoveBitcoin→“2f5sfsdfs5s1fsfsdf98ss4f84sfs6d5fs2d1fdf15”現在,如果有人看到這個加擾后的版本,他們也不會知道我的原始密碼!這一點非常重要,因為這意味著,作為一名網站開發人員,我只需存儲用戶密碼的哈希散列(加擾數據),即可對其進行驗證。當用戶進行注冊時,我對密碼進行哈希散列處理,并將其存儲在數據庫中。當用戶登錄時,我只需再次對輸入的內容進行哈希散列處理,并比較兩個哈希值。由于特定的輸入始終會輸出相同的哈希值,所以該方法每次都可以成功驗證密碼。如果網站以純文本格式存儲密碼的話,則會出現巨大的安全漏洞。如果有人入侵該網站,那么他將會能獲取所有的電子郵件和密碼,并可以嘗試在其他網站上使用這些信息進行登錄。無論輸入是什么,輸出大小始終相同
ShapeShift開源其即將推出的V2版本平臺代碼:金色財經報道,作為正在進行的去中心化努力的一部分,非托管加密貨幣交易所ShapeShift周四宣布,已開源其即將推出的V2版本平臺的代碼,讓開發人員有機會為迭代過程做出貢獻。v2代碼存儲庫現已在Github上可用,使開發人員可以更輕松地將其下載到本地驅動器。此外,開源開發人員可以參加在ShapeShift的Discord頻道上舉行的每兩周一次的社區電話會議。[2021/9/3 22:56:17]
如果對單個單詞進行哈希,則輸出將是特定的大小(對于特定的哈希函數SHA-256來說,其大小是256bits)。如果對一本書進行哈希,其輸出也將是相同的大小。這是其另一個重要特性,因為這可以節省我們的計算時間。典型的例子是在數據映射中使用哈希散列作為鍵。數據映射是計算機科學中用來存儲數據的簡單結構。
iShares Silver Trust持倉較上日增加217.22噸:全球最大白銀ETF--iShares Silver Trust持倉較上日增加217.22噸,當前持倉量為18072.29噸。[2020/8/14]
當程序在映射中存儲數據時,會向映射提供鍵和值。當程序想要訪問該值時,它可以向映射提供適當的鍵并接收相應的值。數據映射的優勢在于它們可以立即找到數據。該鍵被用作計算機能夠立即找到的地址,這樣一來,就不必花費數小時在數百萬條記錄中進行搜索了。因為鍵就像地址一樣,不能太大。如果想將書籍存儲在數據映射中,則可以對書籍的內容進行哈希散列處理,并使用哈希值作為鍵。作為一名程序員,我可以輕而易舉地使用哈希散列來查找該書的內容,而不必按標題、作者等對數千條記錄進行排序。其工作原理是怎樣的呢?
動態 | Cashaa為印度加密貨幣所有者推出銀行解決方案:銀行服務平臺Cashaa正在為面臨印度中央銀行印度儲備銀行(RBI)施加銀行限制的印度加密貨幣所有者提供解決方案。這項服務允許用戶每月存入多達1千萬盧比(約合141,012美元)來購買加密貨幣。Cashaa周一宣布,它將在10月23日開始使用戶能夠使用INR購買加密貨幣。(Bitcoin)[2019/10/22]
這部分是本文的難點,我會盡量將其簡化,省略實際的實現細節,重點介紹計算機在使用哈希散列處理數據時工作原理的基本概念。下面讓我們來看一下我為此專門編寫的一個算法——LANEHASH:我們從要進行哈希散列的數據開始
我把字母和數字轉換成1和0(計算機中的所有數據都以1和0的形式進行存儲,不同的1和0的組合代表了不同的字母)
此時,我們通過各種預設的步驟對數據進行轉換。步驟內容可以是任意的,但重要的是,每次使用LANEHASH時,我們都需要遵循相同的步驟,以便我們的算法具有確定性。我們將前4位從左側移到右側:
每隔1位進行間隔:
我們把這兩部分轉換為以十進制的數字。十進制是我們在學校中學過的“正常的”數字系統。(所有的二進制數據實際上都是數字,你可以在其他網站上在線查詢如何將二進制轉換為十進制數字)
我們將這兩個數字相乘:
然后對該數進行平方:
再將該數字轉換回二進制:
從右側切掉9bits后正好得到16bits:
然后將該二進制數據轉換回英語:
如上所示,如果輸入相同,那么最后終將會得到相同的輸出結果。但是,如果改變任何一個字母,最終的結果也將發生巨大變化。
每秒7筆交易,轉賬確認時長1個小時,一筆轉賬手續費360美金,這就是比特幣的“網絡性能”。相比支付寶每秒交易25萬筆交易、零手續費,比特幣相形見絀.
1900/1/1 0:00:00“加密”則是用收信者的公鑰與原始文本進行運算,得到別人無法理解的加密文本。這樣,無論加密文本通過何種渠道傳播出去,第三者都無法解讀文本內容.
1900/1/1 0:00:00編者按:本文來自LongHash區塊鏈資訊,作者:LongHashKyleTorpey,Odaily星球日報經授權轉載。5月上旬,比特幣網絡將迎來新一輪區塊挖礦獎勵減半.
1900/1/1 0:00:00編者按:本文來自碳鏈價值,作者:張世凱,編譯:黑土,Odaily星球日報經授權轉載。最近,包括彭博社和福布斯在內主流媒體紛紛發聲,認為比特幣會在即將到來的區塊獎勵減半之后迎來下一波牛市.
1900/1/1 0:00:00編者按:本文來自加密谷Live,作者:RyanSeanAdams,翻譯:子銘,Odaily星球日報經授權轉載。去年,以太坊平臺出現了兩個新的時髦的流行語.
1900/1/1 0:00:001.今日市場概況今日市場總市值為2080億美元,相比昨日增加1%。交易量為1270億美元,相比昨日減20%.
1900/1/1 0:00:00