zoukankan      html  css  js  c++  java
  • 对称加密算法简介

    对称加密(symmetric encryption)

    1. 对称加密就是加密/解密都用相同密钥的加密算法
    2. 明文(plaintext):指任何没有经过加密的信息
    3. 加密算法(encryption algorithm):对明文进行替换,变形等操作的步骤规则
    4. 密钥(secret key):明文转换为密文或将密文转换为明文的算法中输入的参数
    5. 密文(ciphertext):明文经过加密算法处理后的输出
    6. 解密算法(decryption algorithm):加密算法的逆向操作

    好的对称加密算法标准

    一个好的对称加密算法,让破解者就算知道了算法流程,知道了明文和对应的密文,但是还是很难破解出密钥key
    不过一般而言,破解者只知道算法流程和密文。所以总的来说对称加密算法最重要的就是保护好密钥key。
    一般而言,信息发送源要将自己的密钥共享给信息目的地,需要通过安全的通道专门传输密钥,一旦密钥泄漏那么对称加密算法也就不起作用了。

    加密方法分类

    加密算法,包括对称和非对称,使用的加密手段可以总的归纳为两类操作:

    • 替换(substitution):将明文中的字母,或者比特,或者单词等映射为另外的值;
    • 换位(transposition):明文中的元素被重新排列

    根据处理数据的形式不同,可以划分为块加密和流加密:

    • 块加密(block cipher):一次加密处理固定大小的块数据
    • 流加密(stream cipher):连续处理明文中的元素

    加密算法安全性定义

    如果一个加密算法是无条件安全的(unconditionally secure),就是说无论破解者用多少时间去暴力破解密钥,还是不断分析密钥都无法破解。但无条件安全的加密算法是不存在的。所以加密算法的目标就是到达计算安全的(computationally secure)

    • 破解密钥的成本高于获取加密信息的价值
    • 破解密钥的时间超出加密信息的保密生命期
  • 相关阅读:
    mvc 4 ActionFilterAttribute 特性,进行权限验证
    asp.net 将word文档进行编辑并导出一个新的word
    怎样才能最快速的找到破解软件?
    C#动态执行字符串(动态创建代码)
    使用Memcached提高.NET应用程序的性能
    ASP.NET 创建网站地图
    TFS2010安装办法及序列号
    在将 varchar 值 '1,2,3,4,5,6,7,8' 转换成数据类型 int 时失败。
    Js获取当前日期时间及其它操作
    截取Excel字符串的部分字符
  • 原文地址:https://www.cnblogs.com/HachikoT/p/12728544.html
Copyright © 2011-2022 走看看