2016-04-08 9 views
-1

私は以下の暗号化機能を持ち、このコードがどの言語で書かれているかわかりません。私の知る限り、この関数はSHA256の文字列を暗号化しています。VB.NETと同じ方法でPHPで文字列をハッシュする

Use Namespace: Imports System.Security.Cryptography 
Data: Agent Code ~ Userid ~ Security ID~ MerchantID~ Terminalid~ LoginKey 
Public Function EncryptSHA(ByVal Data As String) As String 
Dim sh As New SHA256Managed 
Try 
Convert.ToBase64String(sh.ComputeHash(Encoding.ASCII.GetBytes(Data))) 
Dim eNC_data As Byte() = ASCIIEncoding.ASCII.GetBytes(Data) 
Dim eNC_str As String = Convert.ToBase64String(eNC_data) 
Return eNC_str 
Catch ex As ExceptionGeneral.Err_Handler("General", "EncryptSHA", ex.Message) 
Return Nothing 
End Try 
End Function 

私はPHPに取り組んでおり、PHPで同じPHP暗号化機能が必要です。 誰かがこの機能で使用されている暗号化について説明してください。ここ は私のPHPコードです:

$data='Agent Code ~ Userid ~ Security ID~ MerchantID~ Terminalid~ LoginKey'; 
$encryptcode = hash('SHA256', $data); 

私の悪い英語のため申し訳ありません。

+1

を。 PHPでデータを解読しようとすると正しいエンコーディングを使用することが重要です。 (Ascii)。たぶんPHPコードを投稿するべきでしょうか? – Hypnobrew

+0

@Merryweather PHPコードが追加されました。 – Ankit

+0

SHA256とすべての暗号化ハッシュ関数は**暗号化されていません**、一方向関数で、元のデータを取得できません。それらは元に戻すことができないので、元のデータを得るために元に戻すことができる暗号化ではありません。用語は重要です。 – zaph

答えて

0

SHA256はハッシュ関数であり、これは一方向の暗号化です。それを復号化する方法はありません。暗号化ハッシュ関数の全目的は、それを元に戻すことができないことです。これは、たとえば、ユーザーのパスワードを確認するために使用されます。ユーザーパスワードのハッシュとデータベースに保存されたハッシュを比較して、ユーザーの身元を確認します。

あなたはそれを破るしたい場合は、これらの技術試すことができます。これは、VB.Netである

  1. ブルートフォース
  2. レインボーテーブル
+0

私はそれを解読したくない、私は同じ暗号化fuctionをphpで作りたいと思う – Ankit

+0

私は、あなたが何をしようとしているあなたのポストに明確にしてください。 – Hypnobrew

+0

編集中、申し訳ありません – Ankit

関連する問題