zoukankan      html  css  js  c++  java
  • 【Android】pkcs#5填充和pkcs#7填充比较

    1.相同点:

    pkcs#5填充和pkcs#7填充算法没有任何区别。

    他们的填充字符串由一个字节序列组成,每个字节填充该填充字节序列的长度。

    假定块长度为 8,数据长度为 9,
    数据: FF FF FF FF FF FF FF FF FF
    PKCS7 填充: FF FF FF FF FF FF FF FF FF 07 07 07 07 07 07 07

    简单地说, PKCS5, PKCS7和SSL3, 以及CMS(Cryptographic Message Syntax)

    有如下相同的特点:
    1)填充的字节都是一个相同的字节
    2)该字节的值,就是要填充的字节的个数

    如果要填充8个字节,那么填充的字节的值就是0×8;
    要填充7个字节,那么填入的值就是0×7;

    如果只填充1个字节,那么填入的值就是0×1;

    恰好8个字节时还要补8个字节的0×08

    正是这种即使恰好是8个字节也需要再补充字节的规定,可以让解密的数据很确定无误的移除多余的字节。

    2.不同点:

    在PKCS5Padding中,明确定义Block的大小是8位,而在PKCS7Padding定义中,对于块的大小是不确定的,可以在1-255之间(块长度超出255的尚待研究)。

  • 相关阅读:
    概率期望训练之五
    概率期望训练之四
    JavaScript Source Map详解
    JSON.parse、JSON.stringify
    Linux cp命令直接覆盖不提示方法
    Service Worker
    HTML5 应用程序缓存
    二分图
    Tarjan
    FFT迭代加深 & NTT 多项式求逆
  • 原文地址:https://www.cnblogs.com/ryq2014/p/6379153.html
Copyright © 2011-2022 走看看