Release SDK 6.0.0

Added
-----

- The member can now be built with a substantially reduced code size
  using a compilation option.

- New context lifetime management APIs have been added to member to
  give callers more control of memory allocation.

- New member API `EpidClearRegisteredBasenames` has been added to
  clear registered basenames without recreating the member.

Changed
-------

- `EpidRegisterBaseName` was renamed to `EpidRegisterBasename` because
  basename is a single word.

- Command-line parsing library used by samples and tools has been
  replaced by Argtable3.

Deprecated
----------

- `EpidMemberCreate` has been deprecated. This API has been superseded
  by `EpidMemberGetSize` and `EpidMemberInit`.

- `EpidMemberDelete` has been deprecated. This API has been superseded
  by `EpidMemberDeinit`.

Removed
-------

- `size_optimized_release` build configuration has been removed.
  Use the compilation option to build member with reduced code size.

Known Issues
------------

- Only the SHA-256 hash algorithm is supported when using the SDK with
  the IBM TPM simulator due to a defect in version 532 of the
  simulator.

- Basenames are limited to 124 bytes in TPM mode.

- Scons build will not work natively on ARM. You can still build using
  `make` or cross compile.
489 files changed
tree: 3e5a28ff0664b6465fc4e54f81715cfa3c7213f4
  1. doc/
  2. epid/
  3. example/
  4. ext/
  5. parts-site/
  6. tools/
  7. CHANGELOG.md
  8. configure
  9. LICENSE.txt
  10. Makefile.in
  11. NOTICE.txt
  12. README.md
  13. SConstruct
README.md

Intel(R) EPID SDK

The Intel(R) Enhanced Privacy ID Software Development Kit

Intel(R) EPID SDK enables adding Intel(R) EPID support to applications and platforms.

Intel(R) EPID is a cryptographic protocol which enables the remote authentication of a trusted platform whilst preserving the user's privacy.

  • For a given public key there are many (e.g., millions) of private keys. The key holders form a group.

  • Any key holder may sign against the one public key.

  • No one can tell which private key signed the data. This is the privacy property.

You can use Intel(R) EPID as a foundational building block for a multitude of security solutions.

Prerequisites

What's New in This Release

See CHANGELOG.md.

Documentation

See doc/index.html to browse the html documentation.

License

See LICENSE.txt.

Math Primitives

The source code used for math primitives in the Intel(R) EPID SDK is a subset of the Intel(R) IPP Cryptography library (version 2017 Update 2) written in pure C and not optimized for performance. For higher performance, you can use the commercial version of the IPP Cryptography library, which is available at https://software.intel.com/articles/download-ipp-cryptography-libraries.

More information on the optimized versions of Intel(R) IPP Cryptography library, including mitigations for a potential side-channel issue are available at https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00060&languageid=en-fr.