modSecurityTools 函式庫 |
風禹科技驗證有限公司 網站 提供 .Net 原始碼 |
說明
將指定的陣列採 DES 解密編碼轉換為數值物件
本函數之引數列表
引數 |
型態 |
位元組 |
選項 |
預設值 |
說明 |
objValue |
Object |
- |
必須 |
(無) |
欲解密之物件變數,大部分情況應為位元組陣列 |
desKey |
Byte() |
8 |
必須 |
(無) |
對稱演算法的秘密金鑰,請傳入 8 Bytes 位元組陣列,需與加密金鑰相符。 |
desIV |
Byte() |
8 |
必須 |
(無) |
對稱演算法的初始化向量,請傳入 8 Bytes 位元組陣列,需與加密金鑰相符。 |
nVarType |
VariantType |
4 |
可省略 |
Array Or Byte |
預設為位元組陣列,旗標值為 VB.NET 物件型態常數:
常數名 |
數值 |
說明 |
Empty |
0 |
Null 參考。 |
Null |
1 |
Null 物件。 |
Short |
2 |
表示 16 位元整數的整數型別,其值介於 -32768 和 32767 之間。 |
Integer |
3 |
表示 32 位元整數的整數型別,其值介於 -2147483648 和 2147483647 之間。 |
Single |
4 |
表示具有 7 數字精確度從 1.5 x 10 到大約 3.4 x 10 數值範圍的浮點型別。 |
Double |
5 |
表示具有 15-16 數字精確度從 5.0 x 10 到大約 1.7 x 10 數值範圍的浮點型別。 |
Currency |
6 |
貨幣,在 VB.NET 不使用此類別,僅供存取 COM 物件使用。 |
Date |
7 |
表示日期和時間值的型別。(0001 年 1 月 1 日 0:00:00 到 9999 年 12 月 31 日下午 11:59:59)。 |
String |
8 |
表示 Unicode 字元字串的密封類別型別。(0 至大約 20 億個 Unicode 字元)。 |
Object |
9 |
可以 Object 型別的變數加以儲存的任何型別。 |
Error |
10 |
錯誤碼,在 VB.NET 不使用此類別,僅供存取 COM 物件使用。 |
Boolean |
11 |
表示 true 或 false 的布林值的簡單型別。 |
Variant |
12 |
通用型態,在 VB.NET 改用 Object 類別,僅供存取 COM 物件使用。 |
DataObject |
13 |
DataObject,在 VB.NET 不使用此類別,僅供存取 COM 物件使用。 |
Decimal |
14 |
表示具有 28-29 個有效位數、從 1.0 x 10 到大約 7.9 x 10 數值範圍的簡單型別。 |
Byte |
17 |
表示不帶正負號的 8 位元整數的整數型別,其值介於 0 和 255 之間。 |
Char |
18 |
表示不帶正負號的 16 位元整數的整數型別,其值介於 0 和 65535 之間。System.TypeCode.Char 型別的可能值集合對應於 Unicode 字元集 (Character Set)。 |
Long |
20 |
表示 64 位元整數的整數型別,其值介於 -9223372036854775808 和 9223372036854775807 之間。 |
UserDefinedType |
36 |
User-defined 型別。結構的每個成員都有由其資料型別所決定的範圍,與其他成員的範圍無關。 |
Array |
8192 |
陣列。 |
|
bBigEndian |
Boolean |
1 |
可省略 |
False |
由於 Windows 採用 Little Endian ,故預設改依記憶體順序排列,欲輸出類同 Hex 先高位元後低位元者,則需設定 BigEndian 引數為 True |
傳回值
傳回指定之物件型別 (Object)
範例
Debug.Print(MyDESDecrypt(rtnObject, arrKey, arrIV, VariantType.Date))
更進一步
在 .Net 內已有 System.Security.Cryptography.DESCryptoServiceProvider 可轉換 DES 編碼,但由於只提供位元組陣列轉換,故配合個人需要另外撰寫通用轉換模組,此模組並非必要。
基本條件
Visual Studio .Net 2003 以後相容版本 | 需同時引用modStrTools模組 | Security.vb
請參閱
modSecurityTools 函式庫 | ByteToVariant | MyDESDecryptBytes