我正在做AES-GCM算法,我陷入了困境。有人可以帮帮我吗?

时间:2018-01-17 02:11:30

标签: encryption cryptography aes

在AES-GCM的测试向量中,(我在这里附上了pdf),在测试向量1,2和3中,没有给出len(A) || len(C) = 00000000000000000000000000000080的值。 链接是: https://pdfs.semanticscholar.org/114a/4222c53f1a6879f1a77f1bae2fc0f8f55348.pdf

但是C = 0388dace60b6a392f328c2b971b2fe78 len(C) = 32。那么A,对吧? 有人可以帮助我,如何获得.queue()的值及其长度。 我在做这个算法,AES-GCM。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

GCM论文在2.2节中说

  

函数len()返回一个64位字符串,其中包含非负整数,描述其参数中的位数,右侧是最低位。

测试用例2中的C值是32个十六进制字符,或16个字节,或128个(0x80)位。

len(C)生成64位值,在big-endian十六进制中为00 00 00 00 00 00 00 80。 128位值的上半部分是len(A)。它全是零,因此len(A)为零,匹配A不存在。这由测试向量部分的介绍文本证实:

  

所有值均为十六进制,零长度变量由缺少任何十六进制数字表示。

(强调我的)。