我需要做单元测试来检查Diffie-Hellman密钥协议协议的实现是否正常工作,所以我需要测试向量来验证。问题是,我无法在互联网上找到他们。 RFC-2631包含测试向量,但仅适用于ZZ向量。我需要P,G,Xa等测试指标。Diffie-Hellman测试向量
回答
由U.S. NISThere维护的DH测试向量有很大的集合。
UPDATE:
好,这里是从文件中的一个例子KAS/FFC/Test of 800-56A excluding KDF/FFC Static Scheme/KASValidityTest_FFCStatic_NOKC_ZZOnly_resp.fax
的文件的开头有一些文字注释,然后将下面几行:
P = da3a8085d372437805de95b88b675122f575df976610c6a844de99f1df82a06848bf7a42f18895c97402e81118e01a00d0855d51922f434c022350861d58ddf60d65bc6941fc6064b147071a4c30426d82fc90d888f94990267c64beef8c304a4b2b26fb93724d6a9472fa16bc50c5b9b8b59afb62cfe9ea3ba042c73a6ade35
Q = f2ca7621eb250aa5f22cef1907011295defc50a7
G = a51883e9ac0539859df3d25c716437008bb4bd8ec4786eb4bc643299daef5e3e5af5863a6ac40a597b83a27583f6a658d408825105b16d31b6ed088fc623f648fd6d95e9cefcb0745763cddf564c87bcf4ba7928e74fd6a3080481f588d535e4c026b58a21e1e5ec412ff241b436043e29173f1dc6cb943c09742de989547288
现在,唐不用担心Q
。 G
和P
值与g
和p
中的RFC 2631具有相同的含义。这些值用于文件中的下24个测试向量。第一个这样的载体被列为:
COUNT = 0
XstatCAVS = 42c6ee70beb7465928a1efe692d2281b8f7b53d6
YstatCAVS = 5a7890f6d20ee9c7162cd84222cb0c7cb5b4f29244a58fc95327fc41045f476fb3da42fca76a1dd59222a7a7c3872d5af7d8dc254e003eccdb38f291619c51911df2b6ed67d0b459f4bc25819c0078777b9a1a24c72e7c037a3720a1edad5863ef5ac75ce816869c820859558d5721089ddbe331f55bef741396a3bbf85c6c1a
XstatIUT = 54081a8fef2127a1f22ed90440b1b09c331d0614
YstatIUT = 0b92af0468b841ea5de4ca91d895b5e922245421de57ed7a88d2de41610b208e8e233705f17b2e9eb91914bad2fa87f0a58519a7da2980bc06e7411c925a6050526bd86e621505e6f610b63fdcd9afcfaa96bd087afca44d9197cc35b559f731357a5b979250c0f3a254bb8165f5072156e3fd6f9a6e69bcf4b4578f78b3bde7
Z = 8d8f4175e16e15a42eb9099b11528af88741cc206a088971d3064bb291eda608d1600bff829624db258fd15e95d96d3e74c6be3232afe5c855b9c59681ce13b7aea9ff2b16707e4c02f0e82bf6dadf2149ac62630f6c62dea0e505e3279404da5ffd5a088e8474ae0c8726b8189cb3d2f04baffe700be849df9f91567fc2ebb8
CAVSHashZZ = eb99e77ac2272c7a2ee70c59375ac4d167312c20
Result = P (0 - Correct)
不要太担心的标签,只知道在XstatCAVS
和XstatIUT
是相同的xa
和RFC-2631 xb
,并YstatCAVS
和YstatIUT
是与RFC-2631中的ya
和yb
相同。最后,Z
与RFC-2631中的ZZ
相同。
最后,行Result = P
意味着给出的值是你应该得到的值 - P表示“通过”。如果你看下一个例子(COUNT = 1),它有Result = F
这意味着失败。你的实现应该而不是如果它是正确的,就会得到结果。
谢谢。但是恐怕只有ECC DH的载体与传统的DH相反。 – 2301948213098 2011-05-20 11:00:19
查看FFC目录。 That's diffie hellman – 2011-05-21 21:16:12
您能否提供经典Diffie-Hellman测试样本的归档文件的完整路径(如http://en.wikipedia.org/wiki/Diffie_hellman#Description所述)?谢谢。 – 2301948213098 2011-05-25 14:33:17
- 1. AES CTR测试向量
- 2. .NET AES返回错误测试向量
- 3. 变量值测试
- 4. 水豚DOM横向测试
- 5. 黄瓜测试重定向
- 6. supertest:测试重定向URL
- 7. phpUnit测试重定向后
- 8. 测试登录重定向
- 9. 重定向测试输出
- 10. WP7测试更改方向
- 11. RSpec测试重定向
- 12. 硒测试gwt向导
- 13. 检测的特征向量
- 14. AES/Rijndael测试向量:什么填充模式?
- 15. 火车上的支持向量机和测试
- 16. PKSC1V2.2 RSASSA-PSS签名方案的测试向量
- 17. 矩阵向量乘法:基准测试和性能
- 18. 支持向量机(SVM)与K-NN测试效率
- 19. 带有任意长度明文的AES测试向量
- 20. 在C++中自动/模板生成测试向量
- 21. 浮点运算单元的测试向量
- 22. 如何在C++中测试向量初始化成功/失败
- 23. CppUnitTestFramework和测试“向量下标超出范围”
- 24. 测试两个函数变量指向相同的函数吗?
- 25. 一套SDP解析器的“测试向量”?
- 26. 创建向量秩和检验H-测试蟒
- 27. 测试一个向量的所有元素是否相等
- 28. 测试一个向量的任何元素是否等于1
- 29. 角度量角器如何测试点击重定向状态
- 30. 特征向量:训练对测试集的权重计算
对P有一个测试向量意味着什么?还是G?这些是域参数,基本上是常量。 Xa只是一个随机整数。 RFC-2631并不包含任何有用的测试向量。 RFC中的测试数据仅用于关键扩展阶段。 – 2011-05-18 00:27:58
测试向量表示允许您检查您的计算实施是否正确的数据 – 2301948213098 2011-05-19 13:42:47