与えられた鍵でデータを暗号化します。
#Include <Crypt.au3>
_Crypt_EncryptData($vData, $vCryptKey, $iALG_ID[, $fFinal = True])
パラメータ
$vData | 暗号化/復号化するデータ |
$vCryptKey | パスワード。CALG_USERKEYフラグが指定されていた場合は鍵のハンドル。 |
$iALG_ID | 使用するアルゴリズム |
$fFinal | [オプション] データが全データの一部だけの場合はFalse |
返し値
成功: | 暗号化されたデータを返します |
@errorを0に設定します | |
失敗: | -1を返し、@errorを設定します: |
1 - 鍵を作成できません | |
2 - バッファの終了に失敗 | |
3 - データの暗号化に失敗 |
注意
入力に依らずバイナリ列を返します。
関連
_Crypt_DecryptData, _Crypt_DeriveKey, _Crypt_EncryptFile
こちらも参照
MSDNライブラリでCryptEncryptを検索して下さい。
例
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>
#include <WindowsConstants.au3>
#include <Crypt.au3>
#include <WinAPI.au3>
; リアルタイムのRC4暗号化の例
$hWnd=GUICreate("Realtime Encrypting",400,300,-1)
$hInputEdit=GUICtrlCreateEdit("",0,0,400,150,$ES_WANTRETURN)
$hOutputEdit=GUICtrlCreateEdit("",0,150,400,150,$ES_READONLY)
GUIRegisterMsg($WM_COMMAND,"WM_COMMAND")
GUISetState(@SW_SHOW)
; パフォーマンス最適化のためライブラリを開始し、鍵を作成
_Crypt_Startup()
$hKey=_Crypt_DeriveKey("SomePassword",$CALG_RC4)
Do
$msg=GUIGetMsg()
Until $msg=$GUI_EVENT_close
_Crypt_DestroyKey($hKey)
_Crypt_Shutdown()
Func WM_COMMAND($hWinHandle,$iMsg,$wParam,$lParam)
; 入力ボクッスで何か変更があった場合
If _WinAPI_HiWord($wParam)=$EN_CHANGE And _WINAPI_LoWord($wParam)=$hInputEdit Then
$bEncrypted=_Crypt_EncryptData(GUICtrlRead($hInputEdit),$hKey,$CALG_USERKEY)
GUICtrlSetData($hOutputEdit,$bEncrypted)
EndIf
EndFunc