DLL命令表
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
|
.版本 2 .DLL命令 CryptCreateHash, 整數(shù)型, "advapi32.dll", "CryptCreateHash", 公開 .參數(shù) hProv, 整數(shù)型 .參數(shù) Algid, 整數(shù)型 .參數(shù) hKey, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型 .參數(shù) phHash, 整數(shù)型, 傳址 .DLL命令 CryptDestroyHash, 整數(shù)型, "advapi32.dll", "CryptDestroyHash", 公開 .參數(shù) hHash, 整數(shù)型, 傳址 .DLL命令 CryptGetHashParam, 整數(shù)型, "advapi32.dll", "CryptGetHashParam", 公開 .參數(shù) hHash, 整數(shù)型 .參數(shù) dwParam, 整數(shù)型 .參數(shù) pByte, 字節(jié)集 .參數(shù) pdwDataLen, 整數(shù)型, 傳址 .參數(shù) dwFlags, 整數(shù)型 .DLL命令 CryptReleaseContext, 整數(shù)型, "advapi32.dll", "CryptReleaseContext", 公開 .參數(shù) hProv, 整數(shù)型, 傳址 .參數(shù) dwFlags, 整數(shù)型, 傳址 .DLL命令 CryptHashData, 整數(shù)型, "advapi32.dll", "CryptHashData", 公開 .參數(shù) hHash, 整數(shù)型 .參數(shù) pbData, 字節(jié)集, 傳址 .參數(shù) dwDataLen, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型 .DLL命令 CryptAcquireContextA, 整數(shù)型, "advapi32.dll", "CryptAcquireContextA", 公開 .參數(shù) phProv, 整數(shù)型, 傳址 .參數(shù) pszContainer, 文本型 .參數(shù) pszProvider, 文本型 .參數(shù) dwProvType, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型 |
生成注冊碼的代碼
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
36
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
|
.版本 2 .支持庫 dp1 .程序集 窗口程序集1 .子程序 _生成按鈕_被單擊 .局部變量 sj1, 文本型 .局部變量 sj2, 文本型 .局部變量 sj3, 文本型 .局部變量 臨時文本, 文本型 .局部變量 臨時時間, 日期時間型 .如果 (類型組合框.現(xiàn)行選中項 = 0) 臨時時間 = [2080年12月31日] .否則 臨時時間 = 日期框.今天 .如果結(jié)束 sj1 = 到文本 (取年份 (臨時時間)) sj2 = 到文本 (取月份 (臨時時間)) sj2 = 選擇 (取文本長度 (sj2) = 1, “0” + sj2, sj2) sj3 = 到文本 (取日 (臨時時間)) sj3 = 選擇 (取文本長度 (sj3) = 1, “0” + sj3, sj3) 臨時文本 = 到文本 (左移 (到數(shù)值 (sj1 + sj2 + sj3), 4)) 臨時文本 = 進(jìn)制_十到十六 (到數(shù)值 (臨時文本)) 臨時文本 = 臨時文本 + 進(jìn)制_十到十六 (取文本長度 (臨時文本) + 1) 臨時文本 = 到大寫 (取數(shù)據(jù)摘要 (到字節(jié)集 (機(jī)器碼編輯框.內(nèi)容 + 校驗_取sha1 (到字節(jié)集 (機(jī)器碼編輯框.內(nèi)容))))) + 臨時文本 注冊碼編輯框.內(nèi)容 = 臨時文本 置剪輯板文本 (注冊碼編輯框.內(nèi)容) .子程序 _類型組合框_列表項被選擇 .如果 (類型組合框.現(xiàn)行選中項 = 0) 日期框.禁止 = 真 .否則 日期框.禁止 = 假 .如果結(jié)束 .子程序 進(jìn)制_十到十六, 文本型, 公開, 運算_十進(jìn)制到十六進(jìn)制 .參數(shù) 十進(jìn)制數(shù), 整數(shù)型 返回 (取十六進(jìn)制文本 (十進(jìn)制數(shù))) .子程序 校驗_取sha1, 文本型, 公開, 返回40位的校驗數(shù)據(jù) .參數(shù) 字節(jié)集數(shù)據(jù), 字節(jié)集, , 要取數(shù)據(jù)摘要的字節(jié)集 返回 (到小寫 (MD過程 (字節(jié)集數(shù)據(jù), 32772, 20))) .子程序 MD過程, 文本型 .參數(shù) x, 字節(jié)集 .參數(shù) 種類, 整數(shù)型 .參數(shù) 長度, 整數(shù)型 .局部變量 hCryptProv, 整數(shù)型 .局部變量 hKey, 整數(shù)型 .局部變量 hHash, 整數(shù)型 .局部變量 pbBuffer, 字節(jié)集 .局部變量 cbHash, 整數(shù)型 .局部變量 rgbHash, 字節(jié)集 .局部變量 rgbDigits, 字節(jié)集 .局部變量 局_MD5, 字節(jié)集 .局部變量 b, 整數(shù)型 .局部變量 i, 整數(shù)型 .局部變量 len, 整數(shù)型 .如果 (CryptAcquireContextA (hCryptProv, “”, “”, 1, -268435456) = 0) .如果真 (CryptAcquireContextA (hCryptProv, “”, “”, 1, 0) = 0) 返回 (“”) .如果真結(jié)束 .否則 .如果 (CryptCreateHash (hCryptProv, 種類, hKey, 0, hHash) = 0) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 pbBuffer = x len = 取字節(jié)集長度 (x) .如果 (CryptHashData (hHash, pbBuffer, len, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbHash = 取空白字節(jié)集 (長度) cbHash = 長度 .如果 (CryptGetHashParam (hHash, 2, rgbHash, cbHash, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbDigits = 到字節(jié)集 (“0123456789ABCDEF”) 局_MD5 = 取空白字節(jié)集 (長度 × 2) .變量循環(huán)首 (0, cbHash - 1, 1, i) b = rgbHash [i + 1] 局_MD5 [i × 2 + 1] = rgbDigits [右移 (b, 4) + 1] 局_MD5 [i × 2 + 2] = rgbDigits [位與 (b, 15) + 1] .變量循環(huán)尾 () CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) .如果結(jié)束 .如果結(jié)束 .如果結(jié)束 .如果結(jié)束 返回 (到文本 (局_MD5)) |
運行結(jié)果:
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對服務(wù)器之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接