{{위키데이터 속성 추적}}
'''공개 키 암호 표준'''(Public-Key Cryptography Standard, '''PKCS''')은 [[RSA 시큐리티]]에서 정한, [[공개 키 암호]]에 대한 사용 방식에 대한 표준 프로토콜이다.

{| class="wikitable"
|+ '''PKCS 표준 목록'''
! 약어 !! 버전 !! 이름 !! 설명
|- 
! PKCS #1
|align="center" | 2.1 || [[RSA 암호]] 표준(RSA Cryptography Standard) || RFC 3447에 기술되어 있다. RSA의 공개 키와 비밀 키(ASN.1으로 인코딩됨)에 대한 수학적 성질과 규격에 대해 정의하고 있으며, 또한 RSA 암호화와 복호화, 서명 검증을 구현하는 데에 필요한 알고리즘과 인코딩/패딩 등의 규격을 정의한다.
|-
! PKCS #2
|align="center" | - || (철회됨) || 현재는 사용하지 않는다. 메시지 다이제스트를 RSA 암호화하는 부분을 다루고 있었으며, 해당 내용은 PKCS #1으로 합쳐졌다.
|-
! PKCS #3
|align="center" | 1.4 || [[디피-헬만 키 교환]] 표준(Diffie-Hellman Key-Agreement Standard) || 디피-헬만 키 교환 방법을 이용한 통신에 대해 정의한다.
|-
! PKCS #4
|align="center" | - || (철회됨) || 현재는 사용하지 않는다. RSA 키를 표현하는 규격을 다루고 있었으며, PKCS #1으로 합쳐졌다.
|-
! PKCS #5
|align="center" | 2.0 || 비밀번호 기반 암호화 표준(Password-based Encryption Standard) || 비밀번호에 기반한 암호 시스템을 구현할 때 고려해야 할 점을 설명한다. RFC 2898에 기술되어 있다.
|-
! PKCS #6
|align="center" | 1.5 || 인증서 확장 문법 표준(Extended-Certificate Syntax Standard) || [[X.509]] 인증서 규격의 v1을 확장했다. 현재는 X.509 v3가 있어 사용되지 않는다.
|-
! PKCS #7
|align="center" | 1.5 || 암호 메시지 문법 표준(Cryptographic Message Syntax Standard) || RFC 2315에 기술되었다. 암호화한 데이터를 표현하는 방식에 대한 표준이다.
|-
! PKCS #8
|align="center" | 1.2 || 개인키 정보 문법 표준(Private-Key Information Syntax Standard) || RFC 5208에 기술되었다. 공개키 암호에서 사용되는 비밀키 값에 대한 문법을 정의한다.
|-
! PKCS #9
|align="center" | 2.0 || Selected Attribute Types || 다른 PKCS에서 사용하는 속성값들에 대하여 정의한다.
|-
! PKCS #10
|align="center" | 1.7 || 인증서 요청 표준(Certification Request Standard) || RFC 2986에 기술되었다. [[인증 기관]]에 인증서를 요청할 때 사용하는 프로토콜을 정의한다.
|-
! PKCS #11
|align="center" | 2.20 || 암호 토큰 인터페이스(Cryptographic Token Interface)<ref>{{웹 인용
    | title = PKCS #9: Selected Attribute Types
    | url = http://www.rsa.com/rsalabs/node.asp?id=2131
    | publisher = RSA Laboratories
    | 확인날짜 = 2012-06-18
    | 보존url = https://web.archive.org/web/20120515095852/http://www.rsa.com/rsalabs/node.asp?id=2131
    | 보존날짜 = 2012-05-15
    | url-status = dead
    }}</ref> || Cryptoki라고도 부른다. 암호 토큰([[Hardware Security Module]] 참고)에 대한 범용 인터페이스를 정의하는 [[API]]이다. 주로 [[Single Sign-On]], [[공개 키 암호 방식]], [[디스크 암호화]]<ref>[http://www.freeotfe.org/docs/Main/pkcs11_support.htm Security Token/Smartcard Support] in [[FreeOTFE]]</ref> 시스템에 사용한다.
|-
! PKCS #12
|align="center" | 1.0 || 공개 키 인증서 교환 문법 표준(Personal Information exchange syntax standard)|| 비밀번호로 보호된, 대칭키와 공개 키 인증서에 동봉된 개인 키들을 저장하는 데 일반적으로 사용되는 파일 형식을 정의한다. .pfx는 pkcs #12 파일형식 확장자이다.
이 파일 형식은 여러 개의 개체(예: 다중 인증서, 다중 키)를 포함할 수 있으며 보통, 비밀번호로 보호되거나 암호화된,. java 키 저장소의 형식으로 사용된다.
|-
! PKCS #13
|align="center" | – || [[타원 곡선 암호]] 표준(Elliptic Curve Cryptography Standard) || (버려진 것으로 보인다)
|-
! PKCS #14
|align="center" | – || [[유사난수 생성기]](Pseudo-random Number Generation) || (버려진 것으로 보인다. 관련 문서가 존재하지 않음)
|-
! PKCS #15
|align="center" | 1.1 || 암호 토큰 정보 형식 표준(Cryptographic Token Information Format Standard) || 응용프로그램의 암호토큰인터페이스(#11)이나 다른 API와 무관하게, 암호 토큰의 사용자가 응용프로그램에서 자신을 식별할 수 있는 표준을 정의한다.
RSA는 이 표준의 IC카드 관련된 부분을 ISO/IEC 7816-15에 넣기를 포기했다.
|}

<references/>

== 외부 링크 ==
* [https://web.archive.org/web/20061209135809/http://www.rsasecurity.com/rsalabs/node.asp?id=2124 RSA 시큐리티 - PKCS 표준] {{언어링크|en}}

[[분류:공개 키 암호]]
[[분류:암호 표준]]