2012-01-06 3 views
1

Informix 함수 ENCRYPT_TDES를 사용하여 암호화 된 데이터가있는 Informix 데이터베이스의 데이터가 있습니다. 데이터를 SQL Server 2008로 가져 오면 Informix의 실행중인 인스턴스에 더 이상 액세스 할 수 없습니다. 해당 데이터의 암호를 해독하기 위해 C# 또는 VB.NET 함수를 작성해야합니다. 누구나 그것을 해독하는 C# 함수를 작성하는 방법을 알고 있습니까?C# Informix ENCRYPT_TDES 함수의 암호 해독을위한 Triple DES 암호화

+0

암호화 클래스가 Informix 데이터베이스가 코드를 어떻게 암호화했는지 이해하고 있다고 가정하십니까? 또한 전에 informix 데이터베이스에서 코드를 어떻게 암호화 했습니까? 당신이 데이터를 가지고 있다고 말할 때 이것은 당신의 데이터입니까? 아니면 당신이 불법적으로 당신이 건너 온 데이터를 크래킹하려고합니까? – MethodMan

+0

동료를 위해 데이터베이스 변환을 수행하며 동료 중 한 명이 Informax에서 MS-SQL으로 변환했습니다. 그가 내일 일하러 올 때 나는 그를 여기에 올리게 할 것이다. –

+0

@ ScottChamberlain 감사합니다. DJ KRAZE 아니, 내 회사 데이터베이스이고 암호화 된 암호가 있습니다. 난 그냥 MSSQL 함수 또는 C#을 사용하여 해독하는 방법이 필요합니다. –

답변

0

암호화 된 데이터에 대해 ENCRYPT_TDES 또는 ENCRYPT_AES를 사용하여 데이터를 저장하는 방법은 문서화되어 있지 않으며 명확하지 않습니다. 여기에는 알고리즘이 사용 된 제어 정보가 포함되어 있으므로 (사용 된 알고리즘을 지정하지 않고 DECRYPT_CHAR() 또는 DECRYPT_BINARY()를 사용하여 데이터 서버 측을 정상적으로 해독 할 수 있음), 힌트 (있는 경우) 및 사용 된 IV 모두 Base-64 인코딩으로 인코딩됩니다. 힌트는 본질적으로 자유롭게 사용할 수 있습니다 (누구든지 올바른 암호를 모른 채 데이터에 GETHINT() 함수를 사용하여 힌트를 얻을 수 있음). 그러나 고정 키로 가볍게 암호화되어 저장됩니다.

그렇다면 데이터를 해독하기 위해 원칙적으로 C# 코드를 작성할 수 있지만 TDES (Triple-DES) 또는 AES (128 비트) 암호화를 처리 할 준비가되어 있어야합니다. 데이터 형식의 내부를 이해해야합니다.