- 浏览: 800536 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (480)
- Spring (12)
- Hibernate (8)
- Struts2 (4)
- Java 基础-JDK-类-接口-URI-专题研究 (27)
- 线程、线程池、多线程高并发高可用、Socket通信 (15)
- Oracle数据库 (20)
- 一般-前端js-html-其它 (25)
- JYSK-互联网金融、金融科技、支付、公司、新闻等等 (8)
- Ajax-jQuery开源框架 (7)
- Json-轻量级的数据交换格式 (14)
- JavaScript (15)
- Jsp、Servlet、Servlet+JSP+JavaBean开发模式(MVC) (18)
- Html-JavaScript-前端-调用接口 (12)
- Sql Server 2005 (6)
- 正则表达式 (2)
- Java tools (18)
- 加签与验签、加密与解密 (3)
- Ajax技术核心-xmlHttpRequest(简称XHR) (6)
- xml-数据交换格式 (3)
- 信息采集 (1)
- Http - Https - HttpClient - httpCore-SSL-TLS (10)
- HtmlParser (2)
- 标签库 (1)
- SMS (2)
- jxl-导入导出 (4)
- poi-导入导出 (2)
- 定时器Timer+Quartz (6)
- 工作流引擎JBPM3.2.3 (4)
- 工作流引擎JBPM4 (0)
- 数据源-JNDI (0)
- tomcat、weblogic等应用服务器 (6)
- 工作流引擎jbpm5 (1)
- 搜索引擎Lucene (1)
- ant (1)
- 大数据-HBase (2)
- bigtable (0)
- 数据库设计 (4)
- jquery tab (0)
- mybatis (5)
- jquery ui 1.10.3 (5)
- Jboss7 (1)
- 规则引擎drools (0)
- 工作流引擎Activiti5 (0)
- 数据库-用户自定义函数 (0)
- 数据库-存储过程 (2)
- 数据库-视图 (0)
- 数据库-触发器 (0)
- 数据库-sql (2)
- highcharts-图表工具 (1)
- sql server 2008 (6)
- 诗词-工作室 (2)
- 数据割接 (1)
- GIS-地理信息系统 (2)
- RS-遥感技术 (1)
- GPS-全球定位系统 (1)
- java整合flex_RIA开发 (3)
- C#编程语言 (5)
- webservice_axis2_cxf_soap_wsdl (2)
- sql语句 (3)
- Flex_WebService_GIS (25)
- PHP编程语言 (0)
- ExtJS4.2 (1)
- Spring mvc (5)
- EasyUI1.4.2 (16)
- 日期时间工具类 (4)
- 随机数 (1)
- Arcgis api for js (0)
- Mysql数据库 (9)
- 移动互联网 java html5/flash socket netty (0)
- API接口 (1)
- AndroidStudio (0)
- Git (2)
- Maven (5)
- IDEA (0)
- 大数据-Hadoop (2)
- JPA (0)
- Spring boot (4)
- JSF (0)
- nginx_lua_module_redis (2)
- Activiti (1)
- bootstrap (1)
- AngularJS (10)
- 数据库-索引 (1)
- Linux及其连接工具SSH (4)
- java日志管理 (2)
- islider滑动控件 (1)
- jquery (1)
- 异常处理Exception (1)
- 秒杀与类秒杀系统 (1)
- 连接数据库、数据库连接池 (4)
- 数据库-临时表 (1)
- 软件设计模式-单例、多例、代理、工厂、观察者 (3)
- 集合框架 (5)
- 人工智能--Artificial intelligence、神经网络算法、机器学习 (1)
- 分布式应用 (1)
- SOA服务-Dubbo框架-Thrift框架 (2)
- Zookeeper分布式服务框架 (2)
- intellij idea (1)
- python编程语言 (0)
- 消息队列_MQ (0)
- 消息队列_RabbitMQ (2)
- 消息队列_ActiveMQ (1)
- 消息队列_Kafka (2)
- 缓存_Redis (4)
- 缓存_Memcache (0)
- 缓存_Ehcache (0)
- ivy-ivyde (1)
- google-protocol buffers (1)
- 正向代理-正向代理服务器 (1)
- 反向代理-反向代理服务器 (1)
- JVM内存模型 (0)
- Thunder框架 (1)
- NIO-非阻塞式IO (0)
- 软件测试、性能测试 (1)
- 序列化、Serializable接口、Externalizable接口 (3)
- 线程池-ExecutorService-ThreadPoolExecutor (1)
- web.xml (1)
- java开发-java工具-实用工具网站 (6)
- 医疗 (1)
- Filter-过滤器 (2)
- Unicode码-双字节字符编码 (1)
- OpenResty (1)
- 计算机网络 (1)
- eclipse_myeclipse_intellij idea (3)
- Enum (1)
- 大数据--Big Data (1)
- 云计算--Cloud computing (1)
- Elastic-Job (1)
- Redis (2)
- 文件流-IO操作 (6)
- 计算机基础知识 (1)
- Hessian-二进制RPC协议 (1)
- String类 (3)
- BigDecimal类 (1)
- java重要接口 (1)
- ReactJS (1)
- 跨域问题 (0)
- Map (1)
- 注解 (1)
- ASCII码-单字节字符编码 (1)
- 微服务、微服务架构 (2)
- RPC协议、RPC服务、RPC框架 (0)
- java反射 (1)
- java项目之classpath (1)
- 经典算法-树 (1)
- listener-监听器 (1)
- Interceptor-拦截器 (1)
- pojo javabean (2)
- 计算机科学与技术-进阶 (1)
- 代码规范与文档编写 (1)
- UML-统一建模语言 (1)
- 对接微信、支付宝 (3)
- 压力测试 (1)
- 办公软件-Excel (1)
- 办公软件-PPT (0)
- UTF8、GBK编码 (1)
- 微服务架构:Spring Cloud架构-Dubbo架构 (6)
- Nginx (1)
- 点滴业务 (1)
- form表单-json数据-转换与接口调用 (1)
- Junit单元测试 (1)
- 大数据-Spark (1)
- 大数据-Storm (1)
- 数据库事务-Spring事务 (0)
- elasticsearch (1)
- windows (1)
最新评论
参考博客:
--SHA-1算法、SHA-2算法
https://www.sohu.com/a/192953382_604699
--SSH 密钥类型的的选择(RSA, DSA or Other)
http://blog.sina.com.cn/s/blog_6f31085901015agu.html
--DSA和RSA的区别
http://blog.sina.com.cn/s/blog_60cf05130101ew6r.html
--RSA、DSA和ECDSA三者的签名
https://blog.csdn.net/sszgg2006/article/details/25478269
----一张图了解RSA加解密与加验签
http://blog.csdn.net/zhshulin/article/details/71573542
图:
----Java RSA 加密 解密 签名 验签
http://gaofulai1988.iteye.com/blog/2262802
----使用RSA、MD5对参数生成签名与验签
http://blog.csdn.net/mr_smile2014/article/details/52130029
--java加签与解签
https://blog.csdn.net/john2522/article/details/53365358
--MD5加密
--Java 编程下字符串的 16 位、32位 MD5 加密
为什么MD5不可以解密?
https://zhidao.baidu.com/question/579202465.html
--SHA-1算法、SHA-2算法
https://www.sohu.com/a/192953382_604699
--SSH 密钥类型的的选择(RSA, DSA or Other)
http://blog.sina.com.cn/s/blog_6f31085901015agu.html
--DSA和RSA的区别
http://blog.sina.com.cn/s/blog_60cf05130101ew6r.html
--RSA、DSA和ECDSA三者的签名
https://blog.csdn.net/sszgg2006/article/details/25478269
----一张图了解RSA加解密与加验签
http://blog.csdn.net/zhshulin/article/details/71573542
图:
----Java RSA 加密 解密 签名 验签
http://gaofulai1988.iteye.com/blog/2262802
----使用RSA、MD5对参数生成签名与验签
http://blog.csdn.net/mr_smile2014/article/details/52130029
--java加签与解签
https://blog.csdn.net/john2522/article/details/53365358
--MD5加密
public class CommonMd5Utils { private static final Logger logger = LoggerFactory.getLogger(CommonMd5Utils.class); private static final String HEXADECIMAL_NUMBER_ARRAY[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; /** * MD5加密方法 * @param sourceStr 待加密串 * @param charsetname 字符编码如"UTF-8" * @param lengthType 32位或者16位 * @return */ public static String encrypt(String sourceStr, String charsetname, String lengthType) { if(null==sourceStr){ throw new BusinessException("fail", "待加密字段不能为NULL"); } if(!(CommonConstants.STRING_16.equals(lengthType)||CommonConstants.STRING_32.equals(lengthType))){ throw new BusinessException("fail", "加密设置的生成长度不合法"); } String resultString = ""; try { resultString = new String(sourceStr); MessageDigest md = MessageDigest.getInstance("MD5"); if (charsetname == null || "".equals(charsetname)){ resultString = byteArrayToHexStringMethod(md.digest(resultString.getBytes())); }else{ resultString = byteArrayToHexStringMethod(md.digest(resultString.getBytes(charsetname))); } } catch (Exception e) { logger.info("MD5加密异常"); e.printStackTrace(); } logger.info("resultString="+resultString); if(StringUtils.isNotBlank(resultString)){ if("16".equals(lengthType)){ resultString=resultString.substring(8, 24); } return resultString; } return ""; } /** * 字节数组转十六进制字符串 * @param b * @return */ private static String byteArrayToHexStringMethod(byte byteArray[]) { StringBuffer stringBuffer = new StringBuffer(); for (int i = 0; i < byteArray.length; i++){ stringBuffer.append(byteToHexStringMethod(byteArray[i])); } return stringBuffer.toString(); } /** * 字节转十六进制字符串 * @param b * @return */ private static String byteToHexStringMethod(byte byteVar) { int n = byteVar; if (n < 0){ n += 256; } int d1 = n / 16; int d2 = n % 16; return HEXADECIMAL_NUMBER_ARRAY[d1] + HEXADECIMAL_NUMBER_ARRAY[d2]; } }
--Java 编程下字符串的 16 位、32位 MD5 加密
https://www.cnblogs.com/sunzn/p/3455135.html
为什么MD5不可以解密?
https://zhidao.baidu.com/question/579202465.html
MD5加密原理是散列算法,散列算法也称哈希算法。 计算机专业学的数据结构就有哈希表这一知识点。 比如10除以3余数为一,4除以3余数也为一,但余数为一的就不知道这个数是哪个了。 所以md5不能解密。 就算是设计这个加密算法的人都不知道。 但是你的密码是怎么验证的呢? 就是因为同一密码加密后一定相同。 你输入密码加密后才能知道你的密码是否正确。 也就是说,你的密码只有你自己知道。 也是为什么扣扣密码只能重置,不能找回的原因。 over
相关推荐
临商银行接口对接,加密解密加签验签整合,方便调用 临商银行接口对接,加密解密加签验签整合,方便调用 临商银行接口对接,加密解密加签验签整合,方便调用 临商银行接口对接,加密解密加签验签整合,方便调用 临商...
* RSA数字签名-俗称加签验签:私钥加签,公钥验签。 * RSA加密解密:私钥解密,公钥加密。 * RSA数字签名-俗称加签验签:私钥加签,公钥验签。 * RSA加密解密:私钥解密,公钥加密。 * RSA数字签名-俗称加...
3,验证签名目前使用的UTF8格式,加签和验签必须保持统一,私钥加密,公钥解密。 4,静态库分release版本和debug版本 5,注意VC6.0中编译的使用的环境 MDd 还是MD 工程环境和静态库环境一直 6,本工程使用的库为:...
java(sm2公私钥生成、加签、验签、加密、解密)demo案列
SM2算法可以生成密钥和公钥,支持SM2的签名和验签;AES加密解密,支持各种常用的堆成非对称的加密算法的加密解密和验签
本示例"加签加密解密验签demo"旨在演示如何实现这一过程,通常涉及对称加密、非对称加密和数字签名等技术。 首先,我们来看“加签”。这里的“加签”指的是数字签名,它是公钥密码学的一种应用。数字签名并非传统的...
RSA加密解密签名加签验签RsaUtils工具类 RSA算法基于大数因子分解难题,提供了公钥加密和私钥解密的能力。公钥用于加密,私钥则负责解密。这种特性使得RSA成为保证数据传输安全的理想选择。 公钥加密私钥解密与...
在Spring框架中,我们经常需要处理加密解密和签名验证的问题,以确保数据传输的安全性和完整性。RSA与SHA-256结合使用可以提供更高级别的安全保护。RSA用于非对称加密,而SHA-256用于生成消息摘要,进行数字签名。 ...
6. 压缩包中的`signature`文件可能包含的是一个示例程序,演示了如何在Java中使用RSA进行签名、验签、加密和解密。这个程序可能会包括以下关键部分: - 导入必要的安全库 - 创建并初始化`KeyPairGenerator` - ...
本文将详细讲解RSA算法的加签、加密、解密以及验签的过程,结合Java语言来实现这一系列操作,并涉及到证书的使用。 首先,我们需要理解RSA算法的基本原理。RSA算法基于两个大素数的乘积难以分解这一数学难题,生成...
C# RSA加密、解密、加签、验签、支持JAVA格式公钥私钥、PEM格式公钥私钥、.NET格式公钥私钥 对应文章: http://blog.csdn.net/gzy11/article/details/54573973
java aes128/256 对称加密解密,rsa对称加密解密验签实现,php java通用aes加密 支持任何形式的aes加密,文件,字符,字节等,内含php代码,可以与php平台实现aes加密,而且包含rsa非对称加密签名验签实现,都是对...
RSA为最常用的一种非对称方式的算法,这次封装的Utils类完成了公钥加密、私钥解密、私钥加签、公钥验签四种常用方法。
在C#中实现RSA加密解密和签名验签,我们可以利用.NET框架提供的System.Security.Cryptography命名空间中的相关类。 1. RSA加密原理: RSA基于数论中的大数因子分解难题,即给定一个大合数N,找到它的两个素数因子p...
国密SM2_SM3加密解密,加签验签操作C#源码,网络上很难找的资源,实现了密SM2_SM3加密解密,加签验签操作,.NET版
RSA加密解密验签工具类
SM2 SM4 后端加密解密资源
国密SM2_SM3加密解密,加签验签操作C#源码 复刻Java 完整有效
总结一下,C#中处理RSA密钥文件,如pfx和cer,以及进行签名、验签、加密和解密,主要依赖于`System.Security.Cryptography`命名空间。此外,为了实现C#和Java之间的公钥私钥互转,我们需要理解不同的密钥表示形式并...
### Python3 加密解密库Crypto的RSA加解密与签名/验签实现方法实例 #### 一、引言 本篇文章重点介绍如何利用Python3中的`Crypto`库实现RSA算法的加密解密以及签名与验签功能。通过具体代码示例帮助读者理解并掌握...