Skip to content

Commit 51c2c12

Browse files
authored
Merge pull request bitcoin#151 from dgpv/patch-5
Nit: bip-schnorr: Add missing dots that denote multiplication
2 parents 34a3723 + 75b464a commit 51c2c12

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

bip-schnorr.mediawiki

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ The algorithm ''Sign(sk, m)'' is defined as:
146146
* Let ''d = d' '' if ''has_square_y(P)'', otherwise let ''d = n - d' ''.
147147
* Let ''k' = int(hash<sub>BIPSchnorrDerive</sub>(bytes(d) || m)) mod n''<ref>Note that in general, taking the output of a hash function modulo the curve order will produce an unacceptably biased result. However, for the secp256k1 curve, the order is sufficiently close to ''2<sup>256</sup>'' that this bias is not observable (''1 - n / 2<sup>256</sup>'' is around ''1.27 * 2<sup>-128</sup>'').</ref>.
148148
* Fail if ''k' = 0''.
149-
* Let ''R = k'G''.
149+
* Let ''R = k'G''.
150150
* Let ''k = k' '' if ''has_square_y(R)'', otherwise let ''k = n - k' ''.
151151
* Let ''e = int(hash<sub>BIPSchnorr</sub>(bytes(R) || bytes(P) || m)) mod n''.
152152
* Return the signature ''bytes(R) || bytes((k + ed) mod n)''.
@@ -226,7 +226,7 @@ Moreover, Schnorr signatures are compatible with [https://web.archive.org/web/20
226226

227227
=== Adaptor Signatures ===
228228

229-
[https://download.wpsoftware.net/bitcoin/wizardry/mw-slides/2018-05-18-l2/slides.pdf Adaptor signatures] can be produced by a signer by offsetting his public nonce with a known point ''T = tG'', but not offsetting his secret nonce.
229+
[https://download.wpsoftware.net/bitcoin/wizardry/mw-slides/2018-05-18-l2/slides.pdf Adaptor signatures] can be produced by a signer by offsetting his public nonce with a known point ''T = t⋅G'', but not offsetting his secret nonce.
230230
A correct signature (or partial signature, as individual signers' contributions to a multisignature are called) on the same message with same nonce will then be equal to the adaptor signature offset by ''t'', meaning that learning ''t'' is equivalent to learning a correct signature.
231231
This can be used to enable atomic swaps or even [https://eprint.iacr.org/2018/472 general payment channels] in which the atomicity of disjoint transactions is ensured using the signatures themselves, rather than Bitcoin script support. The resulting transactions will appear to verifiers to be no different from ordinary single-signer transactions, except perhaps for the inclusion of locktime refund logic.
232232

0 commit comments

Comments
 (0)