2013-09-28 23 views
1

我想实现一个Go应用程序,它将发送一些私人数据到服务器。服务器上的代码是PHP,并使用“基于MD5的分组密码”。 PHP加密/解密代码在这里: http://www.jonasjohn.de/snippets/php/md5-based-block-cipher.htm是否有“基于MD5的分组密码”的Go版本?

Go有没有相当的例程?

+5

MD5是哈希算法,而不是加密算法。因此,不可能“解密”MD5的输出。链接中的加密使用MD5哈希生成与XOR加密一起使用的IV(初始化向量)。 –

+1

很有可能使用强大的散列函数来创建强分组密码,这就是PHP代码似乎要做的事情。不管这是不是一个好主意,都是一个不同的问题! –

回答

5

它看起来像代码类似于MDC algorithm这是一种从散列函数制作密码的方法。

虽然有更好的密码 - 看看Go's crypto library

如果你急于与特定的PHP代码进行互操作,那么你将不得不将它转换为Go我想,但如果我有选择,我会选择一个更好的密码(使用AES的东西)。