加密应该是用的公钥加密算法,因为在客户端和服务器没进行交互的情况下,对称密钥是没有的,但客户端的公钥服务器是知道的,所以应该是:服务器用客户端的公钥对AES密钥进行加密传送给手机客户端,客户端收到之后用自己的私钥进行消息的解密。
这样一方面可以保证消息的机密性(因为私钥只有客户端自己知道),另一方面,即使公钥加密算法很复杂需要的运算时间相对较长,但是由于加密的消息——AES密钥不长,所以总体上不会花费很长时间,这样手机客户端就能在不长的时间里获得AES密钥。
最近在学习非对称加密的时候,在外网看到的一篇不错的“扫盲”文,遂简译过来分享给大家。
公钥加密,又称作非对称加密,使用的是两个key而不是一个共享的key。这两个key分别称作:公钥(public key)和私钥(private key)。公钥加密在网络安全领域是非常重要的技术。
公钥加密是一个是用到两个不同的key的加密数据的方法,这其中,公钥是公开的,允许任何人使用的,相反的,私钥是保密的、私有的。使用公钥加密的数据 只能够 被私钥解密,反过来同样,使用私钥加密的数据 只能够 被公钥解密( 木:"注意这里很多人误以为只能公钥加密私钥解密。" )。公钥加密同样被称作非对称加密,它的使用非常广泛,典型的例子就是TLS/SSL,它让>您想问什么呢?这个网站使用了>自己太小白了,之前在PC端项目中使用的MD5加密,现在的小程序项目使用了 CryptoJS 里面的 enc-base64 和 hmac-sha1 ,之前没有用到过这两种,所以比较疑惑,为何在小程序不继续使用 MD5 呢?所以在这里记录一下自己解疑惑的一些知识点。
随着互联网的兴起,我们对信息的安全越来越受重视,这样就导致在web开发中,对用户密码等各种加密变得更加重要了。与服务器的交互中,为了确保数据传输的安全性,避免被黑客抓包篡改。
对于Base64编码的,我觉得看一篇文章能够解决你的疑惑,我在这里就不赘述了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)