🍁 金秋送福,大獎轉不停!Gate 廣場第 1️⃣ 3️⃣ 期秋季成長值抽獎大狂歡開啓!
總獎池超 $15,000+,iPhone 17 Pro Max、Gate 精美週邊、大額合約體驗券等你來抽!
立即抽獎 👉 https://www.gate.com/activities/pointprize/?now_period=13&refUid=13129053
💡 如何攢成長值,解鎖更多抽獎機會?
1️⃣ 進入【廣場】,點頭像旁標識進入【社區中心】
2️⃣ 完成發帖、評論、點讚、社群發言等日常任務,成長值拿不停
100% 必中,手氣再差也不虧,手氣爆棚就能抱走大獎,趕緊試試手氣!
詳情: https://www.gate.com/announcements/article/47381
#成长值抽奖赢iPhone17和精美周边# #BONK# #BTC# #ETH# #GT#
哈希:密碼學和區塊鏈中的基本概念
哈希是一個將任意大小的數據轉換爲固定長度字符串的過程。這個過程是通過被稱爲哈希函數的數學公式實現的,作爲算法被實現。
雖然並非所有哈希函數都涉及加密,但所謂的加密哈希函數在加密貨幣的世界中至關重要。正是因爲它們,區塊鏈和其他去中心化系統才能實現高水平的數據完整性和安全性。
哈希函數,無論是傳統的還是加密的,都是確定性的。這意味着,只要輸入不變,算法總是會產生相同的輸出 ( 也稱爲摘要或哈希)。
一般來說,加密貨幣中的哈希算法被設計爲單向函數,這意味着在沒有大量時間和計算資源的情況下,無法輕易地反轉。換句話說,從輸入生成輸出相對簡單,但反之則極爲復雜。一般而言,找到原始輸入的難度越大,哈希算法被認爲就越安全。
哈希函數的工作原理
不同的哈希函數生成不同大小的結果,但每個哈希算法的輸出可能大小始終是恆定的。例如,SHA-256算法只能產生256位的結果,而SHA-1總是會生成160位的摘要。
爲了說明,我們將"Gate"和"Gate"通過比特幣中使用的SHA-256哈希算法(處理。)。
SHA-256
入口
出發(256 bits)
Gate
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Gate
b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
觀察到最小的變化(首字母的大寫)導致了一個完全不同的哈希值。然而,使用SHA-256時,輸出始終會固定爲256位(或64個字符),無論輸入的大小如何。此外,無論我們將這兩個詞通過算法執行多少次,兩個輸出將保持不變。
相反,如果我們通過哈希算法SHA-1執行相同的輸入,我們將得到以下結果:
SHA-1的
入口
出發(160 bits)
網關
3a7bd3e2360a3d29eea436fcfb7e44c735d117c4
門
5df9954f1ca26eabf18c663cc9258ba7f7712c45
重要提及的是,SHA代表安全哈希算法。它指的是一組加密哈希函數,包括SHA-0和SHA-1算法以及SHA-2和SHA-3組。SHA-256是SHA-2組的一部分,連同SHA-512和其他變體。目前,只有SHA-2和SHA-3組被認爲是安全的。
哈希的重要性
常規哈希函數有廣泛的應用,包括數據庫搜索、大文件分析和數據管理。另一方面,密碼學哈希函數在信息安全應用中被廣泛使用,如消息認證和數字指紋生成。在比特幣的背景下,密碼學哈希函數是挖礦過程的一個重要組成部分,並在生成新地址和密鑰中也發揮着關鍵作用。
哈希的真正力量在於處理大量信息時顯現出來。例如,可以通過哈希函數處理一個大型文件或數據集,然後使用其輸出快速驗證數據的準確性和完整性。這是由於哈希函數的確定性特性:輸入總會產生一個簡化和壓縮的輸出 (hash)。這種技術消除了存儲和“記憶”大量數據的需求。
哈希 在區塊鏈技術的背景下尤其有用。比特幣的區塊鏈有多種操作涉及哈希,其中大多數在挖礦過程中。事實上,幾乎所有的加密貨幣協議都基於哈希將交易組連結和壓縮成區塊,並且還用於在每個區塊之間產生加密連結,有效地創建了一條區塊鏈。
加密哈希函數
一種實現加密技術的哈希函數可以定義爲加密哈希函數。一般而言,破解加密哈希函數需要無數次的暴力嘗試。爲了讓一個人“逆轉”加密哈希函數,他必須通過反復試驗來猜測最初的輸入,直到產生相應的輸出。然而,也存在不同的輸入產生完全相同結果的可能性,這種情況下就會出現“碰撞”。
從技術上講,密碼哈希函數必須滿足三個屬性才能被認爲是有效安全的。我們可以將其描述爲抗碰撞性、抗原像性和抗第二原像性。
在分析每個屬性之前,讓我們用三句話總結它的邏輯:
抵抗碰撞:找到兩個不同的輸入產生相同的哈希作爲輸出是不切實際的。
先前的抵抗力:不能“反轉”哈希函數 ( 來找到特定輸出的輸入 )。
對第二前像的抵抗:無法找到一個與特定輸入碰撞的第二輸入。
抗碰撞
當不同的輸入產生完全相同的哈希時,就會發生碰撞。因此,哈希函數被認爲是抗碰撞的,直到有人找到碰撞。重要的是要注意,對於任何哈希函數,總會存在碰撞,因爲可能的輸入是無限的,而可能的輸出是有限的。
換句話說,當找到碰撞的可能性低到需要數百萬年的計算時,哈希函數就是抗碰撞的。因此,盡管沒有完全無碰撞的哈希函數,但其中一些足夠強大,可以被認爲是抗碰撞的,例如,SHA-256。
在不同的SHA算法中,SHA-0和SHA-1組已不再被認爲是安全的,因爲已經發現了碰撞。目前,SHA-2和SHA-3組被認爲是抗碰撞的。
( 先前的阻力至圖像
抵抗原像的屬性與單向函數的概念相關。當一個哈希函數的輸入生成特定輸出的概率非常低時,該哈希函數被認爲是抵抗原像的。
重要的是要注意,這個屬性與之前的不同,因爲攻擊者會試圖通過觀察特定的輸出來猜測輸入是什麼。另一方面,碰撞發生在某人找到兩個不同的輸入生成相同的輸出時,但不管使用了什麼輸入。
抵抗原像的屬性對於保護數據非常有價值,因爲一條消息的簡單哈希可以證明其真實性,而無需透露信息。在實踐中,許多服務提供商和網路應用程序存儲和使用從密碼生成的哈希,而不是明文密碼。
) 對第二原像的抵抗
爲了簡化,我們可以說第二前像的抗性位於其他兩個屬性之間的某個中間點。第二前像攻擊發生在某人能夠找到一個特定輸入,該輸入生成與他們已經知道的另一個輸入相同的輸出時。
換句話說,第二預映攻擊涉及找到一個碰撞,但不是尋找兩個隨機輸入生成相同的哈希,而是尋找一個生成與另一個特定輸入產生相同哈希的輸入。
因此,任何抗碰撞的哈希函數也將抵御第二預映像攻擊,因爲後者總是涉及碰撞。然而,仍然可以對抗碰撞的函數進行預映像攻擊,因爲這涉及從唯一輸出中找到唯一輸入。
礦業和哈希
比特幣的挖礦過程涉及大量的哈希操作,例如驗證餘額、連結交易的輸入和輸出,以及在一個區塊內對交易進行哈希以形成默克爾樹。然而,比特幣區塊鏈安全的主要原因之一是礦工需要進行大量的哈希操作,才能最終找到下一個區塊的有效解決方案。
具體來說,礦工在爲其候選區塊創建哈希值時,必須嘗試多個不同的輸入。實質上,只有在生成一個以一定數量的零開頭的輸出哈希時,他們才能驗證其區塊。零的數量決定了挖礦的難度,並根據專用於網路的哈希率而變化。
在這種情況下,哈希率代表在比特幣挖礦中投入了多少計算能力。如果網路的哈希率增加,比特幣協議將自動調整挖礦難度,以保持提取一個區塊所需的平均時間接近10分鍾。相反,如果幾個礦工決定停止挖礦,導致哈希率顯著下降,挖礦難度將會調整,使得挖掘###變得更容易,直到區塊的平均時間恢復到10分鍾###。
重要的是要強調,礦工不需要找到碰撞,因爲有多個哈希可以作爲有效輸出 (,前面有一定數量的零 )。因此,對於特定區塊,有多種可能的解決方案,礦工只需找到其中之一,這取決於挖礦難度確定的閾值。
由於比特幣的挖礦是一項成本高昂的任務,礦工沒有理由欺騙系統,因爲這會導致重大的財務損失。加入區塊鏈的礦工越多,區塊鏈就變得越大越強。
最終反思
毫無疑問,哈希函數是計算機科學中的基本工具,特別是在處理大數據量時。當它們與密碼學相結合時,哈希算法可以非常靈活,並以多種不同方式提供安全性和身分驗證。因此,密碼學哈希函數對於幾乎所有的加密貨幣網路都是至關重要的,因此理解它們的屬性和工作機制對任何對區塊鏈技術感興趣的人來說無疑是有益的。