1

id_rsa と id_rsa.pub を使用して、Java でアプリケーション用のチャレンジ/レスポンス ログイン システムを作成したいと考えています。この目的のために、 id_rsa と id_rsa.pub から andPublicKeyを構築できるようにしたいと考えています。PrivateKey

直接的なアプローチは、通常テキスト ファイルを解析する方法でこれらを解析し、クライアントとサーバーで署名および検証するための適切な java.security データ構造を手動で構築することです。

これらのファイルを直接取り込む標準ライブラリのショートカットはありますか?

4

2 に答える 2

0

私が知っている最も簡単で最も簡単な方法は、弾む城の軍団Java API を次のようなもので使用することです-

// Just for the public / private key files...
private static String readFileAsString(
    String filePath) throws java.io.IOException {

  StringBuilder sb = new StringBuilder(100);
  BufferedReader reader = null;
  try {
    reader = new BufferedReader(new FileReader(
        filePath));
    int fileIn;
    while ((fileIn = reader.read()) != -1) {
      sb.append((char) fileIn);
    }
  } finally {
    reader.close();
  }
  return sb.toString();
}

// Add the SecurityProvider and a Base64 Decoder (Once)
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
BASE64Decoder b64 = new BASE64Decoder();

// For the publicKey
String publicKeyString = readFileAsString(publicKeyFileName);
AsymmetricKeyParameter publicKey =
  (AsymmetricKeyParameter) PublicKeyFactory.createKey(b64.decodeBuffer(publicKeyString));

// For the privateKey
String privateKeyString = readFileAsString(privateKeyFilename);
AsymmetricKeyParameter privateKey =
  (AsymmetricKeyParameter) PrivateKeyFactory.createKey(b64.decodeBuffer(privateKeyString));
于 2013-12-10T14:33:11.247 に答える