package demo.utils;
import java.util.Random;
import org.apache.commons.codec.digest.DigestUtils;
/**
* <p>Title: MD5SignUtil</p>
* <p>Description: </p>
* @author jiahui
* @date 2020年3月16日
*/
public class MD5SignUtil {
/**
* 获取随机长度传
* @param length
* @return
* @throws Exception
*/
public static String getMd5Key(int length){
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
StringBuffer sb = new StringBuffer();
try {
Random random = new Random();
for (int i = 0; i < length; ++i) {
sb.append(str.charAt(random.nextInt(52)));
}
}catch(Exception e) {
System.out.println("生成秘钥异常");
}
return sb.toString();
}
/**
* @param text明文
* @param key密钥
* @return 密文
*/
// 带秘钥加密
public static String signKey(String text, String key) throws Exception {
// 加密后的字符串
String md5str="";
try {
md5str = DigestUtils.md5Hex(text + key);
System.out.println("MD5加密后的字符串为:" + md5str);
}catch(Exception e) {
System.out.println("加密异常");
}
return md5str;
}
// 不带秘钥加密
public static String signNullKey(String text) throws Exception {
// 加密后的字符串
String md5str = DigestUtils.md5Hex(text);
System.out.println("MD52加密后的字符串为:" + md5str + "\t长度:" + md5str.length());
return md5str;
}
/**
* MD5验证方法
*
* @param text明文
* @param key密钥
* @param md5密文
*/
// 根据传入的密钥进行验证
public static boolean verify(String text, String key, String sign) {
try {
System.out.println("商户签名"+sign);
String md5str = signKey(text, key);
System.out.println("系统签名"+md5str);
if (md5str.equalsIgnoreCase(sign)) {
return true;
}
}catch(Exception e) {
System.out.println("验签异常");
return false;
}
return false;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
小惠分账接入文档.zip
共88个文件
sample:11个
xml:11个
class:4个
需积分: 5 0 下载量 166 浏览量
2022-02-11
18:35:09
上传
评论
收藏 143KB ZIP 举报
温馨提示
小惠分账接入文档.zip
资源详情
资源评论
资源推荐
收起资源包目录
小惠分账接入文档.zip (88个子文件)
小惠分账接入文档
小惠分账接入api.docx 63KB
demo
HttpJunit.iml 681B
pom.xml 1KB
target
test-classes
APItest.class 3KB
generated-test-sources
test-annotations
m2e-wtp
web-resources
META-INF
maven
com.yaorongda
HttpJunit
pom.xml 1KB
pom.properties 205B
demo
demo
pom.xml 1KB
pom.properties 191B
MANIFEST.MF 107B
classes
demo
controller
OrderDemoController.class 2KB
utils
HttpPostUtil.class 2KB
MD5SignUtil.class 2KB
generated-sources
annotations
.git
index 756B
hooks
fsmonitor-watchman.sample 3KB
pre-push.sample 1KB
prepare-commit-msg.sample 1KB
applypatch-msg.sample 478B
pre-commit.sample 2KB
pre-receive.sample 544B
pre-applypatch.sample 424B
commit-msg.sample 896B
pre-rebase.sample 5KB
update.sample 4KB
post-update.sample 189B
config 303B
description 73B
refs
tags
heads
master 41B
remotes
origin
master 41B
logs
refs
heads
master 355B
remotes
origin
master 290B
HEAD 355B
objects
91
9019a77f3f04b2c131a0320bb18f4a9719eaec 332B
0b
50191a2881b4a473c48f828cbbc74782684105 3KB
98
792dc74a100b16deaeffc88acb8809e6221661 2KB
43
463e46a8f8747b63127e4af15ffaa151d1484d 4KB
1f
fa7d5225a2f4790c82840562cbc9d9e45d284f 285B
e1
d52bf774bfefb5621aee87a2a92e1bcf9e55a9 1KB
d0
00bcfe3676728ee9a984be669b72c877504f2b 96B
a3
24a9f90200bd4efe12da524a7df3728dc40456 58B
9a
8b1c004d9aab9ad0575ed17a2448717d2f108d 1014B
3e
754ff8c722021d6831f236beac28f45da8de66 305B
cd
059516160547fea911e9118a9e8c5dd32c22e9 57B
61
96739111dbe167df8e5e7645586c676876664c 149B
d6
a07451383c7355bd4600420a50fe116aa6b281 62B
b2
6911bd02d86bf83ab8041f7c51d786129a80ed 148B
info
8c
1b8010839967d8c1d0cfe356756b7543cb51eb 170B
148a5e64818adc6a9eca2424e5614ae0a96a8f 148B
79
0738e65510334e841f56ed449eeea1c91dd870 2KB
53
60ac35d8d2b4d98dae887925acb3cb4b46221b 46B
95
27f19f46bf839234f37db6f8d831699b0f8c96 46B
f3
92a31a40c6a0275828723028daa223bd76dd01 74B
b7
993d9770217fd5dfd8b2bf107db01bfbd00503 193B
pack
f7
119635c7a8662194d19b1e34f4a185371e207b 57B
cb
cabdc053d583415a430b69410dbea5506c3904 62B
c6
d7fb4382c0ed2eb0be79b0c85dae0f34711bea 78B
62
464d59cf2a39c8dbc60aee98d974dfb1fcc961 148B
38
e6bd5f77419039f37e9b6436f91ab84c761504 78B
5a
5d95aa932c32f53c9443bf5de3297ddf6e076b 96B
52
cbf526a96c614dc2a2dd06c92eebe015de2b25 1KB
83
327fd9fa252812e35dd02c814f95e23cd08ebd 1KB
94
a25f7f4cb416c083d265558da75d457237d671 155B
b4
3f16c1c788c8320c05f49cfba31f354c279696 75B
info
exclude 240B
COMMIT_EDITMSG 30B
HEAD 23B
.settings
org.eclipse.m2e.core.prefs 90B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.project.facet.core.xml 252B
org.eclipse.core.resources.prefs 88B
org.eclipse.wst.common.component 577B
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.validation.prefs 50B
.jsdtscope 639B
org.eclipse.jdt.core.prefs 430B
src
main
webapp
java
demo
controller
OrderDemoController.java.bak 2KB
OrderDemoController.java 2KB
utils
MD5SignUtil.java 2KB
HttpPostUtil.java 2KB
.idea
misc.xml 656B
vcs.xml 239B
modules.xml 265B
encodings.xml 436B
compiler.xml 542B
workspace.xml 28KB
libraries
fastjson_1_2_6.xml 222B
.project 1KB
.classpath 1KB
.gitignore 9B
共 88 条
- 1
m0_66969130
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 推流时加入当前时间水印
- zookeeper之节点基本操作(一).doc
- SSM3J321T-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- skywalking K8S集群下安装
- 后端开发框架 MyBatis四大核心对象之ParameterHandler.pdf
- vue3和ant-design 实现前端多种验证密码规则,最全的前端验证密码规则
- SSM3J317T-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- 高速光耦ICPL-075L规格书
- Java项目-基于Springboot+Vue的人职匹配推荐系统的设计与实现(源码+万字LW+部署视频+代码讲解视频+全套软件)
- 有限元大作业包含代码以及最后的报告
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0