使用 RSA 算法加密(输入大小)

  • 本文关键字:RSA 算法 加密 使用 java
  • 更新时间 :
  • 英文 :


>我需要加密一个文件(4kb(,但是当我尝试使用RSA加密它时,它显示错误:

大小不得大于 256 字节。

是否有机会使用RSA算法加密大型数据?

如果我没记错的话,您需要每 256 个字节单独加密并将它们分组到一个数组中。

在 Java 中,您可以执行以下操作:

private List<byte[]> encryptFile(String filename) throws IOException, IllegalBlockSizeException, BadPaddingException, NoSuchAlgorithmException, NoSuchPaddingException {
byte[] bytesFromFile = new byte[256];
List<byte[]> listToReturn = new ArrayList();
FileInputStream fis = new  FileInputStream(new File(filename));
while(fis.read(bytesFromFile) > 0) {
// insert cipher of your choice
listToReturn.add(Cipher.getInstance("").doFinal(bytesFromFile));
}
return listToReturn;
}

最新更新