zoukankan      html  css  js  c++  java
  • 加密算法的安全级别

    转载的:

    今天在网上看到一个关于加密算法的安全性及破解复杂度的表格,特摘录下来以便日后参考使用,原表是英文的,这里直接翻译成中文方便查阅。另外还找了一些关于密码学相关的信息,附录在后。

    加密算法的安全级别(Security Level of Cryptographic Algorithms)

    安全级别
    (Security Level)

    工作因素
    (Work Factor)

    算法
    (Algorithms)

    薄弱(Weak)

    O(240)

    DES, MD5

    传统(Legacy)

    O(264)

    RC4, SHA-1

    基准(Baseline)

    O(280)

    3DES

    标准(Standard)

    O(2128)

    AES-128, SHA-256

    较高(High)

    O(2192)

    AES-192, SHA-384

    超高(Ultra)

    O(2256)

    AES-256, SHA-512

    注:上表中的"工作因素(Work Factor)"可以理解为破解的算法复杂度。

    关于密码学相关的一些信息:

    密码学散列散列函数
    哈希算法MD4, MD5, SHA
    对称加密DES, IDEA, RC2, RC4, SKIPJACK, RC5, AES
    非对称加密RSA, ECC

      已经证实较容易破解的算法(不安全算法):MD4, MD5, SHA-0, SHA-1, DES

       理论上大部分的算法基本上都是可以破解的,只是需要很多台计算机并行运算很长时间才能破解。密钥越长,需要耗费的资源越多,以此来提高破解的成本,由于 成本过高导致不进行攻击或采用旁道攻击。同时密钥越长加解密的成本也会随之提高,所以可以根据信息的价值和保密要求来选择合适的算法。

      哈希算法是不可逆算法,但是存在碰撞可能,速度较快;对称加密使用一个密钥进行加解密;非对称加密使用公钥和私钥进行加解密,速度比对称加密要更慢,但较安全。通常哈希算法可以选用 MD5 或 SHA,而对称加密则可以选用 3DES 或 AES,非对称加密则可以选用 RSA 或 ECC。

      另外需要说明的是,这里的哈希算法和哈希表中用到的哈希算法稍有不同,哈希表中用到的哈希算法不需要高的安全性,但是需要高的性能和高的离散性,所以一般不会采用 MD5 或 SHA 等算法,而是采用更快的哈希算法。

    常用的加密算法有哪些?

    DES(Data Encryption Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合;

      3DES(Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;

      RC2和RC4:对称算法,用变长密钥对大量数据进行加密,比 DES 快;

      IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;

      AES(Advanced Encryption Standard):高级加密标准,对称算法,是下一代的加密算法标准,速度快,安全级别高,现在 AES 标准的一个实现是 Rijndael 算法;

      RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,非对称算法;

      DSA(Digital Signature Algorithm):数字签名算法,是一种标准的DSS(数字签名标准),严格来说不算加密算法;

      BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快;

      MD5:严格来说不算加密算法,只能说是摘要算法。MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

      PKCS:The Public-Key Cryptography Standards (PKCS)是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签 名、数字信封的格式等方面的一系列相关协议。

      SSF33,SSF28,SCB2(SM1):国家密码局的隐蔽不公开的商用算法,在国内民用和商用的,除这些都不容许使用外,其他的都可以使用;

      其它算法:ElGamal、Diffie-Hellman、新型椭圆曲线算法ECC等。

  • 相关阅读:
    09.session #
    08.cookie
    07.中间件
    06.类视图
    374. 猜数字大小 力扣 二分 简单却易错
    278. 第一个错误的版本 力扣 二分 简单
    1449. 数位成本和为目标值的最大数字 力扣 动态规划 难 string赋值和比较
    279. 完全平方数 力扣 动态规划 中等
    518. 零钱兑换 II 力扣 动态规划,中等吧
    203. 移除链表元素 力扣
  • 原文地址:https://www.cnblogs.com/davytitan/p/3850321.html
Copyright © 2011-2022 走看看