zoukankan      html  css  js  c++  java
  • 各种加密算法比较

    算法选择:对称加密AES,非对称加密: ECC消息摘要: MD5,数字签名:DSA

    对称加密算法(加解密密钥相同)

    名称

    密钥长度

    运算速度

    安全性

    资源消耗

    DES

    56位

    较快

    3DES

    112位或168位

    AES

    128、192、256位

    非对称算法(加密密钥和解密密钥不同)

    名称

    成熟度

    安全性(取决于密钥长度)

    运算速度

    资源消耗

    RSA

    DSA

    只能用于数字签名

    ECC

    低(计算量小,存储空间占用小,带宽要求低)

    散列算法比较

    名称

    安全性

    速度

    SHA-1

    MD5

    对称与非对称算法比较

    名称

    密钥管理

    安全性

    速度

    对称算法

    比较难,不适合互联网,一般用于内部系统

    快好几个数量级(软件加解密速度至少快100倍,每秒可以加解密数M比特数据),适合大数据量的加解密处理

    非对称算法

    密钥容易管理

    慢,适合小数据量加解密或数据签名

     

    算法选择(从性能和安全性综合)

    对称加密: AES(128位),

    非对称加密: ECC(160位)RSA(1024),

    消息摘要: MD5

    数字签名:DSA

    轻量级:TEA、RC系列(RC4),Blowfish (不常换密钥)
    速度排名(个人估测,未验证):IDEA <DES <GASTI28<GOST<AES<RC4<TEA<Blowfish  

    简单的加密设计: 
    用密钥对原文做  异或,置换,代换,移位

     

    名称

    数据大小(MB)

    时间(s)

    平均速度MB/S

    评价

    DES

    256

    10.5

    22.5

    3DES

    256

    12

    12

    AES(256-bit)

    256

    5

    51.2

    Blowfish

    256

    3.7

    64



    5-3 单钥密码算法性能比较表

    名称

    实现方式

    运算速度

      全  性

    改进措施

    应用场合

    DES

    40-56bit

    密钥

    一般

    完全依赖密钥,易受穷举搜索法攻击

    双重、三重DES,AES

      适用于硬件实现

    IDEA

    128bit密钥

    8轮迭代

    较慢

    军事级,可抗差值分析和相关分析

    加长字长为32bit、密钥为256bit,采用232 模加、232+1模乘

      适用于ASIC设计

    GOST

    256bit密钥

    32轮迭代

    较快

    军事级

    加大迭代轮数

    S盒可随机秘

    密选择,便于软件实现

    Blowfish

    256-448bit

    密钥、16轮迭代

    最快

      军事级、可通过改变密钥长度调整安全性

    适合固定密钥场合,不适合常换密钥和智能卡

    RC4

    密钥长度可变

    DESl0倍

    对差分攻击和线性攻击具有免疫能力,高度非线性

    密钥长度放宽到64bit

    算法简单,易于编程实现

    RC5

    密钥长度和迭代轮数均可变

    速度可根据

    三个参数的

    值进行选择

    六轮以上时即可抗线性攻击、通过调整字长、密钥长度和迭代轮数可以在安全性和速度上取得折中

    引入数据相倚转

      适用于不同字长的微处理器

    CASTl28

    密钥长度可变、16轮迭代

    较快

    可抵抗线性和差分攻击

    增加密钥长度、形成CAST256

    适用于PC机和

    UNIX工作站

    图片


    常见加密算法
    1、DES(Data Encryption Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合; 
    2、3DES(Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;
    3、RC2和RC4:对称算法,用变长密钥对大量数据进行加密,比 DES 快;
    4、IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;
    5、RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,非对称算法; 
    6、DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准),严格来说不算加密算法;
    7、AES(Advanced Encryption Standard):高级加密标准,对称算法,是下一代的加密算法标准,速度快,安全级别高,在21世纪AES 标准的一个实现是 Rijndael 算法;
    8、BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快;
    9、MD5:严格来说不算加密算法,只能说是摘要算法;
    10、PKCS:The Public-Key Cryptography Standards (PKCS)是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封的格式等方面的一系列相关协议。
    11、SSF33,SSF28,SCB2(SM1):国家密码局的隐蔽不公开的商用算法,在国内民用和商用的,除这些都不容许使用外,其他的都可以使用;
    12、
    ECCElliptic Curves Cryptography):椭圆曲线密码编码学。

    13、TEA(Tiny Encryption Algorithm) 简单高效的加密算法,加密解密速度快,实现简单。但安全性不如DES,QQ一直用tea加密
     



    名称

    密钥长度

    运算速度

    安全性

    资源消耗

    DES

    56位

    较快

    3DES

    112位或168位

    AES

    128、192、256位

  • 相关阅读:
    ThinkPHP where方法:设置查询或操作条件
    微信小程序showToast延迟跳转页面
    uniapp微信小程序授权登录
    什么是二维码,什么是QR码?
    微信小程序授权登录开发流程图
    微信小程序提交审核并发布详细流程(一)
    微信小程序提交审核并发布详细流程2
    uniapp医院预约挂号微信小程序
    《爆款文案》写文案只需要四个步骤
    Spark学习笔记——读写ScyllaDB
  • 原文地址:https://www.cnblogs.com/qq2052702900/p/5812766.html
Copyright © 2011-2022 走看看