SM4 CTR 在线加密工具

CTR模式(Counter mode,CM)也被称为ICM模式(Integer Counter Mode,整数计数模式)和SIC模式(Segmented Integer Counter)。
与OFB相似,CTR将块密码变为流密码。它通过递增一个加密计数器以产生连续的密钥流,
其中,计数器可以是任意保证长时间不产生重复输出的函数,但使用一个普通的计数器是最简单和最常见的做法。
使用简单的、定义好的输入函数是有争议的:批评者认为它“有意的将密码系统暴露在已知的、系统的输入会造成不必要的风险”。
目前,CTR已经被广泛的使用了,由输入函数造成的问题被认为是使用的块密码的缺陷,而非CTR模式本身的弱点。
无论如何,有一些特别的攻击方法,例如基于使用简单计数器作为输入的硬件差错攻击。

CTR模式的特征类似于OFB,但它允许在解密时进行随机存取。由于加密和解密过程均可以进行并行处理,CTR适合运用于多处理器的硬件上。

SM4-CTR Test Vectors

Example 1
Plaintext:

AA AA AA AA AA AA AA AA BB BB BB BB BB BB BB BB
CC CC CC CC CC CC CC CC DD DD DD DD DD DD DD DD
EE EE EE EE EE EE EE EE FF FF FF FF FF FF FF FF
AA AA AA AA AA AA AA AA BB BB BB BB BB BB BB BB
Encryption Key:

01 23 45 67 89 AB CD EF FE DC BA 98 76 54 32 10
IV:

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
Ciphertext:

AC 32 36 CB 97 0C C2 07 91 36 4C 39 5A 13 42 D1
A3 CB C1 87 8C 6F 30 CD 07 4C CE 38 5C DD 70 C7
F2 34 BC 0E 24 C1 19 80 FD 12 86 31 0C E3 7B 92
6E 02 FC D0 FA A0 BA F3 8B 29 33 85 1D 82 45 14

Example 2
Plaintext:

AA AA AA AA AA AA AA AA BB BB BB BB BB BB BB BB
CC CC CC CC CC CC CC CC DD DD DD DD DD DD DD DD
EE EE EE EE EE EE EE EE FF FF FF FF FF FF FF FF
AA AA AA AA AA AA AA AA BB BB BB BB BB BB BB BB
Encryption Key:

FE DC BA 98 76 54 32 10 01 23 45 67 89 AB CD EF
IV:

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
Ciphertext:

5D CC CD 25 B9 5A B0 74 17 A0 85 12 EE 16 0E 2F
8F 66 15 21 CB BA B4 4C C8 71 38 44 5B C2 9E 5C
0A E0 29 72 05 D6 27 04 17 3B 21 23 9B 88 7F 6C
8C B5 B8 00 91 7A 24 88 28 4B DE 9E 16 EA 29 06

SM4工具链接

SM4-CCM在线加密--SM4-CCM在线解密--SM4-GCM在线加密--SM4-GCM在线解密--SM4-ECB在线加密--SM4-ECB在线解密--SM4-CBC在线加密--SM4-CBC在线解密--SM4-CFB在线加密--SM4-CFB在线解密--SM4-CTR在线加密--SM4-CTR在线解密--SM4-OFB在线加密--SM4-OFB在线解密--