aboutsummaryrefslogtreecommitdiff
path: root/vendor/doc/html/crypto_ed25519_check.html
blob: a31017aba84bf22071e7f14fdbbe8dbeafa836f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
  <style>
    table.head, table.foot { width: 100%; }
    td.head-rtitle, td.foot-os { text-align: right; }
    td.head-vol { text-align: center; }
    div.Pp { margin: 1ex 0ex; }
  </style>
  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
  <title>CRYPTO_ED25519_SIGN(3MONOCYPHER)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">CRYPTO_ED25519_SIGN(3MONOCYPHER)</td>
    <td class="head-vol">3MONOCYPHER</td>
    <td class="head-rtitle">CRYPTO_ED25519_SIGN(3MONOCYPHER)</td>
  </tr>
</table>
<div class="manual-text">
<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
<b class="Nm" title="Nm">crypto_ed25519_sign</b>,
  <b class="Nm" title="Nm">crypto_ed25519_check</b>,
  <b class="Nm" title="Nm">crypto_ed25519_public_key</b> &#x2014;
  <span class="Nd" title="Nd">public key signatures</span>
<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<b class="In" title="In">#include
  &lt;<a class="In" title="In">monocypher-ed25519.h</a>&gt;</b>
<div class="Pp"></div>
<var class="Ft" title="Ft">void</var>
<br/>
<b class="Fn" title="Fn">crypto_ed25519_public_key</b>(<var class="Fa" title="Fa">uint8_t
  public_key[32]</var>, <var class="Fa" title="Fa">const uint8_t
  secret_key[32]</var>);
<div class="Pp"></div>
<var class="Ft" title="Ft">void</var>
<br/>
<b class="Fn" title="Fn">crypto_ed25519_sign</b>(<var class="Fa" title="Fa">uint8_t
  signature[64]</var>, <var class="Fa" title="Fa">const uint8_t
  secret_key[32]</var>, <var class="Fa" title="Fa">const uint8_t
  public_key[32]</var>, <var class="Fa" title="Fa">const uint8_t *message</var>,
  <var class="Fa" title="Fa">size_t message_size</var>);
<div class="Pp"></div>
<var class="Ft" title="Ft">int</var>
<br/>
<b class="Fn" title="Fn">crypto_ed25519_check</b>(<var class="Fa" title="Fa">const
  uint8_t signature[64]</var>, <var class="Fa" title="Fa">const uint8_t
  public_key[32]</var>, <var class="Fa" title="Fa">const uint8_t *message</var>,
  <var class="Fa" title="Fa">size_t message_size</var>);
<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
The <b class="Fn" title="Fn">crypto_ed25519_sign</b>() and
  <b class="Fn" title="Fn">crypto_ed25519_check</b>() functions provide Ed25519
  public key signatures and verification with SHA-512 as the underlying hash
  function; they are interoperable with other Ed25519 implementations. If you
  have no interoperability requirements, prefer
  <a class="Xr" title="Xr" href="crypto_sign.html">crypto_sign(3monocypher)</a>.
<div class="Pp"></div>
The arguments and security considerations are the same as those described in
  <a class="Xr" title="Xr" href="crypto_sign.html">crypto_sign(3monocypher)</a>.
<div class="Pp"></div>
An incremental interface is available; see
  <a class="Xr" title="Xr" href="crypto_ed25519_sign_init_first_pass.html">crypto_ed25519_sign_init_first_pass(3monocypher)</a>.
<h1 class="Sh" title="Sh" id="RETURN_VALUES"><a class="selflink" href="#RETURN_VALUES">RETURN
  VALUES</a></h1>
<b class="Fn" title="Fn">crypto_ed25519_public_key</b>() and
  <b class="Fn" title="Fn">crypto_ed25519_sign</b>() return nothing.
<div class="Pp"></div>
<b class="Fn" title="Fn">crypto_ed25519_check</b>() returns 0 for legitimate
  messages and -1 for forgeries.
<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<a class="Xr" title="Xr" href="crypto_check.html">crypto_check(3monocypher)</a>,
  <a class="Xr" title="Xr" href="crypto_key_exchange.html">crypto_key_exchange(3monocypher)</a>,
  <a class="Xr" title="Xr" href="crypto_lock.html">crypto_lock(3monocypher)</a>,
  <a class="Xr" title="Xr" href="crypto_sha512.html">crypto_sha512(3monocypher)</a>,
  <a class="Xr" title="Xr" href="intro.html">intro(3monocypher)</a>
<h1 class="Sh" title="Sh" id="STANDARDS"><a class="selflink" href="#STANDARDS">STANDARDS</a></h1>
These functions implement Ed25519 as described in RFC 8032.
<h1 class="Sh" title="Sh" id="HISTORY"><a class="selflink" href="#HISTORY">HISTORY</a></h1>
The <b class="Fn" title="Fn">crypto_ed25519_sign</b>(),
  <b class="Fn" title="Fn">crypto_ed25519_check</b>(), and
  <b class="Fn" title="Fn">crypto_ed25519_public_key</b>() functions appeared in
  Monocypher 3.0.0. They replace recompilation of Monocypher with the
  <code class="Dv" title="Dv">ED25519_SHA512</code> preprocessor
  definition.</div>
<table class="foot">
  <tr>
    <td class="foot-date">May 24, 2020</td>
    <td class="foot-os">Linux 4.15.0-106-generic</td>
  </tr>
</table>
</body>
</html>