函数参考


_Crypt_DeriveKey

用算法和密码创建密钥

#Include <Crypt.au3>
_Crypt_DeriveKey($vPassword, $iALG_ID [, $iHash_ALG_ID = $CALG_MD5 ] )

参数

$vPassword 要使用的密码
$iALG_ID 加密算法的 ID
$iHash_ALG_ID [可选参数] hash 算法的 ID 与密码 译注:关于 Hash 见下文注意部分

返回值

成功: 返回密钥句柄
设置 @error 为 0
失败: 返回 -1 并设置 @error:
1 - 无法创建 hash 对象
2 - 没有 hash 密码
3 - 无法生成密钥

注意/说明

密钥需要用 _Crypt_DestroyKey 销毁.
AES 算法不适用于 Windows 2000.

相关

_Crypt_DestroyKey, _Crypt_EncryptData, _Crypt_EncryptFile, _Crypt_DecryptData, _Crypt_DecryptFile

详情参考

在MSDN中搜索


示例/演示


#include <Crypt.au3>

Local $aStringsToEncrypt[6] = ["AutoIt", "SciTE", "Crypt", ".au3", 42, "42"]
Local $sOutput = ""

Local $hKey = _Crypt_DeriveKey("CryptPassword", $CALG_RC4) ; Declare a password string and algorithm to create a cryptographic key.

For $iWord In $aStringsToEncrypt
    $sOutput &= $iWord & @TAB & " = " & _Crypt_EncryptData($iWord, $hKey, $CALG_USERKEY) & @CRLF ; Encrypt the text with the cryptographic key.
Next

MsgBox(4096, "Encrypted data", $sOutput)

_Crypt_DestroyKey($hKey) ; Destroy the cryptographic key.