CryptoSys API
Library Manual
CryptoSys
TM
API Manual
Function List
X-refs
Method List
Index
Error Codes
Contents
What is the CryptoSys API?
Introduction
Getting Started
Changes in this version
Changes in earlier versions
Conventions in this document
Copyright Notice
Background Basics
Block cipher algorithms
Block Cipher Modes and Initialization Vectors
Padding
Stream ciphers
One-way message digest (hash) functions
Notes on SHA-3
Message authentication code (MAC) functions
The Poly1305 message authentication algorithm
KMAC: KECCAK Message Authentication Code
XOF: eXtendable-Output Function
Authenticated Encryption with Additional Data (AEAD)
The cipher suite ASCON
Data Compression in Cryptography
Secure Random Number Generator
RNG Mechanisms
Techniques to add known security strength to the RNG process
User-supplied entropy (seeds)
A caution about insecure default algorithms
Installation
Win64 (X64) Platform
Detecting Win32 or X64 platform
Visual Basic or Visual Basic: VB6 vs VB.NET
VBA in 64-bit versions of Office
General Programming Issues
Storing and representing ciphertext
Converting strings to bytes and vice versa
Hexadecimal versus Bytes
Return Values
Using with Classic Visual Basic and VBA
Pre-dimensioning for VB
Zero-length byte arrays in VB6/VBA
Passing a reference to an empty byte array in VB6/VBA
Other Issues For VB6/VBA Users
Notes on VBA wrapper functions
Empty byte arrays
Using with ANSI C
Type Conversions
Compiling with C
Using With Borland C++
Cautions for C/C++ Users
ANSI C users must add one to this value...
Using with C++ (STL)
Using with .NET: C# and VB.NET
Combining bitwise options
Converting VB6 to VB.NET
Using with COM/ASP
'Hello world' programs
Common problems when encrypting
Specifying the algorithm and mode for generic block cipher functions
Padding schemes for block ciphers
Valid key and block sizes for block cipher algorithms
Extensions to block cipher functions for files
An interface for Authenticated Encryption with Associated Data (AEAD)
Correct sequence for AEAD incremental functions
Security Issues
Self-Tests
Optional Registry Settings
Technical Details
Compliance
References
VBA/C Function Summary
AEAD functions
Advanced Encryption Standard (AES) functions
Block cipher functions
Blowfish functions
Conversion functions
Cyclic Redundancy Check functions
Data Encryption Standard (DES) functions
Message Digest Hash functions
GCM functions
General functions
Message Authentication Code functions
MD5 Hash Algorithm functions
Padding functions
Password-based encryption functions
PC1 Stream Cipher functions
Pseudorandom functions (PRF)
Secure Random Number Generator (RNG) functions
Secure Hash Algorithm (SHA-1) functions
Secure Hash Algorithm (SHA-256) functions
Secure Hash Algorithm (SHA-3) functions
Stream cipher functions
Triple Data Encryption Algorithm (Triple DES) functions
Wipe functions
Extendable-output functions (XOF)
Compression functions
ActiveX Interface
Deprecated Functions
List of Functions
VBA Wrapper Functions
VBA Wrapper Function List
ActiveX Classes and Methods
.NET Classes and Methods
Cross-reference between Functions and .NET Methods
.NET Help File
Summary of .NET Classes
Aead Class
Aes128 Class
Aes192 Class
Aes256 Class
Blowfish Class
Cipher Class
CipherStream Class
Cnv Class
Compr Class
Crc Class
Des Class
Gcm Class
General Class
Hash Class
Mac Class
Md5 Class
Pbe Class
Pc1 Class
Prf Class
Rng Class
Sha1 Class
Sha256 Class
Sha3 Class
Tdea Class
Wipe Class
Xof Class
Zlib Class
List of .Net Methods
Enumerations in .NET
Error Codes
Changes in error codes in version 5.1
Acknowledgements
Index
Document Revision History
[
Contents
] [
Index
]
[
NEXT: What is the CryptoSys API?...
]