密钥对产生办法:首先选择一个素数p和两个随机数g 、x (g、 x < p ),计算 y ≡ g^x( mod p ) ,已知y,求解x是非常困难的事情(离散对数求解难题),则其公钥为 y, g 和p ,私钥是x ,g和p可由一组用户共享。 ElGamal用于数字签名。被签信息为M,首先选择一个随机 ...
分类:
编程语言 时间:
2020-05-22 14:22:32
阅读次数:
71
APP端传输一些敏感到后台服务端的时候,我们一般都是需要加密传输的。至于使用对称加密还是非对称加密的话,就得看你对数据有多负责了。 下面是我在开发中用到的一个使用AES对称加密传输的demo(亲测有用),希望这个demo对你有一定参考价值。对称加密非对称加密的原理这里就不废话了,直接上代码 impo ...
分类:
移动开发 时间:
2020-05-21 21:05:07
阅读次数:
60
加密分为对称加密和非对称加密两种方式。 对称加密,使用同一个密钥加密解密,导致密钥需要明文传输,有泄露风险。 非对称加密,使用公钥加密,私钥解密(传递重要信息)。或者私钥加密,公钥解密(数字签名),缺点是不能加密大数据,加密速度慢。 https原理: 客户端发起https的请求后,服务端会把带有公钥 ...
分类:
Web程序 时间:
2020-05-18 16:53:04
阅读次数:
73
一、HTTPS的实现原理 1. 对称加密 A与B之间的通讯数据都用同一套密钥来进行加密解密。 优点 简单快捷,密钥较短,且破译困难。 缺点 如果用户一旦过多的话,管理密钥也是一种困难。不方便直接沟通的两个用户之间怎么确定密钥也需要考虑,这其中就会有密钥泄露的风险,以及存在更换密钥的要求 2. 非对称 ...
分类:
Web程序 时间:
2020-05-17 00:47:54
阅读次数:
144
受密钥保护的报文摘要称为报文鉴别码(MAC),也称消息鉴别码。 即: MAC=Ck(M) 简单的理解为加盐的Hash函数,可以用于鉴别专属文件的完整性,是或被篡改 消息认证码(MAC)是将通信双方共享的 密钥 和数 据块作 为输入,产生Hash值作为MAC码,然后将MAC码和受保护的消息一起传递或存 ...
分类:
其他好文 时间:
2020-05-16 20:43:13
阅读次数:
112
SSL证书是数字证书的一种,提供了一种在互联网上身份验证的方式,SSL证书配置在服务端,可以使网站的数据传输更加安全。 ...
分类:
其他好文 时间:
2020-05-16 11:00:29
阅读次数:
60
真心的感谢作者的幸苦劳动,给我们带来这么好的文章:本文参考地址:https://blog.csdn.net/u014066037/article/details/51314820 RSA是一个比较完善的公开的完善的密钥算法,他技能用于加密,也能用与数字签名。这个算法经过多年的深入密码研究,虽然密码分 ...
分类:
编程语言 时间:
2020-05-13 18:29:29
阅读次数:
93
package t1; import java.io.UnsupportedEncodingException;import java.nio.charset.StandardCharsets;import java.security.InvalidKeyException;import java. ...
分类:
编程语言 时间:
2020-05-10 21:27:15
阅读次数:
93
MD5现在是用来作为一种数字签名算法,即A向B发送数据m,为了让B确信数据是A送来的并且没有被篡改于是A就是用hash算法将数据散列一并发送给 B。B接收到文件以后也用相同的hash算法校验数据是否被修改。主要是防止数据被修改的。MD5值的重复就是所谓的碰撞。 获取文件的MD5码 System.ou ...
分类:
编程语言 时间:
2020-05-10 21:21:10
阅读次数:
97
明文: 对称加密: 非对称:(公钥:pk 私钥:sk) 对称+非对称: 先用非对称方式发送num1给server,server用私钥得出key(由num1算出来),自此,约定C、S以此key(num1)通讯。 每个C的num1是随机生成的,所以是独一无二的。 对称+非对称的漏洞: 解决以上漏洞 CA ...
分类:
Web程序 时间:
2020-05-10 16:59:45
阅读次数:
80