3

有効なMD5結果を取得するためのさまざまな言語の1行のコード例を探しています(バイトハッシュや何を持っているかではなく、文字列として)。例えば:

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

VBを1行で行うのは特に面倒だと思いました。

4

7 に答える 7

2

パイソン

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

または、md5すでにインポートされている場合:

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

グレッグ・ヒューギルに感謝

于 2008-11-04T03:01:51.480 に答える
2

これを達成する方法には、ある種の普遍性があります。通常、md5_in_one_line(またはMd5InOneLine) と呼ばれるルーチンを 1 回定義し、ライブラリ ルーチンを使用する場合と同様に、そのルーチンをあらゆる場所で使用します。

たとえば、Md5InOneLineC# で一度定義すると、ワンライナーで正しい結果が得られます。

于 2008-11-04T03:02:15.893 に答える
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)
              )
     );
于 2008-11-04T03:05:25.950 に答える
1

「どの言語が MD5 の標準ライブラリをサポートしているか」と尋ねているだけではありませんか? Justice が言ったように、それをサポートするどの言語でも、結果を文字列変数に格納する関数呼び出しになります。組み込みのサポートがなくても、その関数を任意の言語で記述できます!

于 2008-11-04T03:10:56.343 に答える
1

VBScript が必要な場合に備えて、webdevbros からMD5 クラスをダウンロードし、次の 1 行を追加します。

hash = (new MD5).hash("some value")
于 2008-11-04T03:31:03.510 に答える
0

MD5を1行で実行できるかどうかは本当に問題ですか。VB で 1 行にできないほど面倒なら、独自の関数を作成します。次に、VB で MD5 を 1 行で実行する必要がある場合は、その関数を呼び出すだけです。

すべてを 1 行のコードで実行することが非常に重要である場合、ここに 1 行の 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 に格納されます。

于 2008-11-04T03:04:19.633 に答える
0

Coldfusion には多数のハッシュ アルゴリズムがあり、MD5 がデフォルトです。

cfset var md5hashresult = hash("ハッシュする文字列")

于 2008-11-04T03:46:34.057 に答える