下面Java的AES加密,用c#怎么实现?要一样的结果哦

public static String encrypt(String content, String sKey) {
SecretKey secretKey = null;
KeyGenerator kgen = KeyGenerator.getInstance("AES");
SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");
secureRandom.setSeed(sKey.getBytes());
kgen.init(128, secureRandom);
secretKey = kgen.generateKey();
byte[] enCodeFormat = secretKey.getEncoded();
SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES");
Cipher cipher = Cipher.getInstance("AES");
byte[] byteContent = content.getBytes("utf-8");
cipher.init(Cipher.ENCRYPT_MODE, key);
byte[] result = cipher.doFinal(byteContent);
return ByteUtil.parseByte2HexStr(result);
}

http://blog.csdn.net/asxinyu_usst/article/details/4924207
求采纳追问

怎样实现不是重点,

重点是要各上面的JAVA加密输出一样的结果,java传进去的key经过一大堆处理的。
某彩票的接口是用java写的,我们是用c#来调用,这样就出现了aes加密结果不一致的问题

追答

对java不太懂,不好意思,不过重点应该在这一句 SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答