我正在尝试实现gost 28147-89算法来加密和解密字符串。

在bouncycastle文档中,我不了解如何实现gost28147。如何制作一个简单的类,使用gost 28147-89算法对字符串进行加密和解密?

最佳答案

引用GOST28147Test.java(基本上是有弹性的城堡人提供的示例类,用于该加密方案):

key = new SecretKeySpec(keyBytes, "GOST28147");

in = Cipher.getInstance("GOST28147/ECB/NoPadding", "BC");
out = Cipher.getInstance("GOST28147/ECB/NoPadding", "BC");
out.init(Cipher.ENCRYPT_MODE, key);
in.init(Cipher.DECRYPT_MODE, key);

//
// encryption pass
//
bOut = new ByteArrayOutputStream();

cOut = new CipherOutputStream(bOut, out);

for (int i = 0; i != input.length / 2; i++)
{
    cOut.write(input[i]);
}


等等 ...

10-04 11:59