PKCS8 형식 변환을 사용하여 파일에서 RSA 개인 키를 로드하는 방법
RSA를 사용하여 XML 문서에 서명하려고 하면 오류가 발생할 수 있습니다. PKCS8 형식이 아닌 개인 키입니다. 이 문제를 해결하려면 다음 단계를 따르십시오.
openssl pkcs8 -topk8 -inform PEM -outform DER -in private_key_file -nocrypt > pkcs8_key
Java에서 PKCS8 키 로드:
a. PKCS8로 인코딩된 개인 키를 보관할 byte[]를 만듭니다.
<code class="java">byte[] pkcs8Key = Files.readAllBytes(Path.of("PKCS8_key"));</code>
b. RSA용 KeyFactory를 인스턴스화합니다.
<code class="java">KeyFactory keyFactory = KeyFactory.getInstance("RSA");</code>
c. PKCS8로 인코딩된 키 데이터에서 개인 키를 생성합니다.
<code class="java">PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(pkcs8Key); RSAPrivateKey privateKey = (RSAPrivateKey) keyFactory.generatePrivate(keySpec);</code>
다음 단계를 수행하면 RSA 개인 키를 PKCS8 형식으로 성공적으로 로드하고 이를 사용하여 XML에 서명할 수 있습니다. 문서. 개인 키를 변환하는 데 사용되는 명령은 OpenSSL 버전 1.0.2 이상에서만 사용할 수 있습니다.
위 내용은 PKCS8 형식의 파일에서 RSA 개인 키를 로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!