2011-08-02 16 views
0

8FAC-5806-FF54-4174-F89E-43DE-97A6-5648のような固有の指紋を作成するために文字列を暗号化するのに使用します。独自の暗号化を作成

8FAC-5806-FF54-4174-F89E-43DE-97A6-5648から文字列に変換するにはどうすればよいですか?

MD5は単一の暗号化ですので、それを元に戻すためにはtripleDESを使用する必要があります。但し、下記の方法で使用してどのようにこの8FAC-5806-FF54-4174-F89E-43DE-97A6-5648のような文字列を作成するには:

public static string Encrypt(string strToEncrypt, string strKey) 
    { 
     try 
     { 
      TripleDESCryptoServiceProvider objDESCrypto = new TripleDESCryptoServiceProvider(); 
      MD5CryptoServiceProvider objHashMD5 = new MD5CryptoServiceProvider(); 

      byte[] byteHash, byteBuff; 
      string strTempKey = strKey; 

      byteHash = objHashMD5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(strTempKey)); 
      objHashMD5 = null; 
      objDESCrypto.Key = byteHash; 
      objDESCrypto.Mode = CipherMode.ECB; //CBC, CFB 

      byteBuff = ASCIIEncoding.ASCII.GetBytes(strToEncrypt); 
      return Convert.ToBase64String(objDESCrypto.CreateEncryptor().TransformFinalBlock(byteBuff, 0, byteBuff.Length)); 
     } 
     catch (Exception ex) 
     { 
      return "Wrong Input. " + ex.Message; 
     } 
    } 

答えて

5

をコードは、フィンガープリントを生成するためにMD5を使用しています。 MD5は片方向ハッシュアルゴリズムです。これは、アルゴリズムを元に戻すためにアルゴリズムを元に戻すことができないことを意味します。ハッシングは暗号化ではありません。文字列を暗号化して解読できるようにするには、AESなどの暗号化アルゴリズムを使用する必要があります。

関連する問題