답변:
궁극적으로, .keystore
그리고 .jks
단지 파일 확장자 있습니다 : 그것은 현명 파일의 이름을 당신에게 달려 있습니다. 일부 응용 프로그램은 $HOME/.keystore
다음에 저장된 키 저장소 파일을 사용합니다 . JKS는 Sun / Oracle Java 보안 공급자의 기본 키 저장소 유형 이므로 일반적으로 JKS 파일임을 암시합니다 . .jks
기본적으로 암시되어 있기 때문에 모든 사람 이 JKS 파일 의 확장자를 사용하는 것은 아닙니다 . (필요한 경우) 지정할 유형을 기억하기 위해 확장 프로그램을 사용하는 것이 좋습니다.
Java에서 키 저장소라는 단어는 컨텍스트에 따라 다음 의미 중 하나를 가질 수 있습니다.
파일과 스토리지에 관해 이야기 할 때, 이것은 실제로 키 / 값 쌍을위한 스토리지 기능이 아닙니다 (이에 대한 많은 또는 다른 형식이 있습니다). 오히려 암호 키와 인증서를 저장하는 컨테이너입니다 (일부 암호도 저장할 수 있다고 생각합니다). 일반적으로 이러한 파일은이 데이터를 무단으로 사용할 수 없도록 암호화 및 암호로 보호됩니다.
Java는 KeyStore
클래스 및 관련 API를 사용하여 키 저장소를 사용합니다 ( 파일 기반이든 아니든 ). JKS
Java 특정 파일 형식이지만 API는 다른 파일 형식 (일반적으로 PKCS # 12)과 함께 사용할 수도 있습니다. 키 저장소를로드하려면 키 저장소 유형을 지정해야합니다. 일반적인 확장은 다음과 같습니다.
.jks
유형의 "JKS"
경우.p12
또는 .pfx
유형 "PKCS12"
(사양 이름은 PKCS # 12이지만 #
Java 키 저장소 유형 이름에는 사용되지 않음)입니다.또한 BouncyCastle은 구현, 특히 Android 애플리케이션에 자주 사용되는 BKS (일반적으로 .bks
확장명 사용) 도 제공 합니다.
당신은 이것에 혼란스러워합니다.
A keystore
는 인증서, 개인 키 등의 컨테이너입니다.
이 키 스토어의 형식이 무엇인지에 대한 스펙이 있으며 주요한 것은 # PKCS12입니다.
JKS는 Java의 키 저장소 구현입니다. BKS 등도 있습니다
이것들은 모두 키 스토어 타입 입니다.
따라서 귀하의 질문에 대답하십시오 :
.keystore 파일과 .jks 파일의 차이점
없습니다. JKS는 키 저장소 파일입니다. 키 스토어 유형 에는 차이가 있습니다 . 예 : JKS
대#PKCS12
.pfx
또는 .p12
) 매우 일반적 입니다.