AOSP: Initial merge from upstream.
am: 9101fea97c

Change-Id: I8fdbc851da008b530a57592d2cb4fb3ecee4944f
tree: c8a7de8effa9b502175776f99e766fb29f93376f
  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.