[TOC]
本文主要是实现AES
算法的Java
版本和Javascript
版本,并提供测试例子。
AES是一个对称分组密码算法,旨在取代DES成为广泛使用的标准。根据使用的密码长度,AES最常见的有3种方案,用以适应不同的场景要求,分别是AES-128、AES-192和AES-256。
Java中的PKCS5Padding和Javascript中的PKCS7Padding的结果是一样。
Java 版 AES 工具类
1 | package top.ylonline.common.util; |
Java 版 AES 工具类测试
1 | package top.ylonline.common.util; |
JS 版 AES 工具类
要引入的 js 文件,地址:https://github.com/brix/crypto-js1
2
3
4
5<script th:src="@{/crypto-js/core.js}"></script>
<script th:src="@{/crypto-js/enc-base64.js}"></script>
<script th:src="@{/crypto-js/cipher-core.js}"></script>
<script th:src="@{/crypto-js/aes.js}"></script>
<script th:src="@{/crypto-js/mode-ecb.js}"></script>
JS 版 AES 工具类扩展
1 | function getRandom(len) { |
JS 版 AES 工具类测试
1 | var key = getRandom(); |