美文网首页
几种加密解密简介

几种加密解密简介

作者: kentchen91 | 来源:发表于2016-05-08 22:06 被阅读249次

普遍的加密方法:客户端用RSA的公钥加密AES的秘钥,服务器端用私钥解开获得的AES的秘钥,客户端再与服务器端进行AES加密的数据传输,即HTTPS协议传输的原理

加密解密概念

对称加密算法:加密解密都使用相同的秘钥,速度快,适合对大数据加密,方法有DES,3DES,AES等

非对称加密算法

非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)

公开密钥与私有密钥是一对,可逆的加密算法,用公钥加密,用私钥解密,用私钥加密,用公钥解密,速度慢,适合对小数据加密,方法有RSA

散列算法(加密后不能解密,上面都是可以解密的)

用于密码的密文存储,服务器端是判断加密后的数据

不可逆加密方法:MD5、SHA1、SHA256、SHA512

RSA流程:

假设A、B双方均拥有一对公私钥(PUB_A、PRI_A、PUB_B、PRI_B)。

A向B发送Message的整个签名和加密的过程如下:

A先使用HASH对Message生成一个固定长度的信息摘要Message_hash_A

A使用A的私钥PRI_A对Message_hash_A进行签名得到Message_sign(这里为什么不直接对Message进行签名,而要对Message_hash_A进行签名呢?因为Message的长度可能很长,而Message_hash_A的长度则是固定的,这样性能更高,格式也固定,况且hash的结果一般不会出现重复的可能)

A接着使用B的公钥PUB_B对信息Message和信息Message_sign进行加密得到Message_RSA,这时A将Message_RSA发送给B。

当B接收到A的信息Message_RSA后,获取Message的步骤如下:

B用自己的私钥PRI_B解密得到明文:Message和Message_sign;

然后B使用A的公钥PUB_A解Message_sign得到Message_hash_A;同时,B再对Message使用与A相同的HASH得到Message_hash_B;

如果Message_hash_A与Message_hash_B相同,则说明Message没有被篡改过。

上面的过程中,A知道A的公私钥同时也要知道B的公钥;同理B要知道A的公钥和B的公私钥

关于公私钥再打个比方:公钥就像一把锁一样将数据锁住;私钥就像钥匙一样,能将对应的锁打开。

公钥加密,私钥解密的好处是:公钥可以公开,那么无论谁有公钥都可以给你发送信息,而且也只有你才能解密

我们经常使用的Github就是使用了签名的方法,SSH,在本地电脑生成一对公私钥,将公钥传到github,然后使用私钥进行签名,github通过公钥延签后认为你的身份合法。

另外,加密和编码是不一样的,比如ASCII是属于编码,是将0~255与字符一一对应。

相关文章

  • 几种加密解密简介

    普遍的加密方法:客户端用RSA的公钥加密AES的秘钥,服务器端用私钥解开获得的AES的秘钥,客户端再与服务器端进行...

  • 深入了解iOS签名原理

    一、加密解密 1. 密码相关 1.1 简介 根据对加密和解密使用的密钥方法,可以将密码分为2种: 对称密码:加密用...

  • 非对称加密

    非对称加密简介 加密解密使用不同的秘钥,加密的密码无法用来解密,必须成对使用。 通讯双方A/B分别生成自己的公钥/...

  • 总结 iOS中常用的几种加密的方法

    iOS常见的几种加密方法 一. base64加密 将文件进行加密 将文件进行解密 利用终端命令进行base64运算...

  • RSA算法

    简介:公钥加密私钥解密、公钥解密私钥加密前者:所有知道公钥的人发送密文给我时,只有我能解密密文。后者:能用公钥从密...

  • 常用加密算法探寻

    原文地址在开发过程中,常常用到各种加密方法和算法,本文总结了几种常用加密方法的原理。 对称加密 原理: 加密和解密...

  • iOS RSA加签和验签(SHA1WithRSA)

    RSA 简介 RSA是一种非对称加密算法,使用公钥加密就可以使用私钥解密,使用私钥加密就可以使用公钥解密。RSA公...

  • 区块链100讲:盘点那些常用的加密算法原理

    在开发过程中,常常用到各种加密方法和算法,本文总结了几种常用加密方法的原理。 1 对称加密 原理:加密和解密数据使...

  • so文件函数的加密和解密学习笔记

    SO文件中函数的加密和解密 简介 原理上来说,找到so文件函数的位置,对其二进制进行一定加密操作后即加密了,解密也...

  • AES 加解密 前后台 Java JS

    简介 AES是一种对称加密方式,对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(dec...

网友评论

      本文标题:几种加密解密简介

      本文链接:https://www.haomeiwen.com/subject/muosrttx.html