mirror of
https://github.com/taigrr/arduinolibs
synced 2025-01-18 04:33:12 -08:00
Update docs
This commit is contained in:
28
crypto.html
28
crypto.html
@@ -89,7 +89,7 @@ Supported Algorithms</h1>
|
||||
<li><a class="el" href="classHash.html" title="Abstract base class for cryptographic hash algorithms. ">Hash</a> algorithms: <a class="el" href="classSHA256.html" title="SHA-256 hash algorithm. ">SHA256</a>, <a class="el" href="classSHA512.html" title="SHA-512 hash algorithm. ">SHA512</a>, <a class="el" href="classSHA3__256.html" title="SHA3-256 hash algorithm. ">SHA3_256</a>, <a class="el" href="classSHA3__512.html" title="SHA3-512 hash algorithm. ">SHA3_512</a>, <a class="el" href="classBLAKE2s.html" title="BLAKE2s hash algorithm. ">BLAKE2s</a>, <a class="el" href="classBLAKE2b.html" title="BLAKE2b hash algorithm. ">BLAKE2b</a> (regular and HMAC modes) </li>
|
||||
<li>Extendable output functions (<a class="el" href="classXOF.html" title="Abstract base class for Extendable-Output Functions (XOFs). ">XOF</a>'s): <a class="el" href="classSHAKE128.html" title="SHAKE Extendable-Output Function (XOF) with 128-bit security. ">SHAKE128</a>, <a class="el" href="classSHAKE256.html" title="SHAKE Extendable-Output Function (XOF) with 256-bit security. ">SHAKE256</a> </li>
|
||||
<li>Message authenticators: <a class="el" href="classPoly1305.html" title="Poly1305 message authenticator. ">Poly1305</a>, <a class="el" href="classGHASH.html" title="Implementation of the GHASH message authenticator. ">GHASH</a>, <a class="el" href="classOMAC.html" title="Implementation of the OMAC message authenticator. ">OMAC</a> </li>
|
||||
<li>Public key algorithms: <a class="el" href="classCurve25519.html" title="Diffie-Hellman key agreement based on the elliptic curve modulo 2^255 - 19. ">Curve25519</a>, <a class="el" href="classEd25519.html" title="Digital signatures based on the elliptic curve modulo 2^255 - 19. ">Ed25519</a> </li>
|
||||
<li>Public key algorithms: <a class="el" href="classCurve25519.html" title="Diffie-Hellman key agreement based on the elliptic curve modulo 2^255 - 19. ">Curve25519</a>, <a class="el" href="classEd25519.html" title="Digital signatures based on the elliptic curve modulo 2^255 - 19. ">Ed25519</a>, <a class="el" href="classP521.html" title="Elliptic curve operations with the NIST P-521 curve. ">P521</a> </li>
|
||||
<li>Random number generation: <a class="el" href="classRNGClass.html">RNG</a>, <a class="el" href="classTransistorNoiseSource.html" title="Processes the signal from a transistor-based noise source. ">TransistorNoiseSource</a>, <a class="el" href="classRingOscillatorNoiseSource.html" title="Processes the signal from a ring oscillator based noise source. ">RingOscillatorNoiseSource</a></li>
|
||||
</ul>
|
||||
<p>All cryptographic algorithms have been optimized for 8-bit Arduino platforms like the Uno. Memory usage is also reduced, particularly for <a class="el" href="classSHA256.html" title="SHA-256 hash algorithm. ">SHA256</a> and <a class="el" href="classSHA512.html" title="SHA-512 hash algorithm. ">SHA512</a> which save 192 and 512 bytes respectively over traditional implementations. For all algorithms, static sbox tables and the like are placed into program memory to further reduce data memory usage.</p>
|
||||
@@ -219,6 +219,18 @@ Performance on AVR</h2>
|
||||
<td><a class="el" href="classEd25519.html#ae3e2fc405c9cd8cb1d3ab9b8b452d3e4" title="Verifies a signature using a specific Ed25519 public key. ">Ed25519::verify()</a></td><td align="right">8196ms</td><td colspan="3">Digital signature verification </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classEd25519.html#ab62bac52ed07f77f76f3ff0fccd71cb2" title="Derives the public key from a private key. ">Ed25519::derivePublicKey()</a></td><td align="right">5102ms</td><td colspan="3">Derive a public key from a private key </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ac2e07ce7e846ba180938b41b4a2ae563" title="Evaluates the curve function. ">P521::eval()</a></td><td align="right">46290ms</td><td colspan="3">Raw curve evaluation </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ae04c439804f445535295bf44ae56afbf" title="Performs phase 1 of an ECDH key exchange using P-521. ">P521::dh1()</a></td><td align="right">46293ms</td><td colspan="3">First half of Diffie-Hellman key agreement </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#a7b9d4f74cc2d71a488a33ab165537491" title="Performs phase 2 of an ECDH key exchange using P-521. ">P521::dh2()</a></td><td align="right">46304ms</td><td colspan="3">Second half of Diffie-Hellman key agreement </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ab050ceff65e49b646b8157fe1474288a" title="Signs a message using a specific P-521 private key. ">P521::sign()</a></td><td align="right">60514ms</td><td colspan="3">Digital signature generation </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ab075909f5cecbb801c6b7c41f20de223" title="Verifies a signature using a specific P-521 public key. ">P521::verify()</a></td><td align="right">109078ms</td><td colspan="3">Digital signature verification </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#a15ca802e298c7ff3be06924b0edb7daa" title="Derives the public key from a private key for P-521 signing operations. ">P521::derivePublicKey()</a></td><td align="right">46290ms</td><td colspan="3">Derive a public key from a private key </td></tr>
|
||||
</table>
|
||||
<p>Where a cipher supports more than one key size (such as <a class="el" href="classChaCha.html" title="ChaCha stream cipher. ">ChaCha</a>), the values are typically almost identical for 128-bit and 256-bit keys so only the maximum is shown above.</p>
|
||||
<h2><a class="anchor" id="crypto_performance_arm"></a>
|
||||
@@ -337,11 +349,23 @@ Performance on ARM</h2>
|
||||
<td><a class="el" href="classEd25519.html#ae3e2fc405c9cd8cb1d3ab9b8b452d3e4" title="Verifies a signature using a specific Ed25519 public key. ">Ed25519::verify()</a></td><td align="right">306ms</td><td colspan="3">Digital signature verification </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classEd25519.html#ab62bac52ed07f77f76f3ff0fccd71cb2" title="Derives the public key from a private key. ">Ed25519::derivePublicKey()</a></td><td align="right">194ms</td><td colspan="3">Derive a public key from a private key </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ac2e07ce7e846ba180938b41b4a2ae563" title="Evaluates the curve function. ">P521::eval()</a></td><td align="right">1503ms</td><td colspan="3">Raw curve evaluation </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ae04c439804f445535295bf44ae56afbf" title="Performs phase 1 of an ECDH key exchange using P-521. ">P521::dh1()</a></td><td align="right">1503ms</td><td colspan="3">First half of Diffie-Hellman key agreement </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#a7b9d4f74cc2d71a488a33ab165537491" title="Performs phase 2 of an ECDH key exchange using P-521. ">P521::dh2()</a></td><td align="right">1503ms</td><td colspan="3">Second half of Diffie-Hellman key agreement </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ab050ceff65e49b646b8157fe1474288a" title="Signs a message using a specific P-521 private key. ">P521::sign()</a></td><td align="right">1860ms</td><td colspan="3">Digital signature generation </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#ab075909f5cecbb801c6b7c41f20de223" title="Verifies a signature using a specific P-521 public key. ">P521::verify()</a></td><td align="right">3423ms</td><td colspan="3">Digital signature verification </td></tr>
|
||||
<tr>
|
||||
<td><a class="el" href="classP521.html#a15ca802e298c7ff3be06924b0edb7daa" title="Derives the public key from a private key for P-521 signing operations. ">P521::derivePublicKey()</a></td><td align="right">1503ms</td><td colspan="3">Derive a public key from a private key </td></tr>
|
||||
</table>
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Wed Mar 23 2016 19:08:46 for ArduinoLibs by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sat Mar 26 2016 19:04:41 for ArduinoLibs by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.6
|
||||
</small></address>
|
||||
|
||||
Reference in New Issue
Block a user