>  기사  >  Java  >  Java의 파일에서 RSA 공개 키를 로드하는 방법은 무엇입니까?

Java의 파일에서 RSA 공개 키를 로드하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-01 04:11:28509검색

How to Load an RSA Public Key from a File in Java?

파일에서 RSA 공개 키 로드

이 기사에서는 Java의 파일에서 RSA 공개 키를 로드하는 방법에 대해 설명합니다. 이 시나리오는 OpenSSL을 사용하여 개인 키와 공개 키 쌍을 생성하고 이를 디지털 서명 및 확인 목적으로 Java에서 사용하려고 할 때 발생합니다.

개인 키 로드

개인 키를 변환할 수 있습니다. OpenSSL을 사용하여 PKCS8 형식으로 변환한 후 다음 코드를 사용하여 로드합니다.

<code class="java">import java.nio.file.*;
import java.security.*;
import java.security.spec.*;

public class PrivateKeyReader {

  public static PrivateKey get(String filename)
    throws Exception {

    byte[] keyBytes = Files.readAllBytes(Paths.get(filename));

    PKCS8EncodedKeySpec spec =
      new PKCS8EncodedKeySpec(keyBytes);
    KeyFactory kf = KeyFactory.getInstance("RSA");
    return kf.generatePrivate(spec);
  }
}</code>

공개 키 로드

공개 키를 로드하려면 X509 형식으로 변환해야 합니다. 코드 조각은 다음과 같습니다.

<code class="java">import java.nio.file.*;
import java.security.*;
import java.security.spec.*;

public class PublicKeyReader {

  public static PublicKey get(String filename)
    throws Exception {
    
    byte[] keyBytes = Files.readAllBytes(Paths.get(filename));

    X509EncodedKeySpec spec =
      new X509EncodedKeySpec(keyBytes);
    KeyFactory kf = KeyFactory.getInstance("RSA");
    return kf.generatePublic(spec);
  }
}</code>

이 단계를 따르면 파일에서 RSA 공개 키와 개인 키를 모두 성공적으로 로드하고 서명 및 확인 작업에 사용할 수 있습니다.

위 내용은 Java의 파일에서 RSA 공개 키를 로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.