ホームページ  >  記事  >  Java  >  Java でファイルから RSA 公開キーをロードするにはどうすればよいですか?

Java でファイルから RSA 公開キーをロードするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-01 04:11:28506ブラウズ

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。