• AES SHA-1 SM3 MD5


    AES是美国国家标准技术研究所NIST旨在代替DES的21世纪的加密标准。

    输入:128bit 的消息分组
    输出:128bit 的密文分组
    密钥长度及圈数
    128 10
    192 12
    256 14
    消息 与 密钥
    addroundkey//加入轮密钥  每一个字节与轮密钥的相应字节进行异或运算

    subbytes//  字替代  经过s盒,即对每一个字节进行替换。非线性部件。16个字节採用同样的s-盒
    shiftrow//  行变换   每一行按字节循环以为。第一行移动0位,第二行<<<1,.....第四行《《3
    mixcolumn// 列混合
    addroundkey
    !!!!!!!!!!上面为循环进行!!!!!!!!!!!!!!

    subbutes
    shiftrow
    addroundkey
    AES加密数据块分组长度必须为128比特。密钥长度能够是128比特、192比特、256比特中的随意一个(假设数据块及密钥长度不足时,会补齐)。

    AES加密有非常多轮的反复和变换。大致步骤如

    下:1、密钥扩展(KeyExpansion),2、初始轮(Initial Round),3、反复轮(Rounds)。每一轮又包含:SubBytes、ShiftRows、MixColumns、AddRoundKey,4、终于轮(Final Round)

    。终于轮没有MixColumns。

    MD5算法
    MD5以512位分组来处理输入的信息。且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
     

     

    SHA-1
    SHA (Secure Hash Algorithm。译作安全散列算法) 是美国国家安全局 (NSA) 设计。美国国家标准与技术研究院(NIST) 公布的一系列password散列函数。


    SHA-0 和 SHA-1 会从一个最大 2^64 位元的讯息中产生一串 160 位元的摘要

    SM3算法:
    国家password管理局编制的商用算法,用于password应用中的数字签名和验证、消息认证码的生成与验证以及随机数的生成。可满足多种password应用的安全需求。对长度为l(l< 264) 比特的消息m,SM3

    杂凑算法经过填充和迭代压缩,生成杂凑值。杂凑值长度为256比特。

  • 相关阅读:
    CodeForces 706C Hard problem
    CodeForces 706A Beru-taxi
    CodeForces 706B Interesting drink
    CodeForces 706E Working routine
    CodeForces 706D Vasiliy's Multiset
    CodeForces 703B Mishka and trip
    CodeForces 703C Chris and Road
    POJ 1835 宇航员
    HDU 4907 Task schedule
    HDU 4911 Inversion
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5166781.html
Copyright © 2020-2023  润新知