1.AES-128-ECB表示使用AES(Advanced Encryption Standard)算法,密钥长度为128位,工作模式为ECB(Electronic Codebook)的一种对称加密方式。
其中:
- AES是一种常用的对称加密算法,被广泛地应用于各种信息安全场景中。
- 128表示密钥长度为128位(16字节)。AES支持的密钥长度还有192位和256位。
- ECB代表电子密码本(Electronic Codebook)模式,是最基本的一种工作模式,将明文分成固定大小的块,每个块独立地进行加密。ECB模式存在明文块重复可导致密文块重复的风险。
综上,AES-128-ECB意思是:
使用128位密钥的AES算法,以ECB电子密码本模式来对明文进行分组加密。
它提供了基本的加密保护,但相比其他模式如CBC,CFB等,ECB模式在许多场景下安全性较弱,应谨慎使用。
2.MD5接口加密通常指在接口请求中使用MD5算法对请求参数进行加密,以保证参数不被篡改的一种简单安全机制。
具体做法是:
1. 接口请求方和服务端双方约定一个密钥,例如"123456"。
2. 当请求方需要请求某个接口时,将所有请求参数按照约定的顺序拼接成字符串,例如"a=1&b=2"。
3. 对这个参数字符串以及密钥一起做MD5哈希运算,得到一个32位长度的MD5值,例如"e10adc3949ba59abbe56e057f20f883e"。
4. 在接口请求中将这个MD5值作为参数传给服务端。
5. 服务端收到请求后,使用同样的密钥和方法计算MD5值,与请求附带的MD5值比较。
6. 如果一致,则证明参数没有被篡改,然后继续处理请求。
这样通过MD5摘要验证,可以防止参数在传输中被非法修改。但MD5仅能防篡改,不能防止披露,所以需要与HTTPS等其他加密传输手段配合使用。
下面请看示例
这个是接口文档说明
签名方式:
- 将所有参数(注意是所有参数),除去sign本身,按参数名字母ASCII升序排序;
- 将所有参数按照key=value的方式凭借起来;
- 将秘钥和第2步的字符串拼接起来;
- 将这个字符串MD5加密(32位小写)得到sign,
- sign作为参数传递过来
使用
文件目录
我这个是引入的md5.js 的文件 下面是代码内容 可以自己复制
/*
* JavaScript MD5 1.0.1
* https://github.com/blueimp/JavaScript-MD5
*
* Copyright 2011, Sebastian Tschan
* https://blueimp.net
*
* Licensed under the MIT license:
* http://www.opensource.org/licenses/MIT
*
* Based on
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
* Digest Algorithm, as defined in RFC 1321.
* Version 2.2 Copyright (C) Paul Johnston 1999 - 2009
* Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
* Distributed under the BSD License
* See http://pajhome.org.uk/crypt/md5 for more info.
*/
/*jslint bitwise: true */
/*global unescape, define */
/*
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
* to work around bugs in some JS interpreters.
*/
function safe_add(x, y) {
var lsw = (x & 0xFFFF) + (y & 0xFFFF),
msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return (msw << 16) | (lsw & 0xFFFF);
}
/*
* Bitwise rotate a 32-bit number to the left.
*/
function bit_rol(num, cnt) {
return (num << cnt) | (num >>> (32 - cnt));
}
/*
* These functions implement the four basic operations the algorithm uses.
*/
function md5_cmn(q, a, b, x, s, t) {
return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),