数据加密标准测试向量

cro*_*row 1 des vhdl

有谁知道我在哪里可以找到64位DES算法的每个组件的测试向量(Key schedul,密码函数等)?例如,我想测试64位密钥生成并生成所有16个密钥生成.我在VHDL中实现算法,所以我需要检查组件.我的实现基于本文.

谢谢

use*_*120 5

最初有NBS特刊500-20,修订于1980年,验证了NBS数据加密标准硬件实现的正确性(作者已将其发布于https://archive.org/details/validatingcorrec00gait).

然后是NIST特别PUB 800-17,操作模式验证系统(MOVS):要求和程序,涵盖FIPS PUB 46-2(DES)以及Skipjack.http://csrc.nist.gov/publications/nistpubs/800-17/800-17.pdf.

还有NIST Special PUB 800-20,三重数据加密算法(TMOVS)的操作模式验证系统:要求和程序.http://csrc.nist.gov/publications/nistpubs/800-20/800-20.pdf.

可能还有其他出版物,如NIST Special Publication 800-67,TripleData Encryption Algorithm(TDEA)Block Cipher建议书,http: //csrc.nist.gov/publications/nistpubs/800-67-Rev1/SP-800- 67-Rev1.pdf,见 http://csrc.nist.gov/publications/PubsSPs.html.

在软件中多次实施DES并且在VHDL中多次实施DES,理解DES标准最初描述的是与IBM在1977年获得专利的硬件实现的一致性.(参见vhdl_des.tar.gz,这是一个简单的实现,具有8位接口.有一个pdf文件,而不是包含I/O排列的描述.)

为了节省您输入FIPS SP PUB 500-20的测试向量,可以在这里找到des.test.其中一个密钥可能存在奇偶校验错误,我永远无法跟踪这些文件中的哪个(des -tv <des.test,软件实现).有人费力地用C语言中的Numerical Recipes手工输入它们,有人从500-20获得它们.