比特幣加密貨幣學概述


看看全球貨幣體系的安全機制,數以百萬計的人委託他們的價值。

我將討論比特幣地址和密鑰背後的安全性,稱為公鑰加密貨幣術。這包括SHA256、隨機數生成器(RNG)、哈希函數和橢圓曲線數字簽名(ECDSA)。如果你還有其他問題,請隨時DM 我。我是一名受過訓練的數學家,我對它有很深的熱愛。如果你發現自己對加密貨幣學產生了新的興趣作為一種愛好,那麼很多人創建加密貨幣算法是為了好玩,他們的社區可以為你的旅程提供幫助。

我保證你只需要一些基本的代數,以及對指數函數的簡單理解。如果你熟悉模算術,那就太好了。如果沒有,沒什麼大不了的。

加密貨幣學已經存在了數千年,目前擁有非常強大的專業人士和愛好者社區。該技術已經取得了長足的進步,其當前的迭代允許我們幾乎不必考慮的在線安全性。

讓我們從公鑰加密貨幣學的概念開始,特別是在比特幣的背景下。在最基本的層面上,PKC 涉及你的私鑰,以及從它們生成的公鑰。 PKC 利用所謂的“陷門函數”,這些函數很容易解決(容易從私鑰生成公鑰),但幾乎不可能逆向工程(找到給定公鑰的私鑰。)這是由於使用模算術、指數函數和非常大的素數。

你的比特幣私鑰可能是單詞,但也可以是非常大的數字。具體來說,當我們開始加密貨幣時,你的私鑰將被轉換為一個大數字或二進製字符串(一系列1 和0),而不管其初始形式是什麼。多麼整潔這就是為什麼人們有時會說你的私鑰“代表一個非常非常大的數字”,這也是其安全性的原因。雖然這在確定性/算法意義上在技術上是正確的,但原因並不一定很明顯。

私鑰生成是另一個有趣的方面。硬件和託管錢包會為你做這件事,他們可能會也可能不會告訴你他們是如何做的(開源與閉源軟件)。這在選擇錢包時絕對值得考慮。另一種選擇是從頭開始創建自己的。你可以擲好骰子、擲硬幣或使用其他類似的方法。還有經過專業加密貨幣學社區測試和分級的在線隨機數生成器。 RNG 經常使用當前時間作為它們的生成器來創建一個小的初始差異,經過足夠的迭代後,它會產生一個完全唯一的數字。選擇在線RNG 風險自負。即使RNG本身是好的,網站上也可能存在惡意軟件。你知道的越多

所以我們有我們的秘密詞。讓我們看看接下來會發生什麼。

圖像2

這是我們陷門函數的一種非常簡單的形式。 “G 到a mod n”代表我們最終的公鑰(mod 是模算術的縮寫,它將我們的答案限制在一定數量的數字上,而不是每個自然數)。但是,即使你知道G 和n,也沒有簡單的方法可以找到代表你的私鑰的a。計算G 到mod n 相對容易,但由於離散對數問題,沒有倒退。 N 通常是一個很大的素數,因為根據定義它們是不可分解的。此外,如果你對函數/問題的相對複雜性感興趣,請隨時查看算法時間複雜性。

讓我們更深入一點,並以圖形方式查看它以獲得更具體的理解。

圖片1

紅線是我們的曲線,是比特幣ECDSA 使用的特定曲線。 G 是我們的起點,我們的“發電機”,如果你願意的話。然後,我們要給它自己“加”G(儘管它不是通常意義上的加法——那些瘋狂的數學家喜歡重新定義事物。甚至不要讓我開始研究拓撲)。在這種情況下,添加它意味著我們將採用該點的切線。這條切線與曲線相交的地方將是我們的下一個點。我們將再次取切線,並找到一個新點。在實踐中(在計算機上)這被執行了數千甚至數百萬次。最終的結果是,即使你知道我從哪裡開始,你也不知道我為自己“添加”了多少次以達到最後一點。我們執行添加的次數是你的私鑰(你的私人號碼)。同樣,在給出潛在答案的情況下,這很容易檢查,但幾乎不可能“蠻力”。瞧

所以我們有我們的第一個確定性(一個輸入給你一個答案)信息加擾,但它不是一個很好的格式(現在,它只是一個有序的對(x, y)。我們現在有一個公鑰,從一個私人的。讓我們再次打亂該信息並對其進行轉換。

我們通過SHA 256 來做到這一點,它代表安全去中心化算法。去中心化算法是應用於信息的一組特定步驟,無論輸入的長度如何,都會生成固定長度的加密貨幣數據集。

是的,這一系列算法是由美國國家安全局(NSA) 開發的,但不要讓你擔心。應用科學(包括數學)的美妙之處在於發現和知識獨立於誰開發它。這就是為什麼我們有證據。如果證明是“可靠的”,那麼它就站在自己的兩隻腳上,不能被“破解”或繞過。 SHA2 系列是公知的。你可以去網上看看代碼,如果你喜歡自己用SHA256來加密貨幣一些東西。你會發現輸入的微小變化都會對答案產生巨大的影響。混沌理論很美。但無論如何。

由於許多人使用SHA256 獲得了數十億美元的安全,他們還花費了大量資金對其進行測試以確保其安全性。人們經常將量子計算作為破解這種加密貨幣的一種潛在方式。然而,他們讓量子計算變得可行,通過黑客攻擊世界前五名主要銀行,還有更多的錢可以被盜。我敢肯定比特幣在名單的後面,因為一旦被黑客入侵,它的價值可能會急劇下跌。儘管如此,如果未來SHA256 變得不那麼安全,我們可以隨時升級比特幣的加密貨幣方法。可編程錢

SHA256 與ECDSA 相似,因為它很容易檢查答案,但很難強力破解– 嘗試每個答案,直到找到正確的答案。 SHA256 之所以如此命名,是因為它創建了一個256 位的字符串– 一系列256 個零和一個。這使得可能的組合數量多得離譜,比可觀測Cosmos中的Atom數量還多。

圖像3

我們將再次使用不同的散列以獲得更小的輸出,這使得最終地址更短。這個散列函數稱為RIPEMD-160。一旦我們得到這個結果,我們將把它轉換成所謂的Base58,它只是一種對人類更具可讀性的形式。它省略了數字零(0) 和大寫字母O (o),因此它們是’不會相互誤會,也省略了大寫字母I (i),這樣就不會被誤認為是數字一(1) 或小寫字母l (L) 它省略了數字零(0 ) 和大寫字母O (o),這樣它們就不會被誤認為彼此,以及省略大寫字母I (i),這樣就不會被誤認為是數字一(1) 或小寫大小寫字母l (L)。

現在我們有一個公共地址,它可以證明(在正式的數學意義上)是從一個獨特的私人地址創建的。即使世界上所有70 億人每天都創建一個新的比特幣公鑰,一千年來,有如此多的可能性,以致於創建相同的兩次的可能性幾乎為零。

所有這些都是創建和驗證密鑰的過程,因此我們的平均出塊時間為10 分鐘。十分鐘的數學保證最終結算是值得的。

這是無名的客座帖子。表達的觀點完全是他們自己的觀點,不一定反映BTC Inc. 或Bitcoin Magazine 的觀點。

資訊來源:由0x資訊編譯自CRYPTOTIM,版權歸作者Viena Abdon所有,未經許可,不得轉載

Total
0
Shares
Related Posts