MD5的各种语言的一行代码示例

时间:2008-11-04 02:56:46

标签: md5

我正在寻找各种语言的一个代码示例来获取有效的MD5结果(作为字符串,而不是bytehash或者你有什么)。例如:

PHP: $ token = md5($ var1。$ var2);

我发现VB在一行中特别麻烦。

7 个答案:

答案 0 :(得分:2)

<强>的Python

token = __import__('md5').new(var1 + var2).hexdigest()

或者,如果已导入md5

token = md5.new(var1 + var2).hexdigest()

感谢Greg Hewgill

答案 1 :(得分:2)

如何实现这一目标有一种普遍性。通常,一次定义一个名为md5_in_one_line(或Md5InOneLine)的例程,并在整个地方使用它,就像使用库例程一样。

因此,例如,一旦在C#中定义Md5InOneLine,就可以轻松获得正确的结果。

答案 2 :(得分:2)

C#:

string hash = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(input, "md5");

VB几乎是一样的。

这里没有使用System.Web命名空间:

string hash = Convert.ToBase64String(new System.Security.Cryptography.MD5CryptoServiceProvider().ComputeHash(System.Text.Encoding.UTF8.GetBytes(input)));

或以可读的形式:

string hash =
     Convert.ToBase64String
     (new System.Security.Cryptography.MD5CryptoServiceProvider()
          .ComputeHash
              (System.Text.Encoding.UTF8.GetBytes
                  (input)
              )
     );

答案 3 :(得分:1)

您是不是真的只是问“哪些语言有对MD5的标准库支持?”正如Justice所说,在任何支持它的语言中,它只是一个函数调用,将结果存储在一个字符串变量中。即使没有内置支持,您也可以用任何语言编写该函数!

答案 4 :(得分:1)

以防您需要VBScript: 从webdevbros下载MD5 class,然后用一行:

hash = (new MD5).hash("some value")

答案 5 :(得分:0)

如果你能在一行中做MD5,那真的很重要吗?如果你不能在一行中的VB中做那么多麻烦,那么编写你自己的函数。然后,当你需要在一行中用VB做MD5时,只需调用该函数。

如果在一行代码中完成所有这一切都很重要,这里是一行VB。不使用System.Web命名空间。

Dim MD5 As New System.Security.Cryptography.MD5CryptoServiceProvider() : Dim HashBytes() As Byte : Dim MD5Str As String = "" : HashBytes = MD5.ComputeHash(System.Text.Encoding.UTF8.GetBytes("MyString")) : For i As Integer = 0 To HashBytes.Length - 1 : MD5Str &= HashBytes(i).ToString("x").PadLeft(2, "0") : Next

这将散列“MyString”并将MD5总和存储在MD5Str中。

答案 6 :(得分:0)

Coldfusion有一堆哈希算法,MD5是默认算法。

cfset var md5hashresult = hash(“string to hash”)