Java의 Cacerts와 키 저장소

MD Aminul Islam 2024년2월15일
Java의 Cacerts와 키 저장소

이 튜토리얼에서는 cacertsKeyStore를 비교하고 차이점을 강조합니다.

Java의 cacertsKeyStore

cacerts는 동료를 인증하는 데 사용되는 TrustStore이고 KeyStore는 자신을 인증하는 데 사용됩니다.

KeystoreTrustStore는 주로 SSL/TLS를 통해 통신해야 하는 애플리케이션에 사용됩니다. 이러한 파일은 암호로 보호되어 있습니다.

Keystore의 기본 형식은 Java 9PKS12입니다. 그러나 또 다른 기본 형식인 JKSJava 8까지 사용됩니다. 따라서 아래에서 KeyStoreTrustStore에 대해 개별적으로 논의해 보겠습니다.

자바의 ‘키스토어’

KeyStore는 주로 암호화 목적으로 사용되는 개인 항목, 공개 키 및 인증서의 저장소입니다. KeyStore는 프로그램이 서버 역할을 하고 HTTPS를 사용하려고 할 때 프로그램에서 사용됩니다.

SSL에 의한 핸드쉐이킹 동안 서버 프로그램은 KeyStore에서 개인 키를 찾습니다. KeyStore는 클라이언트 프로그램에서도 사용됩니다.

클라이언트 프로그램이 서버에 연결을 시도할 때 자체 인증이 필요합니다. 인증하는 동안 클라이언트 프로그램은 KeyStore에서 공개 키와 인증서도 찾습니다.

집합적으로 KeyStore는 필요한 모든 보안 파일을 보관하는 장소라고 말할 수 있습니다.

Java의 ‘TrustStore’

TrustStoreKeyStore의 반대입니다. KeyStore는 우리를 식별하기 위해 파일을 보유하는 반면 TrustStore는 다른 사람을 식별하기 위해 파일을 보유합니다.

Java에는 cacerts라는 묶음 TrustStore가 포함되어 있으며 $JAVA_HOME/jre/lib/security 디렉토리에 있습니다.

KeystoreTrustStore(cacerts) 데모

아래에서 KeystoreTrustStore에 대한 예제 명령을 공유했습니다. 명령은 아래와 같습니다.

keytool -list -keystore cacerts

이제 위의 명령을 실행하면 다음과 같은 결과가 표시됩니다.

java의 cacerts와 키 저장소 비교 - 출력

위에서 공유한 명령은 주로 Java에 중점을 둡니다.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

관련 문장 - Java Keystore