Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 1 | |
| 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| 3 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| 4 | |
Gilles Peskine | 89f0a53 | 2019-01-31 11:47:57 +0100 | [diff] [blame] | 5 | <html xmlns="http://www.w3.org/1999/xhtml"> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 6 | <head> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 7 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 8 | <title>PSA Cryptography API 1.0 — PSA Crypto API 1.0.0 documentation</title> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 9 | <link rel="stylesheet" href="_static/alabaster.css" type="text/css" /> |
| 10 | <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 11 | <script type="text/javascript"> |
| 12 | var DOCUMENTATION_OPTIONS = { |
| 13 | URL_ROOT: './', |
| 14 | VERSION: '1.0.0', |
| 15 | COLLAPSE_INDEX: false, |
| 16 | FILE_SUFFIX: '.html', |
| 17 | HAS_SOURCE: true, |
| 18 | SOURCELINK_SUFFIX: '.txt' |
| 19 | }; |
| 20 | </script> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 21 | <script type="text/javascript" src="_static/jquery.js"></script> |
| 22 | <script type="text/javascript" src="_static/underscore.js"></script> |
| 23 | <script type="text/javascript" src="_static/doctools.js"></script> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 24 | <link rel="index" title="Index" href="genindex.html" /> |
| 25 | <link rel="search" title="Search" href="search.html" /> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 26 | <link rel="next" title="Introduction" href="overview/intro.html" /> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 27 | |
| 28 | <link rel="stylesheet" href="_static/custom.css" type="text/css" /> |
| 29 | |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 30 | <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> |
| 31 | |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 32 | </head> |
| 33 | <body> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 34 | |
| 35 | |
| 36 | <div class="document"> |
| 37 | <div class="documentwrapper"> |
| 38 | <div class="bodywrapper"> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 39 | <div class="body" role="main"> |
| 40 | |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 41 | <div class="section" id="psa-cryptography-api-version"> |
| 42 | <h1>PSA Cryptography API 1.0</h1> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 43 | <div class="toctree-wrapper compound"> |
| 44 | <ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 45 | <li class="toctree-l1"><a class="reference internal" href="overview/intro.html">Introduction</a></li> |
| 46 | <li class="toctree-l1"><a class="reference internal" href="overview/goals.html">Design goals</a><ul> |
| 47 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#suitable-for-constrained-devices">Suitable for constrained devices</a></li> |
| 48 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#a-keystore-interface">A keystore interface</a></li> |
| 49 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#optional-isolation">Optional isolation</a></li> |
| 50 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#choice-of-algorithms">Choice of algorithms</a></li> |
| 51 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#ease-of-use">Ease of use</a></li> |
| 52 | <li class="toctree-l2"><a class="reference internal" href="overview/goals.html#example-use-cases">Example use cases</a><ul> |
| 53 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#network-security-tls">Network Security (TLS)</a></li> |
| 54 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#secure-storage">Secure Storage</a></li> |
| 55 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#network-credentials">Network Credentials</a></li> |
| 56 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#device-pairing">Device Pairing</a></li> |
| 57 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#secure-boot">Secure Boot</a></li> |
| 58 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#attestation">Attestation</a></li> |
| 59 | <li class="toctree-l3"><a class="reference internal" href="overview/goals.html#factory-provisioning">Factory Provisioning</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 60 | </ul> |
| 61 | </li> |
| 62 | </ul> |
| 63 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 64 | <li class="toctree-l1"><a class="reference internal" href="overview/functionality.html">Functionality overview</a><ul> |
| 65 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#library-management">Library management</a></li> |
| 66 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#key-management">Key management</a><ul> |
| 67 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#volatile-keys">Volatile keys</a></li> |
| 68 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#persistent-keys">Persistent keys</a></li> |
| 69 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#key-identifiers">Key identifiers</a></li> |
| 70 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#recommendations-of-minimum-standards-for-key-management">Recommendations of minimum standards for key management</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 71 | </ul> |
| 72 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 73 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#usage-policies">Usage policies</a></li> |
| 74 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#symmetric-cryptography">Symmetric cryptography</a><ul> |
| 75 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#single-part-functions">Single-part Functions</a></li> |
| 76 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#multi-part-operations">Multi-part operations</a></li> |
| 77 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#message-digests-hashes">Message digests (Hashes)</a></li> |
| 78 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#message-authentication-codes-macs">Message authentication codes (MACs)</a></li> |
| 79 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#encryption-and-decryption">Encryption and decryption</a></li> |
| 80 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#authenticated-encryption-aead">Authenticated encryption (AEAD)</a></li> |
| 81 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#key-derivation">Key derivation</a></li> |
| 82 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#example-of-the-symmetric-cryptography-api">Example of the symmetric cryptography API</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 83 | </ul> |
| 84 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 85 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#asymmetric-cryptography">Asymmetric cryptography</a><ul> |
| 86 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#asymmetric-encryption">Asymmetric encryption</a></li> |
| 87 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#hash-and-sign">Hash-and-sign</a></li> |
| 88 | <li class="toctree-l3"><a class="reference internal" href="overview/functionality.html#key-agreement">Key agreement</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 89 | </ul> |
| 90 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 91 | <li class="toctree-l2"><a class="reference internal" href="overview/functionality.html#randomness-and-key-generation">Randomness and key generation</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 92 | </ul> |
| 93 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 94 | <li class="toctree-l1"><a class="reference internal" href="overview/sample-arch.html">Sample architectures</a><ul> |
| 95 | <li class="toctree-l2"><a class="reference internal" href="overview/sample-arch.html#single-partition-architecture">Single-partition architecture</a></li> |
| 96 | <li class="toctree-l2"><a class="reference internal" href="overview/sample-arch.html#cryptographic-token-and-single-application-processor">Cryptographic token and single-application processor</a></li> |
| 97 | <li class="toctree-l2"><a class="reference internal" href="overview/sample-arch.html#cryptoprocessor-with-no-key-storage">Cryptoprocessor with no key storage</a></li> |
| 98 | <li class="toctree-l2"><a class="reference internal" href="overview/sample-arch.html#multi-client-cryptoprocessor">Multi-client cryptoprocessor</a></li> |
| 99 | <li class="toctree-l2"><a class="reference internal" href="overview/sample-arch.html#multi-cryptoprocessor-architecture">Multi-cryptoprocessor architecture</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 100 | </ul> |
| 101 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 102 | <li class="toctree-l1"><a class="reference internal" href="overview/conventions.html">Library conventions</a><ul> |
| 103 | <li class="toctree-l2"><a class="reference internal" href="overview/conventions.html#error-handling">Error handling</a><ul> |
| 104 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#return-status">Return status</a></li> |
| 105 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#behavior-on-error">Behavior on error</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 106 | </ul> |
| 107 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 108 | <li class="toctree-l2"><a class="reference internal" href="overview/conventions.html#parameter-conventions">Parameter conventions</a><ul> |
| 109 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#pointer-conventions">Pointer conventions</a></li> |
| 110 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#input-buffer-sizes">Input buffer sizes</a></li> |
| 111 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#output-buffer-sizes">Output buffer sizes</a></li> |
| 112 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#overlap-between-parameters">Overlap between parameters</a></li> |
| 113 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#stability-of-parameters">Stability of parameters</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 114 | </ul> |
| 115 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 116 | <li class="toctree-l2"><a class="reference internal" href="overview/conventions.html#key-types-and-algorithms">Key types and algorithms</a><ul> |
| 117 | <li class="toctree-l3"><a class="reference internal" href="overview/conventions.html#structure-of-key-and-algorithm-types">Structure of key and algorithm types</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 118 | </ul> |
| 119 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 120 | <li class="toctree-l2"><a class="reference internal" href="overview/conventions.html#concurrent-calls">Concurrent calls</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 121 | </ul> |
| 122 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 123 | <li class="toctree-l1"><a class="reference internal" href="overview/implementation.html">Implementation considerations</a><ul> |
| 124 | <li class="toctree-l2"><a class="reference internal" href="overview/implementation.html#implementation-specific-aspects-of-the-interface">Implementation-specific aspects of the interface</a><ul> |
| 125 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#implementation-profile">Implementation profile</a></li> |
| 126 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#implementation-specific-types">Implementation-specific types</a></li> |
| 127 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#implementation-specific-macros">Implementation-specific macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 128 | </ul> |
| 129 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 130 | <li class="toctree-l2"><a class="reference internal" href="overview/implementation.html#porting-to-a-platform">Porting to a platform</a><ul> |
| 131 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#platform-assumptions">Platform assumptions</a></li> |
| 132 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#platform-specific-types">Platform-specific types</a></li> |
| 133 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#cryptographic-hardware-support">Cryptographic hardware support</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 134 | </ul> |
| 135 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 136 | <li class="toctree-l2"><a class="reference internal" href="overview/implementation.html#security-requirements-and-recommendations">Security requirements and recommendations</a><ul> |
| 137 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#error-detection">Error detection</a></li> |
| 138 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#indirect-object-references">Indirect object references</a></li> |
| 139 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#memory-cleanup">Memory cleanup</a></li> |
| 140 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#managing-key-material">Managing key material</a></li> |
| 141 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#safe-outputs-on-error">Safe outputs on error</a></li> |
| 142 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#attack-resistance">Attack resistance</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 143 | </ul> |
| 144 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 145 | <li class="toctree-l2"><a class="reference internal" href="overview/implementation.html#other-implementation-considerations">Other implementation considerations</a><ul> |
| 146 | <li class="toctree-l3"><a class="reference internal" href="overview/implementation.html#philosophy-of-resource-management">Philosophy of resource management</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 147 | </ul> |
| 148 | </li> |
| 149 | </ul> |
| 150 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 151 | <li class="toctree-l1"><a class="reference internal" href="overview/usage.html">Usage considerations</a><ul> |
| 152 | <li class="toctree-l2"><a class="reference internal" href="overview/usage.html#security-recommendations">Security recommendations</a><ul> |
| 153 | <li class="toctree-l3"><a class="reference internal" href="overview/usage.html#always-check-for-errors">Always check for errors</a></li> |
| 154 | <li class="toctree-l3"><a class="reference internal" href="overview/usage.html#shared-memory-and-concurrency">Shared memory and concurrency</a></li> |
| 155 | <li class="toctree-l3"><a class="reference internal" href="overview/usage.html#cleaning-up-after-use">Cleaning up after use</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 156 | </ul> |
| 157 | </li> |
| 158 | </ul> |
| 159 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 160 | <li class="toctree-l1"><a class="reference internal" href="api/library/index.html">Library management reference</a><ul> |
| 161 | <li class="toctree-l2"><a class="reference internal" href="api/library/status.html">PSA status codes</a><ul> |
| 162 | <li class="toctree-l3"><a class="reference internal" href="api/library/status.html#status-type">Status type</a></li> |
| 163 | <li class="toctree-l3"><a class="reference internal" href="api/library/status.html#success-codes">Success codes</a></li> |
| 164 | <li class="toctree-l3"><a class="reference internal" href="api/library/status.html#error-codes">Error codes</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 165 | </ul> |
| 166 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 167 | <li class="toctree-l2"><a class="reference internal" href="api/library/library.html">PSA Crypto library</a><ul> |
| 168 | <li class="toctree-l3"><a class="reference internal" href="api/library/library.html#api-version">API version</a></li> |
| 169 | <li class="toctree-l3"><a class="reference internal" href="api/library/library.html#library-initialization">Library initialization</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 170 | </ul> |
| 171 | </li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 172 | </ul> |
| 173 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 174 | <li class="toctree-l1"><a class="reference internal" href="api/keys/index.html">Key management reference</a><ul> |
| 175 | <li class="toctree-l2"><a class="reference internal" href="api/keys/attributes.html">Key attributes</a><ul> |
| 176 | <li class="toctree-l3"><a class="reference internal" href="api/keys/attributes.html#attribute-types">Attribute types</a></li> |
| 177 | <li class="toctree-l3"><a class="reference internal" href="api/keys/attributes.html#managing-attributes">Managing attributes</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 178 | </ul> |
| 179 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 180 | <li class="toctree-l2"><a class="reference internal" href="api/keys/locations.html">Key locations</a><ul> |
| 181 | <li class="toctree-l3"><a class="reference internal" href="api/keys/locations.html#key-lifetimes">Key lifetimes</a></li> |
| 182 | <li class="toctree-l3"><a class="reference internal" href="api/keys/locations.html#key-identifiers">Key identifiers</a></li> |
| 183 | <li class="toctree-l3"><a class="reference internal" href="api/keys/locations.html#attribute-accessors">Attribute accessors</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 184 | </ul> |
| 185 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 186 | <li class="toctree-l2"><a class="reference internal" href="api/keys/types.html">Key types</a><ul> |
| 187 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#key-categories">Key categories</a></li> |
| 188 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#symmetric-keys">Symmetric keys</a></li> |
| 189 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#rsa-keys">RSA keys</a></li> |
| 190 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#elliptic-curve-keys">Elliptic Curve keys</a></li> |
| 191 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#diffie-hellman-keys">Diffie Hellman keys</a></li> |
| 192 | <li class="toctree-l3"><a class="reference internal" href="api/keys/types.html#attribute-accessors">Attribute accessors</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 193 | </ul> |
| 194 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 195 | <li class="toctree-l2"><a class="reference internal" href="api/keys/usage.html">Key policies</a><ul> |
| 196 | <li class="toctree-l3"><a class="reference internal" href="api/keys/usage.html#key-usage-flags">Key usage flags</a></li> |
| 197 | <li class="toctree-l3"><a class="reference internal" href="api/keys/usage.html#attribute-accessors">Attribute accessors</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 198 | </ul> |
| 199 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 200 | <li class="toctree-l2"><a class="reference internal" href="api/keys/algorithms.html">Algorithms</a><ul> |
| 201 | <li class="toctree-l3"><a class="reference internal" href="api/keys/algorithms.html#algorithm-categories">Algorithm categories</a></li> |
| 202 | <li class="toctree-l3"><a class="reference internal" href="api/keys/algorithms.html#attribute-accessors">Attribute accessors</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 203 | </ul> |
| 204 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 205 | <li class="toctree-l2"><a class="reference internal" href="api/keys/management.html">Key management functions</a><ul> |
| 206 | <li class="toctree-l3"><a class="reference internal" href="api/keys/management.html#key-creation">Key creation</a></li> |
| 207 | <li class="toctree-l3"><a class="reference internal" href="api/keys/management.html#key-destruction">Key destruction</a></li> |
| 208 | <li class="toctree-l3"><a class="reference internal" href="api/keys/management.html#key-export">Key export</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 209 | </ul> |
| 210 | </li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 211 | </ul> |
| 212 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 213 | <li class="toctree-l1"><a class="reference internal" href="api/ops/index.html">Cryptographic operation reference</a><ul> |
| 214 | <li class="toctree-l2"><a class="reference internal" href="api/ops/hashes.html">Message digests</a><ul> |
| 215 | <li class="toctree-l3"><a class="reference internal" href="api/ops/hashes.html#hash-algorithms">Hash algorithms</a></li> |
| 216 | <li class="toctree-l3"><a class="reference internal" href="api/ops/hashes.html#single-part-hashing-functions">Single-part hashing functions</a></li> |
| 217 | <li class="toctree-l3"><a class="reference internal" href="api/ops/hashes.html#multi-part-hashing-operations">Multi-part hashing operations</a></li> |
| 218 | <li class="toctree-l3"><a class="reference internal" href="api/ops/hashes.html#support-macros">Support macros</a></li> |
| 219 | <li class="toctree-l3"><a class="reference internal" href="api/ops/hashes.html#hash-suspend-state">Hash suspend state</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 220 | </ul> |
| 221 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 222 | <li class="toctree-l2"><a class="reference internal" href="api/ops/macs.html">Message authentication codes (MAC)</a><ul> |
| 223 | <li class="toctree-l3"><a class="reference internal" href="api/ops/macs.html#mac-algorithms">MAC algorithms</a></li> |
| 224 | <li class="toctree-l3"><a class="reference internal" href="api/ops/macs.html#single-part-mac-functions">Single-part MAC functions</a></li> |
| 225 | <li class="toctree-l3"><a class="reference internal" href="api/ops/macs.html#multi-part-mac-operations">Multi-part MAC operations</a></li> |
| 226 | <li class="toctree-l3"><a class="reference internal" href="api/ops/macs.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 227 | </ul> |
| 228 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 229 | <li class="toctree-l2"><a class="reference internal" href="api/ops/ciphers.html">Unauthenticated ciphers</a><ul> |
| 230 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ciphers.html#cipher-algorithms">Cipher algorithms</a></li> |
| 231 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ciphers.html#single-part-cipher-functions">Single-part cipher functions</a></li> |
| 232 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ciphers.html#multi-part-cipher-operations">Multi-part cipher operations</a></li> |
| 233 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ciphers.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 234 | </ul> |
| 235 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 236 | <li class="toctree-l2"><a class="reference internal" href="api/ops/aead.html">Authenticated encryption with associated data (AEAD)</a><ul> |
| 237 | <li class="toctree-l3"><a class="reference internal" href="api/ops/aead.html#aead-algorithms">AEAD algorithms</a></li> |
| 238 | <li class="toctree-l3"><a class="reference internal" href="api/ops/aead.html#single-part-aead-functions">Single-part AEAD functions</a></li> |
| 239 | <li class="toctree-l3"><a class="reference internal" href="api/ops/aead.html#multi-part-aead-operations">Multi-part AEAD operations</a></li> |
| 240 | <li class="toctree-l3"><a class="reference internal" href="api/ops/aead.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 241 | </ul> |
| 242 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 243 | <li class="toctree-l2"><a class="reference internal" href="api/ops/kdf.html">Key derivation</a><ul> |
| 244 | <li class="toctree-l3"><a class="reference internal" href="api/ops/kdf.html#key-derivation-algorithms">Key derivation algorithms</a></li> |
| 245 | <li class="toctree-l3"><a class="reference internal" href="api/ops/kdf.html#input-step-types">Input step types</a></li> |
| 246 | <li class="toctree-l3"><a class="reference internal" href="api/ops/kdf.html#key-derivation-functions">Key derivation functions</a></li> |
| 247 | <li class="toctree-l3"><a class="reference internal" href="api/ops/kdf.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 248 | </ul> |
| 249 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 250 | <li class="toctree-l2"><a class="reference internal" href="api/ops/sign.html">Asymmetric signature</a><ul> |
| 251 | <li class="toctree-l3"><a class="reference internal" href="api/ops/sign.html#asymmetric-signature-algorithms">Asymmetric signature algorithms</a></li> |
| 252 | <li class="toctree-l3"><a class="reference internal" href="api/ops/sign.html#asymmetric-signature-functions">Asymmetric signature functions</a></li> |
| 253 | <li class="toctree-l3"><a class="reference internal" href="api/ops/sign.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 254 | </ul> |
| 255 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 256 | <li class="toctree-l2"><a class="reference internal" href="api/ops/pke.html">Asymmetric encryption</a><ul> |
| 257 | <li class="toctree-l3"><a class="reference internal" href="api/ops/pke.html#asymmetric-encryption-algorithms">Asymmetric encryption algorithms</a></li> |
| 258 | <li class="toctree-l3"><a class="reference internal" href="api/ops/pke.html#asymmetric-encryption-functions">Asymmetric encryption functions</a></li> |
| 259 | <li class="toctree-l3"><a class="reference internal" href="api/ops/pke.html#support-macros">Support macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 260 | </ul> |
| 261 | </li> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 262 | <li class="toctree-l2"><a class="reference internal" href="api/ops/ka.html">Key agreement</a><ul> |
| 263 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ka.html#key-agreement-algorithms">Key agreement algorithms</a></li> |
| 264 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ka.html#standalone-key-agreement">Standalone key agreement</a></li> |
| 265 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ka.html#combining-key-agreement-and-key-derivation">Combining key agreement and key derivation</a></li> |
| 266 | <li class="toctree-l3"><a class="reference internal" href="api/ops/ka.html#support-macros">Support macros</a></li> |
| 267 | </ul> |
| 268 | </li> |
| 269 | <li class="toctree-l2"><a class="reference internal" href="api/ops/rng.html">Other cryptographic services</a><ul> |
| 270 | <li class="toctree-l3"><a class="reference internal" href="api/ops/rng.html#random-number-generation">Random number generation</a></li> |
| 271 | </ul> |
| 272 | </li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 273 | </ul> |
| 274 | </li> |
| 275 | </ul> |
| 276 | </div> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 277 | <div class="toctree-wrapper compound"> |
| 278 | <ul> |
| 279 | <li class="toctree-l1"><a class="reference internal" href="appendix/example_header.html">Example header file</a><ul> |
| 280 | <li class="toctree-l2"><a class="reference internal" href="appendix/example_header.html#psa-crypto-h">psa/crypto.h</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 281 | </ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 282 | </li> |
| 283 | <li class="toctree-l1"><a class="reference internal" href="appendix/specdef_values.html">Example macro implementations</a><ul> |
| 284 | <li class="toctree-l2"><a class="reference internal" href="appendix/specdef_values.html#algorithm-macros">Algorithm macros</a></li> |
| 285 | <li class="toctree-l2"><a class="reference internal" href="appendix/specdef_values.html#key-type-macros">Key type macros</a></li> |
| 286 | <li class="toctree-l2"><a class="reference internal" href="appendix/specdef_values.html#hash-suspend-state-macros">Hash suspend state macros</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 287 | </ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 288 | </li> |
| 289 | <li class="toctree-l1"><a class="reference internal" href="appendix/history.html">Changes to the API</a><ul> |
| 290 | <li class="toctree-l2"><a class="reference internal" href="appendix/history.html#release-information">Release information</a></li> |
| 291 | <li class="toctree-l2"><a class="reference internal" href="appendix/history.html#document-change-history">Document change history</a><ul> |
| 292 | <li class="toctree-l3"><a class="reference internal" href="appendix/history.html#changes-between-1-0-beta-1-and-1-0-beta-2">Changes between <em>1.0 beta 1</em> and <em>1.0 beta 2</em></a></li> |
| 293 | <li class="toctree-l3"><a class="reference internal" href="appendix/history.html#changes-between-1-0-beta-2-and-1-0-beta-3">Changes between <em>1.0 beta 2</em> and <em>1.0 beta 3</em></a></li> |
| 294 | <li class="toctree-l3"><a class="reference internal" href="appendix/history.html#changes-between-1-0-beta-3-and-1-0-0">Changes between <em>1.0 beta 3</em> and <em>1.0.0</em></a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 295 | </ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 296 | </li> |
| 297 | <li class="toctree-l2"><a class="reference internal" href="appendix/history.html#planned-changes-for-version-1-0-x">Planned changes for version 1.0.x</a></li> |
| 298 | <li class="toctree-l2"><a class="reference internal" href="appendix/history.html#future-additions">Future additions</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 299 | </ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 300 | </li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 301 | </ul> |
Gilles Peskine | 89f0a53 | 2019-01-31 11:47:57 +0100 | [diff] [blame] | 302 | </div> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 303 | <h2 id="indices">Indices</h2> |
| 304 | |
| 305 | <ul> |
| 306 | <li><a class="reference internal" href="genindex.html">General index</a></li> |
| 307 | <li><a class="reference internal" href="psa_c-identifiers.html">Index of identifiers</a></li> |
| 308 | <li><a class="reference internal" href="search.html">Search</a></li> |
| 309 | </ul></div> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 310 | |
| 311 | |
| 312 | </div> |
Gilles Peskine | 89f0a53 | 2019-01-31 11:47:57 +0100 | [diff] [blame] | 313 | </div> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 314 | </div> |
| 315 | <div class="sphinxsidebar" role="navigation" aria-label="main navigation"> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 316 | <div class="sphinxsidebarwrapper"><div class="relations"> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 317 | <h3>Related Topics</h3> |
| 318 | <ul> |
| 319 | <li><a href="#">Documentation overview</a><ul> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 320 | <li>Next: <a href="overview/intro.html" title="next chapter">Introduction</a></li> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 321 | </ul></li> |
| 322 | </ul> |
| 323 | </div> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 324 | <div role="note" aria-label="source link"> |
| 325 | <h3>This Page</h3> |
| 326 | <ul class="this-page-menu"> |
| 327 | <li><a href="_sources/index.rst.txt" |
| 328 | rel="nofollow">Show Source</a></li> |
| 329 | </ul> |
| 330 | </div> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 331 | <div id="searchbox" style="display: none" role="search"> |
| 332 | <h3>Quick search</h3> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 333 | <form class="search" action="search.html" method="get"> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 334 | <div><input type="text" name="q" /></div> |
| 335 | <div><input type="submit" value="Go" /></div> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 336 | <input type="hidden" name="check_keywords" value="yes" /> |
| 337 | <input type="hidden" name="area" value="default" /> |
| 338 | </form> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 339 | </div> |
| 340 | <script type="text/javascript">$('#searchbox').show(0);</script> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 341 | </div> |
| 342 | </div> |
| 343 | <div class="clearer"></div> |
| 344 | </div> |
| 345 | <div class="footer"> |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 346 | © 2019-2020, Arm Limited or its affiliates. All rights reserved. |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 347 | |
| 348 | | |
Gilles Peskine | 6c723a2 | 2020-04-17 16:57:52 +0200 | [diff] [blame^] | 349 | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.6.7</a> |
| 350 | & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> |
Gilles Peskine | 06995ff | 2019-05-21 19:50:19 +0200 | [diff] [blame] | 351 | |
| 352 | | |
| 353 | <a href="_sources/index.rst.txt" |
| 354 | rel="nofollow">Page source</a> |
| 355 | </div> |
| 356 | |
| 357 | |
| 358 | |
| 359 | |
| 360 | </body> |
| 361 | </html> |