0

秘密 AES キーを共有する必要があるアプリがあります。(それらは包まれています)。サーバーはキーを JWK 形式で送受信します。

現時点では、Android では次のように AES KEY を生成できます。

public SecretKey  generate() throws NoSuchProviderException, NoSuchAlgorithmException, InvalidAlgorithmParameterException {
        KeyGenerator keyGenerator  = KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore");
        KeyGenParameterSpec keyGenParameter = new KeyGenParameterSpec.Builder("MyKeyAlias", KeyProperties.PURPOSE_ENCRYPT | KeyProperties.PURPOSE_DECRYPT)
              .setBlockModes(KeyProperties.BLOCK_MODE_GCM)
              .setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_NONE)
              .build();
        keyGenerator.init(keyGenParameter);
        return keyGenerator.generateKey();

    }

SecretKey を JWK 形式に変換する簡単な方法はありますか? およびその逆

そうでない場合は、SecretKeyクラス のgetEncoded()メソッドを見ました。対称暗号化キーをエクスポートするには?

たぶん、変換を行うために独自のクラスを作成する必要があります

ありがとう

4

1 に答える 1