2013-05-27 2 views
1

VB6에서 암호화를 위해 ChilkatCrypt2를 사용했습니다. 이제 .NET에서 System.Security.Cryptography를 사용하려고합니다.VB6에서 .NET으로 암호화 변환

내가 사용 :

Public Function Encripta(pTexto As String, pChave As String, pModo As Byte) As String 
    Dim vMD5 As New ChilkatCrypt2 
    vMD5.UnlockComponent "..................." 
    vMD5.Charset = "utf-8" 
    vMD5.KeyLength = 128 
    vMD5.CryptAlgorithm = "rijndael" 
    vMD5.SecretKey = vMD5.GenerateSecretKey(pChave) 
    vMD5.EncodingMode = "hex" 
    If pModo = 1 Then 
     Encripta = vMD5.EncryptStringENC(pTexto) 
    Else 
     Encripta = vMD5.DecryptStringENC(pTexto) 
    End If 
    Set vMD5 = Nothing 
End Function 

사람이 기존의 암호화 된 값이 제대로 해독 할 수 있도록 나를 .NET (VB 또는 C#)에서이를 재 작성 할 수 있습니다. 필자는 매개 변수 동등성을 파악할 수 없습니다.

+0

상호 운용성은 'GenerateSecretKey'의 공개 및 이식성 여부에 따라 결정됩니다. –

+0

안녕 Alex, GenerateSecretKey (str As String) Variant로 문자열을 KeyLength 속성의 현재 값과 동일한 비트 수를 가진 바이트 배열로 해시합니다. 예를 들어 KeyLength가 128 비트이면 16 바이트 배열이 반환됩니다. 이것은 SecretKey 속성을 설정하는 데 사용할 수 있습니다. 해독하기 위해서는 SecretKey가 정확히 일치해야합니다. "암호 기반"암호화를 사용하려면이 메서드에 암호를 전달하여 이진 비밀 키를 생성 한 다음 SecretKey 속성에 할당하면됩니다. – user1241433

+0

http://www.chilkatsoft.com/refdoc/xChilkatCrypt2Ref.html – user1241433

답변

0

jac이 말했듯이.
참고 : .NET 구성 요소가 지원합니다.

관련 문제