対称キー(AES)をAESキーでラップするコードがあります:
- swkKey : ラッピングに使用される AES キーです。
- key : ラップされるキー。
コード:
SecretKey swkKeySpec = new SecretKeySpec(swkKey, 0, swkKey.length, "AES");
Cipher cipher = Cipher.getInstance("AES/GCM/NoPadding", "BC");
final int ivLength = 12;
final IvParameterSpec iv = createIV(ivLength);///Creates a new array.
cipher.init(Cipher.WRAP_MODE, swkKeySpec, iv);
SecretKey sKeySpec = new SecretKeySpec(key, 0, key.length, "AES");
byte[] wrappedAppKey = cipher.wrap(sKeySpec);`
key が 256 ビットで、swkkey が 256 ビットの場合、wrappedAppKey の長さはどれくらいになりますか。ラップされたキーは 32 バイトを超えることができますか? この場合、次のログを取得していることに注意してください。
key length: 32(key to be wrapped)
swkKey length: 32(key used to wrap)
wrappedAppKey size: 48(final wrapped key output).