2012-01-06 167 views
1

我有一個Informix數據庫中的數據,該數據庫有一列,數據使用Informix函數ENCRYPT_TDES加密。數據導入到SQL SERVER 2008中,我無法再訪問正在運行的Informix實例。我需要編寫一個C#或VB.NET函數來解密這些數據。任何人都知道如何編寫一個C#函數來解密它?C#三重DES加密解密Informix ENCRYPT_TDES函數

+0

您是否假設Cryptology Class將理解Informix數據庫如何加密代碼..?還有你怎麼加密之前的informix數據庫中的代碼..?當你說你有數據..這是你的數據還是你想非法破解你遇到的數據.. ??? – MethodMan 2012-01-06 20:44:30

+0

我以數據庫轉換爲生,我的一位同事已經爲MS-SQL轉換做了一次Informax。當他明天回去工作時,我會讓他在這裏發帖。 – 2012-01-06 20:53:29

+0

@ScottChamberlain謝謝。 DJ KRAZE不,這是我的公司數據庫,我擁有加密的密碼。我只需要一種使用MSSQL函數或C#解密的方法。 – 2012-01-06 22:22:07

回答

0

用ENCRYPT_TDES或ENCRYPT_AES存儲加密數據的方式沒有記錄,也不明顯。它包括使用算法的控制信息(所以你通常使用DECRYPT_CHAR()或DECRYPT_BINARY()來解密數據服務器端,而不指定使用哪種算法),提示(如果存在)和使用的IV,全部使用Base-64編碼進行編碼。提示基本上是免費的(任何人都可以使用GETHINT()函數來獲取提示,而不需要知道正確的密碼),但是它使用固定密鑰進行輕微加密存儲。所以,你原則上可以編寫C#代碼來解密數據,但是你必須準備好處理Triple-DES(TDES)或AES(128位)加密,而且你會必須瞭解數據格式的內部。