加密算法

目录

不可逆加密算法

对称加密算法

非对称加密算法


不可逆加密算法

  • 可以通过数据计算加密后的结果,但是通过结果无法计算出加密数据。常见的不可逆加密算法有MD5HMACSHA1SHA-224SHA-256SHA-384SHA-512。                                                             

MD5算法

加密原理:

在MD5算法中,首先需要对信息进行填充,使其位长度对512求余的结果等于448。因此,信息的位长度(Bits Length)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。然后,再在这个结果后面附加一个以64位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍。这样做的原因是为满足后面处理中对信息长度的要求。                                                                                      

  • 应用场景

        Hash算法 常用于不可还原的密码存储,信息完整性校验。

        文档,音视频文件,软件安装包等,用新老摘要对比是否一样(接收文件是否被修改)。

        用户名或者密码加密后数据库存储。

对称加密算法

在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yao)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。

  • 对称加密算法有:DES TripleDES算法、RC算法、BlowFish算法、3DES算法、IDEA算法
  • 特点:

        加密和解密使用相同的密钥。

  • 优点:

        生成密钥的算法公开、计算量小、加密速度快、加密效率高、密钥较短。

  • 缺点:

        双方共同的密钥,有一方密钥被窃取,影响双方。

        如果每个客户都生成不同密钥,则密钥数量巨大。

  • 应用场景

        登录信息用户和密码加密,传输加密,指令加密。

非对称加密算法

主要算法:

RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)。

使用最广泛的是RSA算法,Elgamal是另一种常用的非对称加密算法。

非对称加密需要两个密钥:

公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。

公开密钥和私有密钥生成时是一对。

用公钥加密只能是对应的私钥解密,同理用私钥只能用对应公钥解密。

  • 优点:

        安全高(几乎很难破解)。

  • 缺点:

        加解密相对速度慢、算法强度复杂、密钥长、计算量大、效率低。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值