CryptoSys API Library Manual

DES_Init

Initialises the context with the key, direction and mode ready for repeated operations of the DES function. The key and IV data are provided in byte arrays.

VBA/VB6 Syntax

Public Declare Function DES_Init Lib "diCryptoSys.dll" (ByRef lpKey As Byte, ByVal bEncrypt As Boolean, ByVal strMode As String, ByRef lpInitV As Byte) As Long

hContext = DES_Init(abKey, bEncrypt, strMode, abInitV)

C/C++ Syntax

long __stdcall DES_Init(const unsigned char *lpKey, int fEncrypt, const char *szMode, const unsigned char *lpIV);

Parameters

lpKey
[in] array containing the key.
fEncrypt
[in] direction flag: set as ENCRYPT (True) to encrypt or DECRYPT (False) to decrypt.
szMode
[in] specifying the confidentiality mode:
"ECB" for Electronic Codebook mode,
"CBC" for Cipher Block Chaining mode,
"CFB" for 64-bit Cipher Feedback mode,
"OFB" for Output Feedback mode, or
"CTR" for Counter mode.
lpIV
[in] array containing the initialization vector (IV), or zero (0) for ECB mode.

Returns (VBA/C)

Non-zero handle of the context hContext to be used in subsequent calls to the functions DES_Update, DES_UpdateHex or DES_Final. Returns zero if an error occurs.

.NET Equivalent

Des.InitEncrypt Method (Byte[], Mode, Byte[])
Des.InitDecrypt Method (Byte[], Mode, Byte[])

Remarks

The key lpKey must be exactly 24 bytes long and the IV, if required, exactly 8 bytes long. Unlike most other functions in this API, DES_Init returns zero if an error occurs. It is important to check that the value of hContext returned is not equal to zero before calling a DES_Update function.

Example

See DES_Update.

See Also

DES_InitHex DES_UpdateHex DES_Update DES_Final

[Contents] [Index]

[PREV: DES_HexMode...]   [Contents]   [Index]   
   [NEXT: DES_InitError...]

Copyright © 2001-24 D.I. Management Services Pty Ltd. All rights reserved. Generated 2024-01-07T07:42:00Z.