Skip to main content

Before you begin

To better understand this documentation, review the following commonly used terms:

  • NanoCAP: An API layer that requests specific cryptographic operations to be executed by the underlying operator implementations. This API is agnostic to crypto implementations and does not include core crypto API dependencies or definitions.

  • Operator: A cryptographic algorithm implementation that follows a specific set of rules, which sup- ports an easy operator API integration with NanoCAP.

Supported algorithms

NanoCAP has a predefined set of supported algorithms and key lengths. When an operator is created, NanoCAP will verify the operator's algorithm type.

  • If the algorithm is not on the supported list, then the operator creation process will fail.

  • When loading or generating keys, NanoCAP will verify compliance with the algorithm-specific key length restrictions.

Review the following table of supported algorithms and key length:

Algorithm

Allowed key length (in bytes)

MD2

Not applicable

MD4

Not applicable

MD5

Not applicable

SHA1

Not applicable

SHA224

Not applicable

SHA256

Not applicable

SHA384

Not applicable

SHA512

Not applicable

HMAC

Not applicable

AES-ECB

{ 16, 24, 32 }

AES-CBC

{ 16, 24, 32 }

AES-CFB

{ 16, 24, 32 }

AES-OFB

{ 16, 24, 32 }

AES-CTR

{ 16, 24, 32 }

AES-GCM

{ 16, 24, 32 }

AES-CCM

{ 16, 24, 32 }

AES-XTS

{ 32, 64 }

AES-EAX

{ 16, 24, 32 }

TDES-ECB

24

TDEC-CBC

24

ARC2-CBC

1 < n < 128

ARC4

5 < n < 256

RC5-CBC

5 < n < 255

AES-CMAC

{ 16, 24, 32 }

AES-XCBC

{ 16, 24, 32 }

POLY1305

32

CHACHA20

32

CHACHA20-POLY1305 AEAD

32

HMAC-KDF

Not applicable

BLOWFISH-CBC

4 < n < 56

CTR-DRBG-AES

Not applicable

DRBG-FIPS186

Not applicable

DH

Not applicable

RSA

{ 128, 256, 384, 512 }

DSA

Not applicable

ECC-P192

Not applicable

ECC-P224

Not applicable

ECC-P256

Not applicable

ECC-P384

Not applicable

ECC-P521

Not applicable

ECC-X25519

Not applicable

ECC-X448

Not applicable

ECC-ED25519

Not applicable

ECC-ED448

Not applicable