公鑰密碼學標準
公鑰加密標準(Public Key Cryptography Standards, PKCS),此一標準的設計與發佈皆由RSA資訊安全公司所制定。
RSA資訊安全公司旗下的RSA實驗室為了發揚公開金鑰技術的使用,便發展了一系列的公開金鑰密碼編譯標準。只不過,雖然該標準具有相當大的象徵性,也被資訊界的產業所認同;但是,若RSA公司認為有必要,這些標準的內容仍然可能會更動。所幸,這些變動並不大;此外,這幾年RSA公司也與其他組織(比較知名的有IETF、PKIX)將標準的制定透過standards track程序來達成。
清單
PKCS標準彙總 | |||
---|---|---|---|
版本 | 名稱 | 簡介 | |
PKCS #1 | 2.1 | RSA密碼編譯標準(RSA Cryptography Standard) | 定義了RSA的數理基礎、公/私鑰格式,以及加/解密、簽/驗章的流程。1.5版本曾經遭到攻擊[1]。 |
PKCS #2 | - | 棄用 | 原本是用以規範RSA加密摘要的轉換方式,現已被納入PKCS#1之中。 |
PKCS #3 | 1.4 | DH金鑰協議標準(Diffie-Hellman key agreement Standard) | 規範以DH金鑰協議為基礎的金鑰協議標準。其功能,可以讓兩方透過金議協議,擬定一把會議金鑰(Session key)。 |
PKCS #4 | - | 棄用 | 原本用以規範轉換RSA金鑰的流程。已被納入PKCS#1之中。 |
PKCS #5 | 2.0 | 密碼基植加密標準(Password-based Encryption Standard) | 參見RFC 2898與PBKDF2。 |
PKCS #6 | 1.5 | 證書擴展語法標準(Extended-Certificate Syntax Standard) | 將原本X.509的證書格式標準加以擴充。 |
PKCS #7 | 1.5 | 密碼訊息語法標準(Cryptographic Message Syntax Standard) | 參見RFC 2315。規範了以公開金鑰基礎設施(PKI)所產生之簽章/密文之格式。其目的一樣是為了拓展數位證書的應用。其中,包含了S/MIME與CMS。主要用來存儲簽名或者加密後的數據,如證書或者CRL。PKCS7可以用二進制的DER格式存儲,也可以使用PEM格式存儲。Windows中PKCS7通常使用.p7b文件擴展名。 |
PKCS #8 | 1.2 | 私鑰訊息表示標準(Private-Key Information Syntax Standard). | Apache讀取證書私鑰的標準。主要用來存儲私鑰。私鑰首先會使用PKCS #5的標準進行加密,然後Base64編碼,轉換成為PEM格式存儲。 |
PKCS #9 | 2.0 | 選擇屬性格式(Selected Attribute Types) | 定義PKCS#6、7、8、10的選擇屬性格式。 |
PKCS #10 | 1.7 | 證書申請標準(Certification Request Standard) | 參見RFC 2986。規範了向證書中心申請證書之CSR(certificate signing request)的格式。 |
PKCS #11 | 2.20 | 密碼裝置標準介面(Cryptographic Token Interface (Cryptoki)) | 定義了密碼裝置的應用程式介面(API)之規格。 |
PKCS #12 | 1.0 | 個人訊息交換標準(Personal Information Exchange Syntax Standard) | 定義了包含私鑰與公鑰證書(public key certificate)的文件格式。私鑰採密碼(password)保護。PKCS12文件的擴展名是.p12或者.pfx。PKCS12可以看做是PKCS7的擴展,PKCS12可以額外存儲私鑰。在PKCS12中可以存儲證書、私鑰、CRL。 |
PKCS #13 | – | 橢圓曲線密碼學標準(Elliptic curve cryptography Standard) | 制定中。規範以橢圓曲線密碼學為基礎所發展之密碼技術應用。橢圓曲線密碼學是新的密碼學技術,其強度與效率皆比現行以指數運算為基礎之密碼學演算法來的優秀。然而,該演算法的應用尚不普及。 |
PKCS #14 | – | 擬亂數產生器標準(Pseudo-random Number Generation) | 制定中。規範擬亂數產生器的使用與設計。 |
PKCS #15 | 1.1 | 密碼裝置訊息格式標準(Cryptographic Token Information Format Standard) | 定義了密碼設備內部數據的組織結構。 |
參見
參考資料
- ^ Jean-Sébastien Coron, Marc Joye, David Naccache, and Pascal Paillier, New Attacks on PKCS #1 v1.5 Encryption, EUROCRYPT 2000, pp. 69-381. [1] (頁面存檔備份,存於網際網路檔案館)