🔑

RSA 金鑰對產生器

RSA 金鑰對產生器工具

位數:
🔑公鑰
🔒私鑰

什麼是 RSA 金鑰對產生器

RSA金鑰對產生器基於大數分解的數學難題,透過選擇兩個大質數p和q,計算模數n=p×q和歐拉函數φ(n)=(p-1)(q-1),然後選擇公鑰指數e和私鑰指數d,使得e×d≡1(mod φ(n))。RSA金鑰對包括公鑰(n,e)和私鑰(n,d),公鑰用於加密和驗證數位簽章,私鑰用於解密和產生數位簽章。金鑰長度通常為1024、2048或4096位元,更長的金鑰提供更高的安全性。

功能特点

🚀

產生可配置位長度的 RSA 金鑰對(256-16384 位)

生成具有可自定義位元長度的RSA金鑰對

公鑰和私鑰的標準 PEM 格式輸出

以標準PEM格式輸出金鑰,方便整合
🎯

使用 節點-forge 庫進行安全的金鑰產生

使用業界標準的 節點-forge 函式庫進行密碼學安全的金鑰生成
🔒

位長度要求的即時驗證

即時驗證位元長度要求,提供錯誤提示
🎯

應用場景

🌐

SSL/TLS憑證產生

為SSL/TLS憑證產生RSA金鑰對,保護網站通訊安全。標準憑證使用2048位金鑰,擴展驗證(EV)憑證使用3072-4096位金鑰。對於HTTPS加密、保護使用者資料和建立瀏覽器與使用者的信任至關重要。
🔐

SSH金鑰認證

建立RSA金鑰對用於無密碼SSH伺服器認證。產生公鑰新增到伺服器的authorized_keys,實現無需密碼的安全遠端存取。廣泛用於開發者、系統管理員和DevOps團隊的安全伺服器管理。
✍️

程式碼簽章和軟體分發

產生RSA金鑰對用於程式碼簽章,驗證軟體真實性和完整性。簽章可執行檔案、安裝程式和軟體套件,防止篡改和惡意軟體分發。Windows Authenticode、macOS Gatekeeper和Linux軟體套件簽章都需要。
📝

數位簽章和文件驗證

建立RSA金鑰對用於法律文件、合約和交易的數位簽章。使用私鑰簽章文件,使用公鑰驗證簽章,確保不可否認性和文件完整性。用於電子簽章平台、區塊鏈交易和法律合規。
🔑

API認證和JWT令牌

產生RSA金鑰對用於API認證和JWT令牌簽章。使用私鑰簽章令牌,使用公鑰驗證令牌,實現安全的無狀態認證。對於微服務、OAuth 2.0和現代API安全架構至關重要。
📧

電子郵件加密(PGP/GPG)

建立RSA金鑰對用於PGP/GPG電子郵件加密和安全訊息傳遞。使用收件人的公鑰加密郵件,使用私鑰解密,確保機密通訊。記者、企業和注重隱私的個人用於安全電子郵件通訊。
🛡️

VPN和網路安全

產生RSA金鑰對用於VPN連線、安全隧道和網路加密。建立安全的虛擬私人網路,保護傳輸中的資料,實現安全遠端存取。用於企業網路、雲端服務和安全通訊協定。
⛓️

區塊鏈和加密貨幣錢包

建立RSA金鑰對用於加密貨幣錢包和區塊鏈應用。保護錢包私鑰、簽署區塊鏈交易並驗證交易真實性。用於加密貨幣交易所、錢包應用和基於區塊鏈的身分系統。

📋使用指南

1️⃣
配置參數
選擇金鑰長度(推薦2048位)
2️⃣
產生金鑰
點擊產生按鈕建立金鑰對
3️⃣
複製使用
複製公鑰和私鑰到您的應用

📚技術介紹

🔬RSA金鑰對生成演算法和數學

RSA金鑰生成基於質數分解難度創建數學相關的公私密金鑰對。過程包括:使用概率素性測試(Miller-Rabin演算法)選擇兩個大隨機質數(p,q),計算模數n = p × q和歐拉函數φ(n) = (p-1)(q-1),選擇公開指數e(通常為65537以提高效率和安全性),並使用擴展歐幾里得演算法計算滿足e × d ≡ 1 (mod φ(n))的私密金鑰指數d。該工具支援512到4096位的金鑰大小(推薦生產環境使用2048+),實現安全隨機質數生成,透過加密-解密往返測試驗證金鑰對正確性,並以多種格式(PEM、DER、PKCS#1、PKCS#8)匯出金鑰以相容各種密碼學函式庫和系統。

⚙️金鑰格式標準和編碼

該工具生成符合PKCS標準的行業標準格式的金鑰。PEM(隱私增強郵件)格式使用Base64編碼和頁眉/頁腳標記進行人類可讀的文字表示。DER(區分編碼規則)提供用於緊湊儲存和傳輸的二進位格式。PKCS#1(RSA密碼學標準)定義RSA金鑰結構,而PKCS#8(私密金鑰資訊語法標準)提供與格式無關的私密金鑰表示。生成器支援金鑰元件的ASN.1編碼,包括用於演算法識別的適當OID(物件識別符)標籤,並處理從私密金鑰提取公開金鑰。進階功能包括金鑰元件檢查(模數、指數、質數)、PEM/DER之間的格式轉換以及OpenSSL、Java密碼學架構和.NET密碼學函式庫的相容性驗證。

💡安全最佳實踐和金鑰管理

安全的RSA金鑰管理需要適當的生成、儲存和使用實踐。該工具提供安全建議:使用密碼學安全的隨機源生成金鑰,使用最小2048位金鑰以確保當前安全(長期保護使用3072-4096位),使用強密碼短語和安全儲存(HSM、金鑰保管庫)保護私密金鑰,並實施適當的金鑰輪換策略。安全警告包括金鑰大小影響(1024位金鑰不再安全)、隨機數生成的熵要求以及防止側通道攻擊。進階功能包括密碼短語保護的私密金鑰匯出、用於驗證的金鑰指紋生成(MD5、SHA-256)、安全金鑰銷毀指導以及生產環境中憑證簽章請求(CSR)、SSL/TLS憑證、SSH認證和程式碼簽章的整合建議。

Frequently Asked Questions

產生的金鑰對可以用於什麼場景?

RSA金鑰對廣泛應用於:1)HTTPS/SSL憑證:保護網站通訊安全;2)SSH金鑰認證:無密碼登入伺服器;3)程式碼簽章:驗證軟體來源和完整性;4)電子郵件加密:PGP/GPG加密通訊;5)API認證:JWT令牌簽章;6)數位簽章:文件和交易的法律效力證明;7)VPN連線:建立安全的虛擬私人網路。
💬

產生金鑰需要多長時間?

產生時間取決於金鑰長度和裝置效能。通常:2048位約1-3秒,3072位約3-8秒,4096位約5-15秒,8192位可能需要30秒以上。首次產生可能較慢,因為需要收集隨機熵。如果長時間無回應,建議重新整理頁面重試。
🔍

PEM格式和DER格式有什麼區別?

PEM(Privacy Enhanced Mail)是文字格式,使用Base64編碼,以-----開始 RSA 私人 金鑰-----開頭,便於複製貼上和在文字編輯器中檢視。DER(Distinguished Encoding 規則)是二進位格式,檔案更小但不可直接閱讀,常用於Java和某些憑證系統。大多數情況下推薦使用PEM格式。
💡

如何驗證產生的金鑰對是否有效?

工具會自動驗證產生的金鑰對。您也可以手動驗證:1)使用OpenSSL命令驗證格式:`openssl rsa -in 私人.pem -文字 -noout`;2)測試加密解密:用公鑰加密一段文字,再用私鑰解密,看是否能恢復原文;3)檢查金鑰長度:確認金鑰模數的位數符合預期。
📚

公鑰可以從私鑰匯出嗎?

可以。RSA私鑰包含了產生公鑰所需的所有資訊(模數n和公鑰指數e)。您可以使用OpenSSL命令從私鑰提取公鑰:`openssl rsa -in 私人.pem -pubout -out 公開.pem`。但反過來不行,公鑰無法推導出私鑰,這正是RSA安全性的基礎。
🎯

如何安全地儲存私鑰?

最佳實踐:1)使用密碼短語加密私鑰(如`openssl rsa -aes256`);2)儲存在安全位置:金鑰管理器(如1Password、LastPass)、硬體安全模組(HSM)、加密磁碟分割區;3)設定嚴格的檔案權限(Linux: chmod 600);4)不要提交到Git儲存庫;5)定期備份到離線儲存;6)使用多重身分驗證保護存取。

💡How To & Tips

1️⃣

選擇合適的金鑰長度

2048位適合日常使用,3072-4096位用於高安全場景。避免使用1024位或更短的金鑰。
2️⃣

產生並驗證金鑰對

點擊產生按鈕建立金鑰對,檢視公鑰和私鑰是否正確產生。工具會自動驗證金鑰對的有效性。
3️⃣

安全儲存私鑰

複製私鑰後立即儲存到安全位置(如金鑰管理器、加密檔案),不要以明文形式儲存或透過不安全管道傳輸。
4️⃣

分發公鑰

公鑰可以自由分享,複製後可以傳送給需要向您傳送加密資料的人或用於SSL憑證、SSH認證等。
⚠️

本機產生,隱私安全

所有金鑰產生完全在您的瀏覽器本機完成,不會上傳到任何伺服器。產生後請及時儲存並清空頁面。
💡

定期更換金鑰

建議每1-2年更換一次金鑰對,或在懷疑私鑰洩露時立即更換。舊金鑰應安全銷毀。

🔗Related Documents

📖NIST - 加密標準-NIST官方加密標準和指南
🎓OWASP - 加密儲存-安全加密儲存最佳實踐
MDN - Web 加密 API-瀏覽器加密API用於安全操作
📚OWASP - 加密備忘單-正確實作加密的指南
💡RFC 5246 - TLS 協定-傳輸層安全協定規範

User Comments

0 / 2000
Loading...