summaryrefslogtreecommitdiff
path: root/manual/html_node/Public-key-algorithms.html
diff options
context:
space:
mode:
Diffstat (limited to 'manual/html_node/Public-key-algorithms.html')
-rw-r--r--manual/html_node/Public-key-algorithms.html285
1 files changed, 0 insertions, 285 deletions
diff --git a/manual/html_node/Public-key-algorithms.html b/manual/html_node/Public-key-algorithms.html
deleted file mode 100644
index dbac46bdb8..0000000000
--- a/manual/html_node/Public-key-algorithms.html
+++ /dev/null
@@ -1,285 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<!-- This manual is last updated 4 March 2015 for version
-3.5.4 of GnuTLS.
-
-Copyright (C) 2001-2015 Free Software Foundation, Inc.\\
-Copyright (C) 2001-2015 Nikos Mavrogiannopoulos
-
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
-copy of the license is included in the section entitled "GNU Free
-Documentation License". -->
-<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
-<head>
-<title>GnuTLS 3.5.4: Public key algorithms</title>
-
-<meta name="description" content="GnuTLS 3.5.4: Public key algorithms">
-<meta name="keywords" content="GnuTLS 3.5.4: Public key algorithms">
-<meta name="resource-type" content="document">
-<meta name="distribution" content="global">
-<meta name="Generator" content="makeinfo">
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<link href="index.html#Top" rel="start" title="Top">
-<link href="Function-and-Data-Index.html#Function-and-Data-Index" rel="index" title="Function and Data Index">
-<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
-<link href="Using-GnuTLS-as-a-cryptographic-library.html#Using-GnuTLS-as-a-cryptographic-library" rel="up" title="Using GnuTLS as a cryptographic library">
-<link href="Hash-and-MAC-functions.html#Hash-and-MAC-functions" rel="next" title="Hash and MAC functions">
-<link href="Symmetric-algorithms.html#Symmetric-algorithms" rel="prev" title="Symmetric algorithms">
-<style type="text/css">
-<!--
-a.summary-letter {text-decoration: none}
-blockquote.indentedblock {margin-right: 0em}
-blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
-blockquote.smallquotation {font-size: smaller}
-div.display {margin-left: 3.2em}
-div.example {margin-left: 3.2em}
-div.lisp {margin-left: 3.2em}
-div.smalldisplay {margin-left: 3.2em}
-div.smallexample {margin-left: 3.2em}
-div.smalllisp {margin-left: 3.2em}
-kbd {font-style: oblique}
-pre.display {font-family: inherit}
-pre.format {font-family: inherit}
-pre.menu-comment {font-family: serif}
-pre.menu-preformatted {font-family: serif}
-pre.smalldisplay {font-family: inherit; font-size: smaller}
-pre.smallexample {font-size: smaller}
-pre.smallformat {font-family: inherit; font-size: smaller}
-pre.smalllisp {font-size: smaller}
-span.nolinebreak {white-space: nowrap}
-span.roman {font-family: initial; font-weight: normal}
-span.sansserif {font-family: sans-serif; font-weight: normal}
-ul.no-bullet {list-style: none}
-body {
- margin: 2%;
- padding: 0 5%;
- background: #ffffff;
-}
-h1,h2,h3,h4,h5 {
- font-weight: bold;
- padding: 5px 5px 5px 5px;
- background-color: #c2e0ff;
- color: #336699;
-}
-h1 {
- padding: 2em 2em 2em 5%;
- color: white;
- background: #336699;
- text-align: center;
- letter-spacing: 3px;
-}
-h2 { text-decoration: underline; }
-pre {
- margin: 0 5%;
- padding: 0.5em;
-}
-pre.example,pre.verbatim {
- padding-bottom: 1em;
-
- border: solid #c2e0ff;
- background: #f0faff;
- border-width: 1px 1px 1px 5px;
- margin: 1em auto;
- width: 90%;
-}
-
-div.node {
- margin: 0 -5% 0 -2%;
- padding: 0.5em 0.5em;
- margin-top: 0.5em;
- margin-bottom: 0.5em;
- font-weight: bold;
-}
-dd, li {
- padding-top: 0.1em;
- padding-bottom: 0.1em;
-}
-div.float {
-
- margin-bottom: 0.5em;
- text-align: center;
-}
-
-table {
- text-align: left;
- margin-left:auto;
- margin-right:auto;
- border-spacing: 7px;
- width: 50%;
-}
-
-th {
- padding: 0;
- color: #336699;
- background-color: #c2e0ff;
- border: solid #000000;
- border-width: 0px;
- margin: 1em auto;
- text-align: center;
- margin-left:auto;
- margin-right:auto;
-}
-
-td {
- padding: 0;
- border: solid #000000;
- background-color: #f0faff;
- border-width: 0px;
- margin: 1em auto;
- text-align: left;
- margin-left:auto;
- margin-right:auto;
- padding-left: 1em;
-}
-
-dl {
- text-align: left;
- margin-left:auto;
- margin-right:auto;
- width: 50%;
-
- padding-left: 1em;
- border: solid #c2e0ff;
- background: #f0faff;
- border-width: 5px 1px 1px 1px;
- margin: 1em auto;
-}
-
--->
-</style>
-
-
-</head>
-
-<body lang="en">
-<a name="Public-key-algorithms"></a>
-<div class="header">
-<p>
-Next: <a href="Hash-and-MAC-functions.html#Hash-and-MAC-functions" accesskey="n" rel="next">Hash and MAC functions</a>, Previous: <a href="Symmetric-algorithms.html#Symmetric-algorithms" accesskey="p" rel="prev">Symmetric algorithms</a>, Up: <a href="Using-GnuTLS-as-a-cryptographic-library.html#Using-GnuTLS-as-a-cryptographic-library" accesskey="u" rel="up">Using GnuTLS as a cryptographic library</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Function-and-Data-Index.html#Function-and-Data-Index" title="Index" rel="index">Index</a>]</p>
-</div>
-<hr>
-<a name="Public-key-algorithms-1"></a>
-<h3 class="section">8.2 Public key algorithms</h3>
-<a name="index-public-key-algorithms"></a>
-
-<p>Public key cryptography algorithms such as RSA, DSA and ECDSA, can be
-accessed using the abstract key API in <a href="Abstract-key-types.html#Abstract-key-types">Abstract key types</a>. This
-is a high level API with the advantage of transparently handling keys
-in memory and keys present in smart cards.
-</p>
-<a name="PKCS-_00237-signing"></a>
-<h4 class="subsection">8.2.1 PKCS #7 signing</h4>
-<a name="index-PKCS-_00237"></a>
-<a name="index-file-signing"></a>
-
-<p>The PKCS #7 format is common format used for digital signatures. It allows to sign
-by embedding the data into the signature, or creating detached signatures of the data,
-including a timestamp, additional certificates etc. In certain cases this format is also
-used to transport lists of certificates and CRLs.
-</p>
-<p>The basic functions to initialize, deinitialize, import, export or print information
-about a PKCS #7 structure are shown below.
-</p><dl compact="compact">
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005finit">gnutls_pkcs7_init</a> (gnutls_pkcs7_t * <var>pkcs7</var>)</code></dt>
-<dt><code><var>void</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fdeinit">gnutls_pkcs7_deinit</a> (gnutls_pkcs7_t <var>pkcs7</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fexport2">gnutls_pkcs7_export2</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_crt_fmt_t <var>format</var>, gnutls_datum_t * <var>out</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fimport">gnutls_pkcs7_import</a> (gnutls_pkcs7_t <var>pkcs7</var>, const gnutls_datum_t * <var>data</var>, gnutls_x509_crt_fmt_t <var>format</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fprint">gnutls_pkcs7_print</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_certificate_print_formats_t <var>format</var>, gnutls_datum_t * <var>out</var>)</code></dt>
-</dl>
-
-<p>The following functions allow the verification of a structure using either a trust list, or
-individual certificates. The <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fsign">gnutls_pkcs7_sign</a> function is the data signing function.
-</p>
-<dl compact="compact">
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fverify_005fdirect">gnutls_pkcs7_verify_direct</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_crt_t <var>signer</var>, unsigned <var>idx</var>, const gnutls_datum_t * <var>data</var>, unsigned <var>flags</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fverify">gnutls_pkcs7_verify</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_trust_list_t <var>tl</var>, gnutls_typed_vdata_st * <var>vdata</var>, unsigned int <var>vdata_size</var>, unsigned <var>idx</var>, const gnutls_datum_t * <var>data</var>, unsigned <var>flags</var>)</code></dt>
-</dl>
-
-
-
-
-<dl>
-<dt><a name="index-gnutls_005fpkcs7_005fsign"></a>Function: <em>int</em> <strong>gnutls_pkcs7_sign</strong> <em>(gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_crt_t <var>signer</var>, gnutls_privkey_t <var>signer_key</var>, const gnutls_datum_t * <var>data</var>, gnutls_pkcs7_attrs_t <var>signed_attrs</var>, gnutls_pkcs7_attrs_t <var>unsigned_attrs</var>, gnutls_digest_algorithm_t <var>dig</var>, unsigned <var>flags</var>)</em></dt>
-<dd><p><var>pkcs7</var>: should contain a <code>gnutls_pkcs7_t</code> type
-</p>
-<p><var>signer</var>: the certificate to sign the structure
-</p>
-<p><var>signer_key</var>: the key to sign the structure
-</p>
-<p><var>data</var>: The data to be signed or <code>NULL</code> if the data are already embedded
-</p>
-<p><var>signed_attrs</var>: Any additional attributes to be included in the signed ones (or <code>NULL</code> )
-</p>
-<p><var>unsigned_attrs</var>: Any additional attributes to be included in the unsigned ones (or <code>NULL</code> )
-</p>
-<p><var>dig</var>: The digest algorithm to use for signing
-</p>
-<p><var>flags</var>: Should be zero or one of <code>GNUTLS_PKCS7</code> flags
-</p>
-<p>This function will add a signature in the provided PKCS <code>7</code> structure
-for the provided data. Multiple signatures can be made with different
-signers.
-</p>
-<p>The available flags are:
-<code>GNUTLS_PKCS7_EMBED_DATA</code> , <code>GNUTLS_PKCS7_INCLUDE_TIME</code> , <code>GNUTLS_PKCS7_INCLUDE_CERT</code> ,
-and <code>GNUTLS_PKCS7_WRITE_SPKI</code> . They are explained in the <code>gnutls_pkcs7_sign_flags</code>
-definition.
-</p>
-<p><strong>Returns:</strong> On success, <code>GNUTLS_E_SUCCESS</code> (0) is returned, otherwise a
-negative error value.
-</p>
-<p><strong>Since:</strong> 3.4.2
-</p></dd></dl>
-
-<div class="float"><a name="gnutls_005fpkcs7_005fsign_005fflags"></a>
-
-
-<dl compact="compact">
-<dt><code>GNUTLS_PKCS7_EMBED_DATA</code></dt>
-<dd><p>The signed data will be embedded in the structure.
-</p></dd>
-<dt><code>GNUTLS_PKCS7_INCLUDE_TIME</code></dt>
-<dd><p>The signing time will be included in the structure.
-</p></dd>
-<dt><code>GNUTLS_PKCS7_INCLUDE_CERT</code></dt>
-<dd><p>The signer&rsquo;s certificate will be included in the cert list.
-</p></dd>
-<dt><code>GNUTLS_PKCS7_WRITE_SPKI</code></dt>
-<dd><p>Use the signer&rsquo;s key identifier instead of name.
-</p></dd>
-</dl>
-
-<div class="float-caption"><p><strong>Figure 8.2: </strong>Flags applicable to gnutls_pkcs7_sign()</p></div></div>
-<p>Other helper functions which allow to access the signatures, or certificates attached
-in the structure are listed below.
-</p>
-<dl compact="compact">
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fsignature_005fcount">gnutls_pkcs7_get_signature_count</a> (gnutls_pkcs7_t <var>pkcs7</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fsignature_005finfo">gnutls_pkcs7_get_signature_info</a> (gnutls_pkcs7_t <var>pkcs7</var>, unsigned <var>idx</var>, gnutls_pkcs7_signature_info_st * <var>info</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fcrt_005fcount">gnutls_pkcs7_get_crt_count</a> (gnutls_pkcs7_t <var>pkcs7</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fcrt_005fraw2">gnutls_pkcs7_get_crt_raw2</a> (gnutls_pkcs7_t <var>pkcs7</var>, unsigned <var>indx</var>, gnutls_datum_t * <var>cert</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fcrl_005fcount">gnutls_pkcs7_get_crl_count</a> (gnutls_pkcs7_t <var>pkcs7</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fget_005fcrl_005fraw2">gnutls_pkcs7_get_crl_raw2</a> (gnutls_pkcs7_t <var>pkcs7</var>, unsigned <var>indx</var>, gnutls_datum_t * <var>crl</var>)</code></dt>
-</dl>
-
-<p>To append certificates, or CRLs in the structure the following functions are provided.
-</p><dl compact="compact">
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fset_005fcrt_005fraw">gnutls_pkcs7_set_crt_raw</a> (gnutls_pkcs7_t <var>pkcs7</var>, const gnutls_datum_t * <var>crt</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fset_005fcrt">gnutls_pkcs7_set_crt</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_crt_t <var>crt</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fset_005fcrl_005fraw">gnutls_pkcs7_set_crl_raw</a> (gnutls_pkcs7_t <var>pkcs7</var>, const gnutls_datum_t * <var>crl</var>)</code></dt>
-<dt><code><var>int</var> <a href="PKCS-7-API.html#gnutls_005fpkcs7_005fset_005fcrl">gnutls_pkcs7_set_crl</a> (gnutls_pkcs7_t <var>pkcs7</var>, gnutls_x509_crl_t <var>crl</var>)</code></dt>
-</dl>
-
-<hr>
-<div class="header">
-<p>
-Next: <a href="Hash-and-MAC-functions.html#Hash-and-MAC-functions" accesskey="n" rel="next">Hash and MAC functions</a>, Previous: <a href="Symmetric-algorithms.html#Symmetric-algorithms" accesskey="p" rel="prev">Symmetric algorithms</a>, Up: <a href="Using-GnuTLS-as-a-cryptographic-library.html#Using-GnuTLS-as-a-cryptographic-library" accesskey="u" rel="up">Using GnuTLS as a cryptographic library</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Function-and-Data-Index.html#Function-and-Data-Index" title="Index" rel="index">Index</a>]</p>
-</div>
-
-
-
-</body>
-</html>