zoukankan      html  css  js  c++  java
  • 分组密码

    基本原理:代换,扩散,混淆。

    结构:

      1.Feistel网络:将明文一份为2,明文x = L0R0。

        对于1<=i<=r有:

            Li = R(i-1)

            Ri=Li-1异或F(Ri-1,Ki)

          

        优点:加密与解密相似

           Feistel型分组密码的加密过程的最后一轮没有进行左右交换,目的就是为了可以利用同一算法实现加解密。

      2.非平衡的Feistel网络

        明文x = 2mbit

        也是将明文分成L0R0两部分,但是L0≠R0,L0=n1bit R0=n2bit n1+n2=2m

        对于1<=i<=r有:

            

      3.SP网络:

        加密思想:x是明文,长度为nbit,令X0=x,对于1<=i<=r,在子密钥Ki的控制下,对Xi-1做代换S,然后再做置换或可逆的线性变换p,密文为y=X,r是圈变换的迭代次数。

         

       SP网络可以看做Feistel网络的推广,但是SP的加密和解密过程不同。

    分组密码算法的设计要求如下。 (1)分组长度n要足够大,防止明文穷举攻击奏效。 (2)密钥量要足够大,尽可能消除弱密钥并使所有密钥同等好,但密钥不能过长,以便管理。 (3)由密钥确定置换的算法要足够复杂,充分实现明文与密钥的扩散和混淆。 (4)加密和解密运算简单,易于软件和硬件高速实现。 (5)数据扩展。 (6)差错传播尽可能小。

  • 相关阅读:
    黑产上演《三体》剧情:蠕虫病毒入侵手机群发“钓鱼”短信
    安天AVL联合小米MIUI首擒顽固病毒“不死鸟”
    阿里云存储OSS服务端签名客户端直传
    mariadb 安装配置
    NPOI 打印设置
    windows2008 r2 网络负载均衡搭建
    SqlServer数据库技巧
    达梦数据库备份还原
    ASP.NET CORE Docker发布记录
    DataReader转换
  • 原文地址:https://www.cnblogs.com/beautiful7/p/12793223.html
Copyright © 2011-2022 走看看