第一步 更新pubspec.yaml

  1. crypto: ^2.1.+

第二步 先引入头文件:

  1. import 'dart:convert';
  2. import 'package:convert/convert.dart';
  3. import 'package:crypto/crypto.dart';

直接上代码:

  1. String getSign(Map parameter) {
  2. var Key = '密钥';
  3. var timestamp = new DateTime.now().millisecondsSinceEpoch;
  4. var versionNumber = 'app-v1';
  5. parameter['timestamp'] = timestamp.toString();
  6. parameter['versionNumber'] = versionNumber;
  7. /// 存储所有key
  8. List<String> allKeys = [];
  9. parameter.forEach((key,value){
  10. allKeys.add(key + value);
  11. });
  12. /// key排序
  13. allKeys.sort((obj1,obj2){
  14. return obj1.compareTo(obj2);
  15. });
  16. // /// 存储所有键值对
  17. // List<String> pairs = [];
  18. // /// 添加键值对
  19. // allKeys.forEach((key){
  20. // pairs.add("$key${parameter[key]}");
  21. // });
  22. /// 数组转string
  23. String pairsString = allKeys.join("");
  24. /// 拼接 ABC 是你的秘钥
  25. String sign = Key + pairsString + Key;
  26. /// hash
  27. String signString = generateMd5(sign).toUpperCase();
  28. //String signString = md5.convert(utf8.encode(sign)).toString().toUpperCase(); //直接写也可以
  29. return signString;
  30. }
  31. /// md5加密
  32. String generateMd5(String data) {
  33. var content = new Utf8Encoder().convert(data);
  34. var digest = md5.convert(content);
  35. // 这里其实就是 digest.toString()
  36. return hex.encode(digest.bytes);
  37. }

调用:

  1. var formData = {'adCode': ''};
  2. formData['sign'] = getSign(formData);

非常感谢大神的帮忙。

Flutter 接口签名MD5加密的更多相关文章

  1. 小程序签名MD5加密

    最近小程序需求一个签名加密,要把请求参数按键值排序并转化为字符串,然后进行MD5加密. //时间戳 var timestamp = (Date.parse(new Date()))/1000;//签名 ...

  2. Jmeter 接口测试之MD5加密函数(函数助手篇)

    转自:https://blog.csdn.net/hhyangel372/article/details/81571058 本文给大家介绍一下如何使用Jmeter自带的函数对常量和变量进行简单的加密处 ...

  3. md5加密、Des加密对称可逆加密、RSA非对称可逆加密、https单边验证、银行U盾双边认证

    1.md5不可逆的加密方式,加密成一个32位的字符串.算法是公开的,任何语言的加密结果都是一样的.总有可能是重复的.     用途:             (1)防止明文存储:可以用作密码加密    ...

  4. js进行MD5加密(含中文),与后台JAVA加密之后结果不同(解决)

    开发小程序过程中与后台进行接口沟通,前期接口经过MD5加密和AES加密之后,后台进行解密. 今天出现一种情况,我前台加密之后的md5串与后台加密不同,后台发现可能是带用中文的原因, 这是加密之前的串: ...

  5. 【接口安全】接口合法性验证加密验签SIGN 签名规则

    在对接API接口时,接口地址和参数结构都很容易被黑客抓包,从而模拟发送请求. 考虑到安全性,防止别人冒名调用,要对接口请求进行合法性验证. 基本原理如下 双方约定 APPID:参与签名和网络传输 AP ...

  6. 使用robotframework做接口测试4——搞定接口签名及密码加密

    接口签名是我做接口测试撞到的第一块石头,刚到新公司,本来想默默憋出来一个大招,然后碰到了签名接口,直接给跪了.于是只好找开发哥哥帮忙,把签名算法的java文件拿到,一行行对着用python实现了一遍. ...

  7. soupUI解决md5加密签名,cookie传递

    问题详情: 1.接口调用需要前提状态:登录状态(cookie) 2.接口请求需要签名,签名规则为:MD5(TokenKey+apikey+timestamp+nonc) 其中 1.TokenKey.a ...

  8. md5只是用来签名,签名的作用是保证数据完整不会被破坏而已。签名和加密是两回事

    md5只是用来签名,签名的作用是保证数据完整不会被破坏而已,多一个sign标签,sign的值就是md5生成的字符串.签名和加密是两回事

  9. python接口自动化测试二十七:密码MD5加密 ''' MD5加密 ''' # 由于MD5模块在python3中被移除 # 在python3中使用hashlib模块进行md5操作 import hashlib # 待加密信息 str = 'asdas89799,.//plrmf' # 创建md5对象 hl = hashlib.md5() # Tips # 此处必须声明encode # 若写法为

    python接口自动化测试二十七:密码MD5加密   ''' MD5加密 '''# 由于MD5模块在python3中被移除# 在python3中使用hashlib模块进行md5操作import has ...

随机推荐

  1. centos6.5 安装emqtt

    emqtt有监控界面,集群配置也非常简单. # yum -y update # yum install unzip vim wget xsltproc fop tk unixODBC unixODBC ...

  2. mysql基础篇--表的管理

    表的创建 常见的数据类型 数值型: 整型 tinyint.smallint.mediumint.int/integer.bigint 特点: 1.如果不设置无符号还是有符号,默认是有符号,如果想设置无 ...

  3. sql server 游标的知识

    一:认识游标   游标是SQL Server的一种数据访问机制,它允许用户访问单独的数据行.用户可以对每一行进行单独的处理,从而降低系统开销和潜在的阻隔情况,用户也可以使用这些数据生成的SQL代码并立 ...

  4. mysql日期相减取小时

    mysql日期相减取小时 TIMESTAMPDIFF(HOUR,a.StartTime,a.EndTime)

  5. InputStreamReader 和 FileReader联系与区别

    两者关系: FileReader继承自InputStreamReader : 区别: InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字 ...

  6. Oracle 11.2 静默安装脚本

    Oracle 11.2 静默安装脚本 cat db_init.sh.20190401 #!/bin/bash####安装Oracle所需依赖包function install_yum(){  yum ...

  7. fixed 失效

    1. 父元素设置 transform 属性后, 会导致 position: fixed 失效. 2. 设置以下属性也会影响 fixed 属性. -webkit-perspective: 1000; - ...

  8. 3-自定义构造方法和description方法

    http://www.cnblogs.com/mjios/archive/2013/04/19/3031412.html -自定义构造方法和description方法 1 默认的构造方法是什么?有什么 ...

  9. java单例问题

    之前看资料,有人根据对象的创建时间将单例的实现分为懒汉式和饿汉式: 懒汉式: public class Singleton { private volatile static Singleton in ...

  10. zabbix监控windows案例

    首先在zabbix官网下载zabbix软件包:https://www.zabbix.com/ 下载完成之后,将其解压到D盘 # 配置与安装,配置zabbix agent相关配置. 找到conf下的配置 ...