• MD5算法原理浅谈


    原理

     请求方对请求数据按一定的规则排序,加上appkey码一起通过MD5加密生成签名,然后把请求数据和签名发给服务方,服务方拿到数据后,去掉appid和无用的数据,通过appid找到请求方的appkey,然后按同样的规则处理数据,并加上appkey通过MD5加密也生成签名,然后和请求方生成的签名去对比,如果值一样,签名验证通过。

    需要的东西

    服务商一般会给你一个appid,appkey;同时这两个参数服务商也会保存,这两个形成了你的唯一标识。
    appid通过网络传输,而appkey是不在网络上进行传输的,只在生成签名时使用,所以安全性还是比较高的。

    MD5生成签名的流程

    1. 除去加密数组中的空值和签名参数
    2. 对数组排序
    3. 把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
    4. 加上appkey值,对形成的数据进行MD5加密,生成签名

    public static String getMD5(String s) {
            String result = "";
            try {
                MessageDigest messageDigest = MessageDigest.getInstance("MD5");
                result = byteArrayToHexString(messageDigest.digest(s.getBytes()));
    } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } return result; }
     
  • 相关阅读:
    腾信短信接口实例
    ajax
    jquery
    生命鸡汤
    sql中事物
    ajax,一般处理程序,登陆
    CSS选择器大全
    【JavaScript】轮播图
    【DOM练习】淘宝购物车
    【DOM练习】百度历史搜索栏
  • 原文地址:https://www.cnblogs.com/heyjia/p/11262021.html
Copyright © 2020-2023  润新知