Frage : VB6 zur VB.NET Bekehrter Decryptfunktion

hallo jeder, benötige ich Hilfe, Code VB6 umzuwandeln. Ich bin in VB.Net programming.
This bin der Code vb6 neu;

thanks

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
Öffentlichkeit erklären Funktion CryptAcquireContext Bibliothek „advapi32.dll“ alias „CryptAcquireContextA“ (_
phProv als lang, ByVal pszContainer als lang, ByVal pszProvider als Schnur, _
ByVal dwProvType als lang, ByVal dwFlags als lang) als lang

Öffentlichkeit erklären Funktion CryptCreateHash Bibliothek „advapi32.dll“ (ByVal hProv als lang, _
ByVal algisch als lang, ByVal hKey als lang, ByVal dwFlags als lang, phHash als lang) als lang

Öffentlichkeit erklären Funktion CryptHashData Bibliothek „advapi32.dll“ (ByVal hHash als lang, _
ByVal pbData als Schnur, ByVal dwDataLen als lang, ByVal dwFlags als lang) als lang

Öffentlichkeit erklären Funktion CryptDeriveKey Bibliothek „advapi32.dll“ (_
ByVal hProv als lang, ByVal algisch als lang, ByVal hBaseData als lang, ByVal dwFlags als lang, _
phKey als lang) als lang

Öffentlichkeit erklären Funktion CryptDestroyHash Bibliothek „advapi32.dll“ (ByVal hHash als lang) als lang

Öffentlichkeit erklären Funktion CryptDestroyKey Bibliothek „advapi32.dll“ (ByVal hKey als lang) als lang

Öffentlichkeit erklären Funktion CryptEncrypt Bibliothek „advapi32.dll“ (ByVal hKey als lang, _
ByVal hHash als lang, ByVal Schluss als lang, ByVal dwFlags als lang, ByVal pbData als Schnur, _
pdwDataLen, wie lang, ByVal wie lang) wie lang dwBufLen

Öffentlichkeit erklären Funktion CryptDecrypt Bibliothek „advapi32.dll“ (ByVal hKey als lang, _
ByVal hHash als lang, ByVal Schluss als lang, ByVal dwFlags als lang, ByVal pbData als Schnur, _
als lang) als lang pdwDataLen

Öffentlichkeit erklären Funktion CryptReleaseContext Bibliothek „advapi32.dll“ (ByVal hProv als lang, _
ByVal dwFlags als lang) als lang

Öffentlichkeit erklären Funktion GetLastError Bibliothek „kernel32“ () als lang

'Konstanten für Funktionen der Kriptographie API
Privates Const CRYPT_NEWKEYSET = &H8
Privates Const MS_DEF_PROV = „Microsoft Base Cryptographic Provider v1.0“
Privates Const PROV_RSA_FULL = 1
Privates Const ALG_CLASS_DATA_ENCRYPT = 24576
Privates Const ALG_CLASS_HASH = 32768

Privates Const ALG_TYPE_ANY = 0
Privates Const ALG_TYPE_BLOCK = 1536
Privates Const ALG_TYPE_STREAM = 2048

Privates Const ALG_SID_RC2 = 2

Privates Const ALG_SID_RC4 = 1
Privates Const ALG_SID_SHA1 = 4
Privates Const ALG_SID_MD5 = 3
Privates Const CALG_SHA1 = ((ALG_CLASS_HASH oder ALG_TYPE_ANY) oder ALG_SID_SHA1)
Privates Const CALG_MD5 = ((ALG_CLASS_HASH oder ALG_TYPE_ANY) oder ALG_SID_MD5)
Privates Const CALG_RC2 = ((ALG_CLASS_DATA_ENCRYPT oder ALG_TYPE_BLOCK) oder ALG_SID_RC2)
Privates Const CALG_RC4 = ((ALG_CLASS_DATA_ENCRYPT oder ALG_TYPE_STREAM) oder ALG_SID_RC4)

Privates Const ENCRYPT_ALGORITHM = CALG_RC2
Privates Const ENCRYPT_BLOCK_SIZE = 1

Privates Const CRYPT_EXPORTABLE = 1

'verwendete, um zu spezifizieren, um keinen Salzwert bei der Ableitung des Schlüssels zu verwenden
Privates Const CRYPT_NO_SALT als lang = &H10

Private Funktion CryptoDecrypt (sInputBuffer als Schnur, sPassword als Schnur, ByRef sErrore als Schnur) als Schnur
Schwaches lHExchgKey als lang
Schwaches lHCryptprov als lang
Schwaches lHHash als lang
Schwaches lHkey als lang
Schwaches lResult als lang

Schwaches sProvider als Schnur

Schwaches sCryptBuffer als Schnur
Schwach als lang lCryptBufLen
lCryptPoint als lang verdunkeln

lPasswordPoint als lang verdunkeln
lPasswordCount als lang verdunkeln

   Auf Störung Goto- DecryptError
   
   'Handgriff an die Rückstellung CSP gelangen.
   sProvider = vbNullChar
   sProvider = MS_DEF_PROV u. vbNullChar
   Wenn nicht CBool (CryptAcquireContext (lHCryptprov, 0&, sProvider, PROV_RSA_FULL, 0)) Dann
      'Wenn es keinen Initialwertschlüsselbehälter dann gibt, ein using Markierungsfahnenfeld verursachen
      Wenn GetLastError = 0 dann
         Wenn nicht CBool (CryptAcquireContext (lHCryptprov, 0&, sProvider, PROV_RSA_FULL, CRYPT_NEWKEYSET)) Dann
              Goto- fertiges
         Beenden wenn
      Beenden wenn
   Beenden wenn
   
   'Einen Durcheinandergegenstand verursachen
   Wenn nicht CBool (CryptCreateHash (lHCryptprov, CALG_SHA1, 0, 0, lHHash)) Dann
         Goto- fertiges
   Beenden wenn
   
   'Im Kennworttext hacken
   Wenn nicht CBool (CryptHashData (lHHash, sPassword, Len (sPassword), 0)) Dann
         Goto- fertiges
   Beenden wenn
   
   'Einen Lernabschnittschlüssel vom Durcheinandergegenstand verursachen
   Wenn nicht CBool (CryptDeriveKey (lHCryptprov, ENCRYPT_ALGORITHM, lHHash, ByVal CRYPT_NO_SALT, lHkey)) Dann
         Goto- fertiges
   Beenden wenn
   
   'Den Durcheinandergegenstand zerstören.
   CryptDestroyHash (lHHash)
   lHHash = 0
   
   'sCryptBuffer für CryptDecrypt vorbereiten
   lCryptBufLen = Len (sInputBuffer)
   sCryptBuffer = Schnur (lCryptBufLen, vbNullChar)
   LSet sCryptBuffer = sInputBuffer
   
   'Decryptdaten
   Wenn nicht CBool (CryptDecrypt (lHkey, 0, 1, 0, sCryptBuffer, lCryptBufLen)) Dann
         Goto- fertiges
   Beenden wenn
   
   'Ausgangspuffer mit gerade entschlüsselten Daten gründen
   CryptoDecrypt = mittler (sCryptBuffer, 1, lCryptBufLen)
   
Fertig:
   
   'Lernabschnittschlüssel zerstören
   Wenn (lHkey) dann lResult = CryptDestroyKey (lHkey)
   
   'Schlüsselaustauschschlüsselhandgriff zerstören
   Wenn lHExchgKey dann CryptDestroyKey (lHExchgKey)
   
   'Durcheinandergegenstand zerstören
   Wenn lHHash dann CryptDestroyHash (lHHash)
   
   'Zusammenhangversorgerhandgriff freigeben
   Wenn lHCryptprov dann lResult = CryptReleaseContext (lHCryptprov, 0)
   
   Funktion herausnehmen
   
DecryptError:
   msgbox (GetLastError)

Ende Function

Antwort : VB6 zur VB.NET Bekehrter Decryptfunktion

„Was die korrekte Weise ist, die API-Funktionen zu definieren?“

Wie vorher angegeben, alle „zur ganzen Zahl“ „lang“ ändern.

Z.B. das erste von:

    Öffentlichkeit erklären Funktion CryptAcquireContext Bibliothek „advapi32.dll“ alias „CryptAcquireContextA“ (_
        phProv als lang, ByVal pszContainer als lang, ByVal pszProvider als Schnur, _
        ByVal dwProvType als lang, ByVal dwFlags als lang) als lang

Wird dieses:


    Öffentlichkeit erklären Funktion CryptAcquireContext Bibliothek „advapi32.dll“ alias „CryptAcquireContextA“ (_
        phProv als ganze Zahl, ByVal pszContainer als ganze Zahl, ByVal pszProvider als Schnur, _
        ByVal dwProvType als ganze Zahl, ByVal dwFlags als ganze Zahl) als ganze Zahl

Sicher sein, die lokalen Variablen außerdem zu ändern!

So diese Linie:

    Schwaches lHExchgKey als lang

Würde werden:

    Schwaches lHExchgKey als ganze Zahl
Weitere Lösungen  
 
programming4us programming4us