什麼是非對稱加密?

更新時間 2026-04-09 10:23:56
閱讀時長: 1m
非對稱加密是一種可以對信息進行加密和解密的算法


非對稱加密屬於密碼學範疇,是一種可以對信息進行加密和解密的算法。它的運行需要一個公鑰和一個私鑰,公鑰用於公開給其他人,私鑰需要自己保存,兩個密鑰可以互相加密、解密。由於加密的密鑰與解密的密鑰不是同樣的而產生了非對稱性,因此被稱爲非對稱加密。




與之對應是加密解密使用同一密鑰的算法,對稱加密算法。比如把單詞“gate”使用AES對稱加密算法加密可以得到字符串U2FsdGVkX18fop1iGBPzNdnADZ57AJxOn+wEBSIUAG4。反之密文也可以通過AES對稱加密算法解密得出原字符串gate。在早期,發送加密電報使用的就是這種對稱加密算法。這種方式解密過程簡單且速度快,但加密方法被泄露後,很容易將截獲的信息破譯出來,安全性不高。


非對稱加密算法的安全性相比對稱加密算法要高,但是由於運行復雜,效率比對稱加密算法要低一些。我們通過一個例子來簡單理解:假設Jim想給Bob使用非對稱加密的方式發送一條信息,需要經過以下過程:


1.Jim與Bob都需要產生一對公鑰和私鑰;

2.Jim的公鑰發送給Bob,私鑰自己保存;Bob的公鑰發送給Jim,私鑰自己保存;

3.Jim向Bob發信息時,使用Bob的公鑰加密信息;

4.Bob收到消息後,使用自己的私鑰即可解密查閱。


非對稱加密在區塊鏈中的應用


非對稱加密算法是區塊鏈中主要應用的加密算法,它的應用場景主要包括信息加密、數字籤名、登入認證及數字證書等,其在區塊鏈中的價值是公鑰和私鑰來識別發信者和接收者的身份。


  1. 信息加密:確保信息的安全性。發信者手裏的是公鑰,其它人知道公鑰沒有關系,因爲其它人發來的信息對收信者沒有影響。而收信者手裏的是私鑰,且是唯一能夠解開加密信息的人。比特幣交易的加密技術即屬於此場景。

  2. 數字籤名:確保信息的歸屬性。爲了表明信息沒有受到僞造且確實是信息擁有者發出來的,數字籤名附在信息原文的後面。就像手寫的籤名一樣,具有唯一性性和簡潔性。

  3. 登入認證:是由客戶端使用私鑰加密登入信息後,發送給服務器,後者接收後採用該客戶端的公鑰解密並認證登入信息。

  4. 數字證書:確保公鑰的合法性。爲了發信者驗證從網上獲取的公鑰是真的,而生成的第三方機構CA (Certificate Authority)來保障公鑰合法性。信息原文的所有者在發布信息時,除了需要帶上自己的數字籤名外還需要數字證書,這才能確保信息不被篡改。


比特幣的非對稱加密算法如何運行


在比特幣區塊鏈中使用的非對稱加密算法爲橢圓曲線加密算法。這也是目前區塊鏈常用的一種非對稱加密算法,簡稱ECDSA,其中EC是“橢圓曲線”的簡稱,DSA是“數字籤名算法”的簡稱。

在對橢圓曲線的參數確定上,比特幣系統又使用了名爲SECP256k1的曲線參數,這樣在運作中系統隨機得出32個字節的私鑰,然後通過橢圓曲線數字籤名算法(使用SECP256k1曲線)得出公鑰,再運作多次哈希算法得出公鑰哈希,並結合版本號等形成了最終的帳戶地址。


用一個簡單的例子來說。


比如隨機生成兩個質數(152,891)拼成一個6位數的“私鑰”152891,而生成“公鑰”的規則是這兩個質數相乘152x891=135432。這時網絡上的人都可以拿到這個“公鑰”。當你想讓這個數據僅被你一人修改時,可以在這個數據「“公鑰”135432」後面加一個說明:只有私鑰的左三位數字乘以右三位的數字等於公鑰,才可以被修改。


如果網絡上有黑客想要不經過同意篡改數據,即使他知道“私鑰”生成“公鑰”的方式是兩個質數相乘,但他也不知道是哪兩個質數。因此他爲了找到“公鑰”135423的私鑰只能用最直接的方式一個個嘗試:001x02,......,998x999等。當質數很大時這個過程是很困難的。


這樣的例子是比較簡單的,用計算機可以直接從“公鑰”算出來上述例子的“私鑰”。但比特幣系統使用的橢圓曲線算法從“私鑰”產生“公鑰”是現有技術很難破解的。因爲其質數很大。並且,比特幣系統中私鑰解密過程是通過一種逆波蘭表示法的堆棧執行語言實現的。


橢圓曲線


私鑰可以推導出公鑰和公鑰哈希,但公鑰和公鑰哈希卻不能推導出私鑰。因此私鑰需要使用者好好保管,一旦丟失私鑰,就相當於帳戶裏的資產拿不回來了。


常見的非對稱加密算法


非對稱算法是區塊鏈運行的基礎。除了比特幣及以太坊等區塊鏈使用的橢圓曲線加密算法外,以下幾種不同的加密算法也在區塊鏈中較爲常見。


RSA(Rivest Shamir Adleman)算法:因其難以破解的特點在數字加密和數字籤名領域被廣泛應用。在RSA算法中,使用公鑰私鑰都可以對信息加密,公鑰加密(防止信息被盜取)則私鑰解密,私鑰加密(防止信息被篡改)則公鑰解密(數字籤名)。理論上,RSA算法中密鑰位數越長,其破解難度越高(未排除量子計算)。所以目前業界普遍使用的密鑰不低於2048位。


DSA數字籤名算法(Digital Signature Algorithm):這種算法無法對信息進行加密或者解密,主要運用於對加密信息進行籤名和認證。安全程度和RSA算法一樣高,但處理速度更快。


ECC橢圓曲線加密算法(Elliptic-curve Cryptography):加密過程源於數學中的橢圓曲線。相較於RSA算法,ECC算法加密和解密速度更快,單位安全強度更高。同樣的密鑰長度,ECC算法具有最高的安全性。


結語


密碼學是支撐區塊鏈系統運行的基礎技術之一,現已成爲現代計算機安全中不可或缺的一部分,也是日益發展的加密貨幣生態系統的關鍵組成部分。隨着密碼學的不斷發展,在未來的計算機安全及加密貨幣安全驗證方面,對稱與非對稱加密算法在抵御各類威脅上會有更大的作用。


作者: Rena
譯者: Joy
審校: Hugo, Jiji, Piper
免責聲明

* 投資有風險,入市須謹慎。本文不作為 Gate 提供的投資理財建議或其他任何類型的建議。

* 在未提及 Gate 的情況下,複製、傳播或抄襲本文將違反《版權法》,Gate 有權追究其法律責任。

分享

目錄

非對稱加密是什麼

非對稱加密在區塊鏈中的應用

比特幣的非對稱加密算法如何運行

常見的非對稱加密算法

結語

sign up guide logosign up guide logo
sign up guide content imgsign up guide content img
Sign Up

相關文章

Solana需要 L2 和應用程式鏈?
進階

Solana需要 L2 和應用程式鏈?

Solana在發展中既面臨機遇,也面臨挑戰。最近,嚴重的網絡擁塞導致交易失敗率高,費用增加。因此,一些人建議使用Layer 2和應用鏈技術來解決這個問題。本文探討了該策略的可行性。
2026-04-06 23:31:55
Sui:使用者如何利用其速度、安全性和可擴充性?
中級

Sui:使用者如何利用其速度、安全性和可擴充性?

Sui 是一個權益證明 L1 區塊鏈,具有新穎的架構,其以物件為中心的模型可以通過驗證器級別的擴展實現交易的並行化。在這篇研究論文中,將介紹Sui區塊鏈的獨特功能,將介紹SUI代幣的經濟前景,並將解釋投資者如何通過Sui應用程式活動瞭解哪些dApp正在推動鏈的使用。
2026-04-07 01:12:38
Morpho 代幣經濟學深入解析:MORPHO 的應用、分配方式與價值邏輯
新手

Morpho 代幣經濟學深入解析:MORPHO 的應用、分配方式與價值邏輯

MORPHO 是 Morpho 協議的原生代幣,主要用於治理及生態系統激勵。藉由代幣分配與激勵機制的設計,Morpho 將用戶行為、協議發展與治理權利緊密結合,進而在去中心化借貸體系中建立長期價值邏輯。
2026-04-03 13:14:03
Morpho vs Aave:深入解析 DeFi 借貸協議的機制與結構差異
新手

Morpho vs Aave:深入解析 DeFi 借貸協議的機制與結構差異

Morpho 與 Aave 的主要差異在於借貸機制:Aave 採用流動性池模型,而 Morpho 則在此基礎上引入點對點(P2P)撮合機制,使其能於相同市場中實現更優化的利率匹配。Aave 作為原生借貸協議,提供基礎流動性與穩定利率;而 Morpho 則屬於優化層,透過縮小存貸利差以提升資本效率。因此,兩者的本質區分在於「基礎設施」與「效率優化工具」。
2026-04-03 13:10:03
0x Protocol 的核心組成有哪些?Relayer、Mesh 及 API 架構詳解
新手

0x Protocol 的核心組成有哪些?Relayer、Mesh 及 API 架構詳解

0x Protocol 以 Relayer、Mesh 網路、0x API 和 Exchange Proxy 等核心元件,打造去中心化交易基礎設施。Relayer 負責鏈下訂單廣播,Mesh 網路用於訂單共享,0x API 提供統一流動性報價介面,Exchange Proxy 則負責鏈上交易執行與流動性路由。這些元件協同運作,實現鏈下訂單傳播與鏈上交易結算的架構,讓錢包、DEX 及 DeFi 應用可透過單一介面存取多元流動性來源。
2026-04-29 03:06:50
0x Protocol vs Uniswap:訂單簿協議與 AMM 模型有何不同?
中級

0x Protocol vs Uniswap:訂單簿協議與 AMM 模型有何不同?

0x Protocol 與 Uniswap 都是用於去中心化資產交易的協議,但兩者採用截然不同的交易機制。0x Protocol 主要以鏈下訂單簿與鏈上結算的架構為基礎,透過聚合多元流動性來源,為錢包與 DEX 提供交易基礎設施;而 Uniswap 則採用自動做市商(AMM)模型,利用流動性池完成鏈上資產兌換。兩者最大的差異在於流動性的組織方式。0x Protocol 更強調訂單聚合與交易路由效率,適合為各類應用提供底層流動性支持;Uniswap 則透過流動性池直接為用戶提供兌換服務,更適合作為鏈上交易執行平台。
2026-04-29 03:48:20