Sorry, you need to enable JavaScript to visit this website.

TinyCrypt

The TinyCrypt Library provides an implementation for constrained devices of a 

minimal set of standard cryptography primitives, as listed below. TinyCrypt's 

implementation differs in some aspects from the standard specifications for 

better serving applications targeting constrained devices (see the Limitations 

section for these differences). Note that some primitives depend on the 

availability of other primitives.  

 

 (*) SHA-256:

  Type of primitive: Hash function.

  Standard Specification: NIST FIPS PUB 180-4.

  Requires: --

 

 (*) HMAC-SHA256:

  Type of primitive: Message authentication code.

  Standard Specification: RFC 2104.

  Requires: SHA-256

 

 (*) HMAC-PRNG:

  Type of primitive: Pseudo-random number generator.

  Standard Specification: NIST SP 800-90A.

  Requires: SHA-256 and HMAC-SHA256.

 

 (*) AES-128:

  Type of primitive: Block cipher.

  Standard Specification: NIST FIPS PUB 197.

  Requires: --

 

 (*) AES-CBC mode:

  Type of primitive: Mode of operation.

  Standard Specification: NIST SP 800-38A.

  Requires: AES-128.

 

 (*) AES-CTR mode:

  Type of primitive: Mode of operation.

  Standard Specification: NIST SP 800-38A.

      Requires: AES-128.

 

================================================================================

 

Design Goals:

 

 -- Minimize the code size of each primitive. This means minimize the size of 

 the generic code. Various usages may require further features, optimizations 

 and treatments for specific threats that would increase the overall code size.

 

 -- Minimize the dependencies among primitive implementations. This means that 

 it is unnecessary to build and allocate object code for more primitives

 than the ones strictly required by the usage. In other words, you can select 

 in the Makefile only the primitives required by your application.

 

Please, read the documentation for more information on the supported

cryptographic primitives and the limitations of TinyCrypt library.

 

 

Project: