我必须使用DES algorythm加密文本,并在MD5中创建一个哈希。 MD5函数有参数:salt(byte [8])和key(string 6),它必须迭代1000次。当我通过MD5加密函数时,它返回一个字节[16]。
DES函数参数是:要加密的字符串和密钥(由MD5函数返回)。但是当我尝试将键值分配给键编码器时,我得到一个例外,因为它等待bte [8]而不是字节[16]。我试图获得前8个字节或最后8个字节.....但它不起作用(我有一个例子,我必须得到相同的结果)。
一些想法???
答案 0 :(得分:2)
今天没有理由使用DES。有更好的,不间断的算法可供使用。
答案 1 :(得分:1)
为什么使用哈希作为加密密钥?密钥应该是加密安全的随机数据,哈希不是。哈希本身并不是加密。
DES密钥是56位,通常以8个字节打包,因此从散列中获取前8个字节意味着您有一个太长的密钥(取决于它是有符号还是无符号),如果你需要提取56位必须使用哈希作为源。