【发布时间】:2009-01-14 14:33:19
【问题描述】:
我一直在尝试理解适用于 Java 的 BouncyCastle 加密 API。不幸的是,我发现 Java 密码学通常被服务提供者接口和行话所掩盖,以至于我无法理解任何事情的实际作用。我已经尝试反复阅读必要的文档,但它仍然难以理解,引入了许多远远超出我认为应该需要的概念。
我真正想要的是一个执行以下操作的类:
public class KeyPair {
public byte[] public;
public byte[] private;
}
public class RSACrypto {
public static KeyPair generateRSAKeyPair() { /*implementation*/}
public static byte[] encrypt(byte[] data, byte[] publicKey) { /*impl*/}
public static byte[] decrypt(byte[] encryptedData, byte[] privateKey) { /*impl*/ }
}
抱歉,如果这是一个非常复杂的问题,可以作为“我真正想要的”提出。非常欢迎任何关于在哪里阅读 Java 密码学和 BouncyCastle 的指针。任何关于 Java 加密系统实际布局的概述都非常受欢迎。
【问题讨论】:
-
注意:您在上面的 API 中转置了密钥。公钥用于加密,私钥用于解密。
-
啊。我应该知道这么多。
标签: java cryptography rsa bouncycastle jce