第三方使用公钥.crt加密后返回的内容,需要使用私钥解密.pem 返回内容格式如下 MIME-Version: 1.0 Content-Disposition: attachment; filename="smime.p7m" Content-Type: application/pkcs7-mime; smime-type=enveloped-data; name="smime.p7m" Content-Transfer-Encoding: base64 MIICE…
# 原创,转载请留言联系 为什么会出现这么多加密啊,公钥私钥啊,签名啊这些东西呢?说到底还是保证双方通信的安全性与完整性.例如小明发一封表白邮件给小红,他总不希望给别人看见吧.而各种各样的技术就是为了保障通信的安全.(本文务必从上到下看) 1.对称加密与非对称加密 对称加密: 对称加密是最快速的一种加密方式.加密和解密用的是同样的密钥. 对称加密是怎么实现的呢?举个例子说明. 小明写了一封信给小红.他用箱子装着信,同时箱子上锁,他去快递店把这个箱子和开启箱子的钥匙一起快递给小红.小红收到箱子后,…
Bouncy Castle(轻量级密码术包)是一种用于 Java 平台的开放源码的轻量级密码术包,它支持大量的密码术算法,并提供 JCE 1.2.1 的实现.最近项目上正好用到了Bouncy Castle,用于生成数字签名.数字信封,去网上找了很久,都没有找到合适的案例,而Bouncy Castle本身的文档也不多,最有用的就是官网上的Java Doc文档,因为这个问题也困扰了我好几天,最后还是通过阅读Java Doc文档找到了合适的类和方法,果然阅读Doc文档还是很有必要的啊.好了,话不多说,…
大话https演化过程(包括概念:对称加密.非对称加密.公钥.私钥.数字签名.数字证书.https访问全过程)   在网络上发送数据是非常不安全的,非常容易被劫持或是被篡改,所以每次定向发送数据你都可以视为在广播,每次定向接收数据都可以视为在广收.而建立安全通道的难度和成本都很高,甚至安全性都不一定靠谱.   在这样的情境下,F需要向S发送一段只有S才能看的信息msg,它要如何做呢?   很容易想到一个最直接的方法:给这段信息加密,只有F和S有密钥(加密与解密采用相同的算法和密钥),这样F广播的…
非对称型加密非常适合多个客户端和服务器之间的秘密通讯,客户端使用同一个公钥将明文加密,而这个公钥不能逆向的解密,密文发送到服务器后有服务器端用私钥解密,这样就做到了明文的加密传送. 非对称型加密也有它先天的缺点,加密.解密速度慢制约了它的发挥,如果你有大量的文字需要加密传送,建议你通过非对称型加密来把对称型‘密钥’分发到客户端,及时更新对称型‘密钥’. package com.paul.module.common.util; import sun.misc.BASE64Decoder; impo…
Wiki - RSA加密演算法 Wiki - 欧拉函数 Wiki - 模反元素 ASN.1 格式标准 RSA算法原理(二) 注意: RSA 加密或签名后的结果是不可读的二进制,使用时经常会转为 BASE64 码再传输. RSA 加密时,对要加密数据的大小有限制,最大不大于密钥长度.例如在使用 1024 bit 的密钥时(genrsa -out rsa_private_key.pem 1024),最大可以加密 1024/8=128 Bytes 的数据.数据大于 128 Bytes 时,需要对数据进…
SSH是在应用层和传输层基础上的安全协议 SSH提供了两种级别的安全验证: 第一基于密码的安全验证:账号.密码,但可能有别的服务器冒充真正的服务器,无法避免被“中间人”攻击(man-in-the-middle) 第二基于密钥的安全验证:公钥.私钥 加密:将数据资料加密,使得非法用户即使截获到加密过的资料,也无法获取正确的内容,所以数据加密可以保护数据,它的重点在于数据的安全性 身份认证:是用来判断某个身份的真实性,其重点在于用户的真实性 现代密码体制中加密和解密采用不同的密钥(公钥和私钥),也就…
因为C#的RSA加密解密只有公钥加密,私钥解密,没有私钥加密,公钥解密.在网上查了很久也没有很好的实现.BouncyCastle的文档少之又少.很多人可能会说,C#也是可以的,通过Biginteger开源类来实现,不过那个是有一个文章,不过他加密出来的是16进制结果的.根本不能和JAVA互通.连加密出来的都不和C#原生的加密出来的结果格式一样.所以还是没有好的解决方法. 接下来还是不断的找资料,找方法.找朋友找同事.个个都找.问题是有的,方法也是有的,所以总结各路大神之后写了这个类.实现了私钥加…
首先呢,由于我的域名之前处理点问题,然后备案第二个网站时候,第一个网站没法访问,所以备案没过,阿里云告诉我要删除一个网站的备案,但是他没告诉我要删除主体,所以我的备案主体成了空壳主体,要传真或者发快递到郑州市金水区民航路8号河南省通信管理局一楼网站备案中心,或者等它自动注销.好气,所以我转腾讯云了,博客就重新写吧. 这个事情是有一次在hutools的issues去有人提出了一个sm2加密问题,那个问题的原因是对于某些需要接入硬件加密机和软加密的公钥可能不太一样,大概就是公钥der编码问题,然后某…
非对称的特点是加密和解密时使用的是不同的钥匙.密钥分为公钥和私钥,用公钥加密的数据只能用私钥进行解密,反之亦然. 另外,密钥还可以用于数字签名.数字签名跟上文说的消息摘要是一个道理,通过一定方法对数据内容进行处理得到一个签名,查看这个签名是否与对方传递的签名一致. 在非对称加密中用密钥来指公钥和私钥. RSA RAS是最早的非对称签名,是1977年由罗纳德·李维斯特(Ron Rivest).阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的.1987…