diff --git a/i2p2www/pages/site/docs/spec/common-structures.html b/i2p2www/pages/site/docs/spec/common-structures.html index 371579a919c272ee03d20001e11a07b1f4d1ac98..60324d9091cee327797cf334eb912558b9cd4fd6 100644 --- a/i2p2www/pages/site/docs/spec/common-structures.html +++ b/i2p2www/pages/site/docs/spec/common-structures.html @@ -100,37 +100,88 @@ This structure is used for AES256 encryption and decryption. <h2 id="type_SigningPublicKey">SigningPublicKey</h2> <h4>{% trans %}Description{% endtrans %}</h4> <p>{% trans cryptography=site_url('docs/how/cryptography') -%} -This structure is used for verifying <a href="{{ cryptography }}#DSA">DSA</a> signatures. +This structure is used for verifying signatures. {% endtrans %}</p> <h4>{% trans %}Contents{% endtrans %}</h4> <p>{% trans -%} -128 bytes +Key type and length are inferred from context or are specified in the Key Certificate of a Destination. +{% endtrans %} +{% trans -%} +The default type is DSA-160. +{% endtrans %} +{% trans -%} +As of release 0.9.11, other types may be supported, depending on context. {% endtrans %}</p> +<table border=1> +<tr><th>{% trans %}Type{% endtrans %}</th><th>{% trans %}Length (bytes){% endtrans %}</th></tr> +<tr><td>DSA-160</td><td align="center">128</td></tr> +<tr><td>ECDSA-SHA256-P256</td><td align="center">64</td></tr> +<tr><td>ECDSA-SHA384-P384</td><td align="center">96</td></tr> +<tr><td>ECDSA-SHA512-P521</td><td align="center">132</td></tr> +<tr><td>RSA-SHA256-2048</td><td align="center">256</td></tr> +<tr><td>RSA-SHA384-3072</td><td align="center">384</td></tr> +<tr><td>RSA-SHA512-4096</td><td align="center">512</td></tr> +</table> + <h4><a href="http://docs.i2p-projekt.de/javadoc/net/i2p/data/SigningPublicKey.html">Javadoc</a></h4> <h2 id="type_SigningPrivateKey">SigningPrivateKey</h2> <h4>{% trans %}Description{% endtrans %}</h4> <p>{% trans cryptography=site_url('docs/how/cryptography') -%} -This structure is used for creating <a href="{{ cryptography }}#DSA">DSA</a> signatures. +This structure is used for creating signatures. {% endtrans %}</p> <h4>{% trans %}Contents{% endtrans %}</h4> <p>{% trans -%} -20 bytes +Key type and length are specified when created. +{% endtrans %} +{% trans -%} +The default type is DSA-160. +{% endtrans %} +{% trans -%} +As of release 0.9.11, other types may be supported, depending on context. {% endtrans %}</p> +<table border=1> +<tr><th>{% trans %}Type{% endtrans %}</th><th>{% trans %}Length (bytes){% endtrans %}</th></tr> +<tr><td>DSA-160</td><td align="center">20</td></tr> +<tr><td>ECDSA-SHA256-P256</td><td align="center">32</td></tr> +<tr><td>ECDSA-SHA384-P384</td><td align="center">48</td></tr> +<tr><td>ECDSA-SHA512-P521</td><td align="center">66</td></tr> +<tr><td>RSA-SHA256-2048</td><td align="center">512</td></tr> +<tr><td>RSA-SHA384-3072</td><td align="center">768</td></tr> +<tr><td>RSA-SHA512-4096</td><td align="center">1024</td></tr> +</table> + <h4><a href="http://docs.i2p-projekt.de/javadoc/net/i2p/data/SigningPrivateKey.html">Javadoc</a></h4> <h2 id="type_Signature">Signature</h2> <h4>{% trans %}Description{% endtrans %}</h4> <p>{% trans cryptography=site_url('docs/how/cryptography') -%} -This structure represents the <a href="{{ cryptography }}#DSA">DSA</a> signature of some data. +This structure represents the signature of some data. {% endtrans %}</p> <h4>{% trans %}Contents{% endtrans %}</h4> <p>{% trans -%} -40 bytes +Signature type and length are inferred from the type of key used. +{% endtrans %} +{% trans -%} +The default type is DSA-160. +{% endtrans %} +{% trans -%} +As of release 0.9.11, other types may be supported, depending on context. {% endtrans %}</p> +<table border=1> +<tr><th>{% trans %}Type{% endtrans %}</th><th>{% trans %}Length (bytes){% endtrans %}</th></tr> +<tr><td>DSA-160</td><td align="center">40</td></tr> +<tr><td>ECDSA-SHA256-P256</td><td align="center">64</td></tr> +<tr><td>ECDSA-SHA384-P384</td><td align="center">96</td></tr> +<tr><td>ECDSA-SHA512-P521</td><td align="center">132</td></tr> +<tr><td>RSA-SHA256-2048</td><td align="center">256</td></tr> +<tr><td>RSA-SHA384-3072</td><td align="center">384</td></tr> +<tr><td>RSA-SHA512-4096</td><td align="center">512</td></tr> +</table> + <h4><a href="http://docs.i2p-projekt.de/javadoc/net/i2p/data/Signature.html">Javadoc</a></h4> <h2 id="type_Hash">Hash</h2> @@ -275,9 +326,9 @@ The defined Signing Key types are: <tr><td>ECDSA-SHA256-P256</td><td align="center">1</td><td align="center">64</td></tr> <tr><td>ECDSA-SHA384-P384</td><td align="center">2</td><td align="center">96</td></tr> <tr><td>ECDSA-SHA512-P521</td><td align="center">3</td><td align="center">132</td></tr> -<tr><td>RSA-SHA256-2048</td><td align="center">4</td><td align="center">512</td></tr> -<tr><td>RSA-SHA384-3072</td><td align="center">5</td><td align="center">768</td></tr> -<tr><td>RSA-SHA512-4096</td><td align="center">6</td><td align="center">1024</td></tr> +<tr><td>RSA-SHA256-2048</td><td align="center">4</td><td align="center">256</td></tr> +<tr><td>RSA-SHA384-3072</td><td align="center">5</td><td align="center">384</td></tr> +<tr><td>RSA-SHA512-4096</td><td align="center">6</td><td align="center">512</td></tr> </table> <p> @@ -316,9 +367,9 @@ Example layouts using an ElGamal Crypto Public Key and the Signing Public Key ty <tr><td>ECDSA-SHA256-P256</td><td align="center">64</td><td align="center">0</td></tr> <tr><td>ECDSA-SHA384-P384</td><td align="center">32</td><td align="center">0</td></tr> <tr><td>ECDSA-SHA512-P521</td><td align="center">0</td><td align="center">4</td></tr> -<tr><td>RSA-SHA256-2048</td><td align="center">0</td><td align="center">384</td></tr> -<tr><td>RSA-SHA384-3072</td><td align="center">0</td><td align="center">648</td></tr> -<tr><td>RSA-SHA512-4096</td><td align="center">0</td><td align="center">896</td></tr> +<tr><td>RSA-SHA256-2048</td><td align="center">0</td><td align="center">128</td></tr> +<tr><td>RSA-SHA384-3072</td><td align="center">0</td><td align="center">256</td></tr> +<tr><td>RSA-SHA512-4096</td><td align="center">0</td><td align="center">384</td></tr> </table>