公鑰密碼學標準

由李萨阿資訊安全公司設計和發布的一組公鑰加密標準

公鑰加密標準(Public Key Cryptography Standards, PKCS),此一標準的設計與發佈皆由RSA資訊安全公司英語RSA Security所制定。

RSA資訊安全公司旗下的RSA實驗室為了發揚公開金鑰技術的使用,便發展了一系列的公開金鑰密碼編譯標準。只不過,雖然該標準具有相當大的象徵性,也被資訊界的產業所認同;但是,若RSA公司認為有必要,這些標準的內容仍然可能會更動。所幸,這些變動並不大;此外,這幾年RSA公司也與其他組織(比較知名的有IETFPKIX)將標準的制定透過standards track程序來達成。

清單

PKCS標準彙總
版本 名稱 簡介
PKCS #1英語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英語PKCS_7 1.5 密碼訊息語法標準(Cryptographic Message Syntax Standard) 參見RFC 2315。規範了以公開金鑰基礎設施(PKI)所產生之簽章/密文之格式。其目的一樣是為了拓展數位證書的應用。其中,包含了S/MIMECMS英語Cryptographic Message Syntax。主要用來存儲簽名或者加密後的數據,如證書或者CRL。PKCS7可以用二進制的DER格式存儲,也可以使用PEM格式存儲。Windows中PKCS7通常使用.p7b文件擴展名。
PKCS #8英語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英語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 擬亂數產生器英語Pseudorandom number generator標準(Pseudo-random Number Generation) 制定中。規範擬亂數產生器的使用與設計。
PKCS #15 1.1 密碼裝置訊息格式標準(Cryptographic Token Information Format Standard) 定義了密碼設備內部數據的組織結構。

參見

參考資料

  1. ^ 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]頁面存檔備份,存於網際網路檔案館

外部連結