当前位置: 首页 > 面试题库 >

是否有与本网站完全一样的AES加密示例Java代码?

罗烨霖
2023-03-14
问题内容

http://www.hanewin.net/encrypt/aes/aes-
test.htm

如果您访问此网站并输入以下内容:

"Key In Hex":        00000000000000000000000000123456

"Plain Text in Hex": 00000000000000000000000000000000

然后单击“加密”按钮,您将看到十六进制的密文为:

3fa9f2a6e4c2b440fb6f676076a8ba04

有没有可以执行此操作的Java程序(即,是否存在一个AES库,该库将输入上面的“ Key In Hex”和上面的“ Plain Text In
Hex”并生成上面的Heci密文)?

我将不胜感激任何建议或指向这样做的Java示例代码的链接。


问题答案:

有关使用JCE类执行此操作的标准方法,请参见下面的代码。

import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;

public class EncryptionExample {

  public static void main(String[] args) throws Exception {
    final String keyHex = "00000000000000000000000000123456";
    final String plaintextHex = "00000000000000000000000000000000";

    SecretKey key = new SecretKeySpec(DatatypeConverter
        .parseHexBinary(keyHex), "AES");

    Cipher cipher = Cipher.getInstance("AES/ECB/NoPadding");
    cipher.init(Cipher.ENCRYPT_MODE, key);

    byte[] result = cipher.doFinal(DatatypeConverter
        .parseHexBinary(plaintextHex));

    System.out.println(DatatypeConverter.printHexBinary(result));
  }
}

印刷品:

3FA9F2A6E4C2B440FB6F676076A8BA04



 类似资料:
  • 为什么PHP解密方法不能解密用Java加密的数据? 当我仅使用Java或仅在PHP中加密和解密数据时,一切工作都很好。 加密的数据被发送到服务器,在那里我尝试用PHP openssl_decrypt对其进行解密 不幸的是,openssl_decrypt返回一个空字符串。

  • 本文向大家介绍java实现的AES加密算法完整实例,包括了java实现的AES加密算法完整实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java实现的AES加密算法。分享给大家供大家参考,具体如下: PS:关于加密解密感兴趣的朋友还可以参考本站在线工具: 密码安全性在线检测: http://tools.jb51.net/password/my_password_safe 高强度密码生

  • 本文向大家介绍java基于AES对称加密算法实现的加密与解密功能示例,包括了java基于AES对称加密算法实现的加密与解密功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java基于AES对称加密算法实现的加密与解密功能。分享给大家供大家参考,具体如下: 注:SecureRandom是生成安全随机数序列,password.getBytes()是种子,只要种子相同,序列就一样,所以解

  • 本文向大家介绍PHP的AES加密算法完整实例,包括了PHP的AES加密算法完整实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP的AES加密算法。分享给大家供大家参考,具体如下: PS:关于加密解密感兴趣的朋友还可以参考本站在线工具: 密码安全性在线检测: http://tools.jb51.net/password/my_password_safe 高强度密码生成器: http:

  • 我之所以问这个问题,是因为两天来我读了很多关于crypto AES加密的帖子,就在我以为我得到了它的时候,我意识到我根本没有得到它。 这个帖子是最接近我的问题,我有完全相同的问题,但它没有得到回答: CryptoJS AES加密与JAVA AES解密值不匹配 我得到的是已经加密的字符串(我得到的代码只是为了看看他们是怎么做的),所以修改加密方式不是一个选项。这就是为什么所有类似的问题对我来说都不是

  • 问题内容: 我们遇到了一种奇怪的情况,尽管我们在Java中使用的加密方法在配置上看起来完全相同,但它们生成的输出却与openssl不同。 使用相同的键和IV,文本“快速的棕狐狸跳过了懒狗!” 加密为base64的字符串… openssl: Java: 这是我们的openssl电话… 这是我们的Java … oopenssl输出 Java输出 我们缺少明显的东西吗?还是存在一些隐藏的复杂性? 问题答