本文旨在簡單介紹橢圓曲線密碼學。本文預設讀者的閱讀目的是想知道為什么ECC是一個有效的密碼學工具及其基本原理。我的目標是給出廣義的解釋,我將省略一些證明和實現細節,聚焦于抽象的原理。
-橢圓曲線示例-
ECC有什么用途?
ECC是一種加密數據的方法,只有特定的人才能對其進行解密。在現實生活中,ECC有一些常見的用例,但是最主要的用途是加密互聯網數據和流量。例如,ECC可以用來確保在發送電子郵件時,除收件人以外沒人可以閱讀郵件內容。
ECC是一種公鑰密碼學
公鑰密碼學的類型有很多,ECC只是其中一種。此外還有RSA、Diffie-Helman等算法。首先,我要簡單介紹一下公鑰密碼學的背景,然后再討論ECC以及這些概念基礎上的高層建筑。請各位讀者在有空時深入學習一下關于公鑰密碼學的知識。
受攻擊事件影響,pETH和alETH出現較大幅度負溢價:7月31日消息,據Curve Finance頁面信息,受攻擊事件影響,pETH和alETH出現不同程度負溢價。其中alETH/ETH兌換比例為1:0.7742,pETH/ETH 兌換比例為1:0.4513。
注:pETH是一種由JPEG'd Protocol發行的ETH衍生資產。alETH是Alchemix協議中一種價格錨定ETH的合成資產。[2023/7/31 16:08:01]
公鑰密碼學的運作方式如下圖所示:
-?Wikia.org?-
上圖顯示了兩個密鑰:公鑰和私鑰。這兩個密鑰分別用來加密和解密數據。這樣一來,加密數據在傳輸的過程中,全世界的人都可以看到,卻無法知道其內容。
假設Facebook將要收到來自特朗普的私信。Facebook需要確保特朗普在通過互聯網發送私信時,沒有中間方能夠讀取該私信。在使用公鑰密碼學的情況下,整個過程如下:
安全團隊:SwapX漏洞總共損失了約100萬美元:金色財經報道,據CertiK監測,SwapX漏洞總共損失了約100萬美元。CeritK安全專家總共發現了四個與該漏洞相關的外部賬戶EOA。目前攻擊者已獲利313,000美元,請用戶保持警惕。[2023/2/28 12:32:55]
特朗普通知Facebook說他想發送一封私信給Facebook
Facebook將自己的公鑰發送給了特朗普
特朗普使用該公鑰加密了私信:“IloveFoxandFriends”PublicKey=“s80s1s9sadjds9s”
特朗普將加密后的私信發送給Facebook
Facebook使用私鑰解密該私信“s80s1s9sadjds9s”PrivateKey=“IloveFoxandFriends”
如你所見,公鑰密碼學是一個非常有用的技術。以下是一些關鍵點。
Piper Sandler:預計Coinbase Q3收入將下降21%至約6.4億美元:11月2日消息,Coinbase將于本周發布第三季度財報。金融服務公司Piper Sandler估計Coinbase的收入將下降21%至約6.4億美元,部分原因是交易量減少;預計Coinbase的凈虧損為5.4億美元,約為第二季度的一半。
此外,Oppenheimer執行董事Owen Lau預計Coinbase訂閱和服務部門的收入百分比(代表非交易收入)將環比從18%增加到28%,這一增長將部分抵消由于交易量減少約30%而導致的交易收入下降。(Blockworks)[2022/11/2 12:08:19]
公鑰可以發送給任何人,它是公開的。
必須保護好私鑰。如果中間方獲得私鑰,他們就能解密私信。
計算機可以使用公鑰快速加密消息,使用私鑰快速解密消息。
前普華永道加密負責人將在迪拜設立規模7500萬美元的數字資產基金:8月4日消息,普華永道(PwC)的加密貨幣負責人Henri Arslanian已辭去公司職務,將在迪拜設立規模為7500萬美元的數字資產基金Nine Blocks Capital Management,該基金已獲得臨時監管批準。不過,Henri Arslanian將繼續在普華永道擔任高級顧問。(英國《金融時報》)[2022/8/4 12:02:09]
如果沒有私鑰,計算機需要很長一段時間才能暴力破解加密消息。
公鑰密碼學原理:陷門函數
對于所有公鑰密碼學算法來說,最關鍵的是它們都有自己獨特的陷門函數。陷門函數是一種只能單向計算,至少是只在一個方向上易于計算的函數。
非陷門函數的例子:AB=C
已知A和B,我就能計算出C。問題在于,在已知B和C的情況下,我也能計算出A。這就是非陷門函數。
Robinhood允許用戶發送和接收加密資產:7月7日消息,Robinhood官方公告稱,所有用戶現在都可以在 Robinhood 上發送和接收所有列出的加密資產。[2022/7/8 1:59:06]
陷門函數:
“IloveFoxandFriends”PublicKey=“s80s1s9sadjds9s”
已知“IloveFoxandFriends”和公鑰,我可以計算出“s80s1s9sadjds9s”,但是已知“s80s1s9sadjds9s”和公鑰,我無法計算出“IloveFoxandFriends”。
在RSA算法中,陷門函數取決于將一個巨大的數分解成質因數的難易程度。
公鑰:944,871,836,856,449,473私鑰:961,748,941和982,451,653
在上述例子中,公鑰是一個很大的數,私鑰是公鑰的兩個質因數。這是一個很好的例子,因為將私鑰中的數相乘,很容易就能算出公鑰,但是你只有公鑰的話,需要很長時間才能使用計算機算出私鑰。
注:在真正的密碼學實踐中,私鑰的長度必須超過200位才能被視為是安全的。
橢圓曲線密碼學有什么不同?
ECC與RSA的用途相同。ECC會生成一個公鑰和私鑰,允許雙方安全通信。不過,ECC相比RSA有一大優勢。一個256位的ECC密鑰與一個3072位的RSA密鑰安全性相同。也就是說,在資源有限的系統中,ECC密鑰需占用的硬盤空間和帶寬是RSA密鑰的10%不到。
ECC的陷門函數
重點來了。ECC與RSA的主要區別在于陷門函數。ECC的陷門函數類似于數學版的臺球游戲。我們先在曲線上找到一個特定的點,然后使用函數在曲線上找到一個新的點,接著重復使用點函數,在曲線上不斷跳躍,直到找到最后一個點為止。我們來看一下該算法的具體步驟:
-?arstechnica.com?-
從A點開始:
AdotB=-C
-C點經過X軸反射到曲線上的C點
AdotC=-D(從A點至C點畫一條直線,與曲線相交于-D點)
-D點經過X軸反射到曲線上的D點
AdotD=-E(在A點至D點畫一條直線,與曲線相交于-E點)
-E點經過X軸反射到曲線上的E點
這是一個很棒的陷門函數,因為如果你知道起點在哪里,以及到達終點需要經歷多少次跳躍,很容易就能找到終點。但是,如果你只知道起點A和終點E在哪里,幾乎不可能知道中間經歷了幾次跳躍。
公鑰:起點A、終點E私鑰:從A點至E點需要經歷幾次跳躍
幾點疑問
以下是我初次學習ECC時遇到的幾點疑問,以及我的解答。希望能給各位讀者帶來幫助。
如何找到第二個點?如果點函數主要依靠在兩個點之間畫一條直線,我們不需要知道第二個點在哪里嗎?
回答:不需要,因為第二個點實際上是PdotP得出的結果。
PdotP=-R
那什么是PdotP?它實際上就是一條經過P點的切線。參見下圖:
-?f5.com?-
如果點函數產生的直線與曲線的交點距離原點太遠,那該怎么辦?
如果直線與曲線的交點距離原點太遠,我們可以定義一個最大值X。如果超過X值,直線就會繞回來,從Y軸重新開始。如下圖所示:
-?arstechnica.com?-
我發現了一個陷門函數,如何創建公鑰和私鑰?如何用它們來加密數據?
這是一個很好的問題,但是需要更深入的解答。在本文中,我只想簡單解釋RSA和ECC。各位讀者可以查閱更多技術資料來了解具體細節。
中的主要用途:驗證交易的權威性。在以太坊中,用戶發送交易的過程并不是使用公鑰或私鑰加密交易數據,而是使用私鑰對交易數據簽名,這些簽名信息隨交易發送,得到這些簽名信息的節點可使用橢圓曲線算法恢復出一個地址,與交易原始數據比對即可知該筆交易是不是由有權使用該地址的用戶發出的。)
原文鏈接:
https://blog.goodaudience.com/very-basic-elliptic-curve-cryptography-16c4f6c349ed
作者:?LaneWagner
翻譯&校對:?閔敏?&?阿劍
9月10日,OKEx首席戰略官徐坤在微博上表示,Swerve整體而言是一個比較規范的分叉項目。1.與Sushi的分叉邏輯不同,Swerve是建立在與Curve產品相同基礎上的項目,挖礦是通過在S.
1900/1/1 0:00:00親愛的用戶:幣安將于2020年09月14日15:00上線EGLD/USDT、SOL/USDT1-50倍永續合約.
1900/1/1 0:00:00尊敬的用戶: 鯨交所將于2020年09月11日18:00上線FSW/USDT交易對,祝您交易愉快! FSW是誰? Getaverse CTO:Getaverse旨在打造行業DID信用協議標準:5.
1900/1/1 0:00:00鏈聞消息,自動化數字貨幣及法幣兌換網關XanPool完成由OKGroup領投的430萬美元的A輪融資,HashKeyCapital及GumiCryptos參投.
1900/1/1 0:00:00據U.Today報道,Tether首席技術官PaoloArdoino在推特上宣布,Tether已經恢復并返還了100萬枚USDT給一個用戶.
1900/1/1 0:00:00免責聲明:本專欄內容概不構成任何投資意見,內容亦并非就任何個別投資者的特定投資目標、財務狀況及個別需要而編制。投資者不應只按本專欄內容進行投資.
1900/1/1 0:00:00