Xbase++ programming tools
PowerCrp library

PowerXpp, PowerSql, PowerCom, PowerWeb, PowerCrp, PowerUtl, DBM, DBA Windows

PowerCrp is an add-on library for cryptography application development in Xbase++. PowerCrp library is function-oriented and implements top-down modular style of programming. Functions and their parameters are very flexible, user-friendly, intuitive and easy to use.

PowerCrp library contains functions which implement a wide range of cryptographic algorithms used in various Internet standards. Their functionalities include cryptographic hash functions, message authentication codes (MAC), key derivation functions (KDF), one-time passwords (OTP), symmetric encryption, public and private key cryptography, key exchange, certificate handling, public key cryptography standards (PKCS) structures, and various utilities. PowerCrp functions implement cryptographic algorithms according to the respective RFC and NIST specifications.

PowerCrp functions encapsulate most of the functionalities of various cryptographic standards, which are defined as function parameters. The functions are generalized and automated. You don't need to know cryptography and its various algorithms and systems. Instead, use PowerCrp functions as building blocks to create fast and efficient programs with a minimum number of code lines and that use the minimum amount of memory resources.

PowerCrp library contains multiple modules listed in the following table.

Module Description
PowerCrpEnc Encryption
PowerCrpPKey Public/private key
PowerCrpCert Certificate

PowerCrp library supports Alaska Xbase++ V.1.8 and higher.

Complete documentation of PowerCrp library can be downloaded on the Download page.

PowerCrp Library Features
PowerCrpEnc Module
Hash Generate hash using various algorithms: md5, sha1, sha224, sha384, sha512, blake2b512, blake2s256, sm3, etc.
MAC Generate message authentication code (MAC) using various algorithms: HMAC, KMAC, CMAC, GMAC, Blake2 MAC, Poly1305 MAC, etc.
KDF Derive key using various key derivation functions (KDF): HMAC KDF, key-based KDF, Kerberos5 KDF, password-based KDF, one-step KDF, X942 KDF, etc.
OTP Generate one-time password (OTP) using S/KEY and HOTP algorithms.
Cipher Encrypt/decrypt data using various symmetric cipher algorithms: 3des, aes, aria, camellia, chacha20, seed, etc.
Encode DER (Distinguished Encoding Rules) encode/decode and DER/PEM convert.
PowerCrpPKey Module
Key generate Generate public and private key: RSA, DSA, DH, EC, X25519, X448, ED25519, ED448.
Key derive Derive secret key used in key exchange: DH, ECDH, X25519, X448.
Key encrypt Encrypt/decrypt data using public/private key: RSA, DSA, DH, EC, X25519, X448.
Key signature Sign/verify data using private/public key: RSA, DSA, ED25519, ED448.
PowerCrpCert Module
Certificate Retrieve various information of certificate (X509): text, public key, serial number, subject, issuer, signature, validity dates, etc.
PKCS Encrypt/decrypt data using various public key cryptography standards structures: CMS, PKCS7, PKCS8, PKCS12.