工具类之appSecret、timeStamp、nonce三个参数进行字典排序后SHA1加密,得到signature。

本文介绍了一个用于生成签名的工具类,该工具通过字典排序和SHA1加密算法处理输入的App Secret、时间戳和随机数,以创建一个安全的签名。文章提供了具体的实现代码和使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先摆上工具类。

 public class SortAndEncryptUtils {
    public static String sortAndEncrypt(String appSecret, String timestamp, String nonce) {
        ArrayList<String> list = new ArrayList<String>();
        list.add(appSecret);
        list.add(timestamp);
        list.add(nonce);
        Collections.sort(list);
        return DigestUtils.shaHex(list.get(0) + list.get(1) + list.get(2));
    }
} 






再提供上DigestUtils的jar包:免费下载通道

摆上一段用法 :
String appSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";  //appSecret
String timestamp = String.valueOf(System.currentTimeMillis() / 1000); //获取系统时间的10位时间戳
String nonce = ""; //随机数
//得到一个三位的随机数
for (int i = 0; i < 3; i++) { nonce += String.valueOf((int) (Math.random() * 10)); }
//得到字典排序并且SHA1加密后的signature。
String signature = SortAndEncryptUtils.sortAndEncrypt(appSecret, timestamp, nonce); 




如有问题请多指正,您的指正使我更正确的前行.




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值