How to generate a symmetric key with Bouncy Castle?

最后都变了- 提交于 2019-12-07 07:41:23

问题


How can I generate a symmetric key with Bouncy Castle? Both PrivateKeyFactory and PublicKeyFactory seem related to AsymmetricKeyParameter.

I don't want to know any JCA/JCE API - instead I'm only interested in Bouncy Castle specific API.

Can (should) I just generate a random bytes?


回答1:


AES does not have any weak keys, so a straightforward random generation should be fine.

// SecureRandom is expensive to initialize (takes several milliseconds) –
// consider keeping the instance around if you are generating many keys.
SecureRandom random = new SecureRandom();
byte[] keyBytes = new byte[16];
random.nextBytes(keyBytes);
SecretKeySpec key = new SecretKeySpec(keyBytes, "AES");


来源:https://stackoverflow.com/questions/17800117/how-to-generate-a-symmetric-key-with-bouncy-castle

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!