用Java进行AES加解密

本文最后更新于2018年8月17日,已超过 1 年没有更新,如果文章内容失效,还请反馈给我,谢谢!

=Start=

缘由:

整理记录一下用Java进行AES加解密的示例代码,方便以后快速检索和使用。

正文:

参考解答:

常规的AES加解密:

在多线程项目中使用ThreadLocal进行优化:

 

参考链接:

=END=

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/4070.html

《用Java进行AES加解密》上有7条评论

  1. 什么是 AES-GCM加密算法
    https://blog.csdn.net/T0mato_/article/details/53160772

    GCM (Galois/Counter Mode) 指的是该对称加密采用Counter模式,并带有GMAC消息认证码。

    What is the difference between CBC and GCM mode?
    https://crypto.stackexchange.com/questions/2310/what-is-the-difference-between-cbc-and-gcm-mode

    How to choose an AES encryption mode (CBC ECB CTR OCB CFB)?
    https://stackoverflow.com/questions/1220751/how-to-choose-an-aes-encryption-mode-cbc-ecb-ctr-ocb-cfb

    GCM与OCB (在性能和其它属性上)非常相似,但是GCM不受任何专利的限制,是最好的选择。唯一的缺点是实现非常复杂——但是如果使用库,就不必担心这个问题。

  2. Java中如何对字符串用0进行前导padding
    java string format padding with 0
    https://stackoverflow.com/questions/473282/how-can-i-pad-an-integer-with-zeros-on-the-left
    https://stackoverflow.com/questions/4469717/left-padding-a-string-with-zeros

    System.out.println(String.format("%05d", 111)); // 显示效果为 '00111' 即,长度为5,用0填充不足的部分
    System.out.println(String.format("%05d", 111111)); // 显示效果为 '111111' 即,超过的不管

  3. 一场由JDK8小版本引起的血案
    https://www.cnblogs.com/steve-jiang/p/11597160.html
    Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 8 Download
    https://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

    # tree $(/usr/libexec/java_home -V)/jre/lib/security
    ├── blacklist
    ├── blacklisted.certs
    ├── cacerts
    ├── java.policy
    ├── java.security
    ├── policy
    │   ├── limited
    │   │   ├── US_export_policy.jar
    │   │   └── local_policy.jar
    │   └── unlimited
    │   ├── US_export_policy.jar
    │   └── local_policy.jar
    └── trusted.libraries

发表评论

电子邮件地址不会被公开。 必填项已用*标注