]> git.codecow.com Git - nano25519.git/commitdiff
Update parameters for primitive wrappers to better reflect data.
authorChris Duncan <chris@codecow.com>
Tue, 25 Aug 2026 18:53:17 +0000 (11:53 -0700)
committerChris Duncan <chris@codecow.com>
Tue, 25 Aug 2026 18:53:17 +0000 (11:53 -0700)
test/index.html

index 7ece983a1e22e4a86271c9772591be92233546ae..bee7d8956669d41a67cf4f85b435bf45337cfaeb 100644 (file)
@@ -149,26 +149,26 @@ SPDX-License-Identifier: GPL-3.0-or-later
                        }
                }
 
-               const sign = (h, sk, pk, api) => {
-                       const h8 = new Uint8Array(h.match(/.{2}/g).map(b => parseInt(b, 16)))
-                       const sk8 = new Uint8Array((sk + pk).match(/.{2}/g).map(b => parseInt(b, 16)))
-                       const prv8 = new Uint8Array(sk.match(/.{2}/g).map(b => parseInt(b, 16)))
-                       const pub8 = new Uint8Array(pk.match(/.{2}/g).map(b => parseInt(b, 16)))
+               const sign = (msg, prv, pub, api) => {
+                       const h8 = new Uint8Array(msg.match(/.{2}/g).map(b => parseInt(b, 16)))
+                       const sk8 = new Uint8Array((prv + pub).match(/.{2}/g).map(b => parseInt(b, 16)))
+                       const prv8 = new Uint8Array(prv.match(/.{2}/g).map(b => parseInt(b, 16)))
+                       const pub8 = new Uint8Array(pub.match(/.{2}/g).map(b => parseInt(b, 16)))
                        switch (api) {
                                case 'nano25519': {
-                                       const s8 = nano25519.sign(h8, prv8, pub8)
-                                       return [...s8].map(b => b.toString(16).padStart(2, '0')).join('')
+                                       const sig8 = nano25519.sign(h8, prv8, pub8)
+                                       return [...sig8].map(b => b.toString(16).padStart(2, '0')).join('')
                                }
                                case 'NanocurrencyWeb': {
-                                       const { privateKey } = NanocurrencyWeb.wallet.legacyAccounts(sk)[0]
-                                       return NanocurrencyWeb.tools.sign(privateKey, h)
+                                       const { privateKey } = NanocurrencyWeb.wallet.legacyAccounts(prv)[0]
+                                       return NanocurrencyWeb.tools.sign(privateKey, msg)
                                }
                                case 'Sodium': {
                                        return sodium.crypto_sign_detached(new Uint8Array(h8), new Uint8Array(sk8), 'hex')
                                }
                                case 'TweetNaCl.js': {
-                                       const s8 = nacl.sign.detached(new Uint8Array(h8), new Uint8Array(sk8))
-                                       return [...s8].map(b => b.toString(16).padStart(2, '0')).join('')
+                                       const sig8 = nacl.sign.detached(new Uint8Array(h8), new Uint8Array(sk8))
+                                       return [...sig8].map(b => b.toString(16).padStart(2, '0')).join('')
                                }
                                default: {
                                        return null
@@ -176,22 +176,22 @@ SPDX-License-Identifier: GPL-3.0-or-later
                        }
                }
 
-               const verify = (s, h, pk, api) => {
-                       const h8 = new Uint8Array(h.match(/.{2}/g).map(b => parseInt(b, 16)))
-                       const s8 = new Uint8Array(s.match(/.{2}/g).map(b => parseInt(b, 16)))
-                       const pk8 = new Uint8Array(pk.match(/.{2}/g).map(b => parseInt(b, 16)))
+               const verify = (sig, msg, pub, api) => {
+                       const msg8 = new Uint8Array(msg.match(/.{2}/g).map(b => parseInt(b, 16)))
+                       const sig8 = new Uint8Array(sig.match(/.{2}/g).map(b => parseInt(b, 16)))
+                       const pub8 = new Uint8Array(pub.match(/.{2}/g).map(b => parseInt(b, 16)))
                        switch (api) {
                                case 'nano25519': {
-                                       return nano25519.verify(s8, h8, pk8)
+                                       return nano25519.verify(sig8, msg8, pub8)
                                }
                                case 'NanocurrencyWeb': {
-                                       return NanocurrencyWeb.tools.verify(pk, s, h)
+                                       return NanocurrencyWeb.tools.verify(pub, sig, msg)
                                }
                                case 'Sodium': {
-                                       return sodium.crypto_sign_verify_detached(s8, h8, pk8)
+                                       return sodium.crypto_sign_verify_detached(sig8, msg8, pub8)
                                }
                                case 'TweetNaCl.js': {
-                                       return nacl.sign.detached.verify(h8, s8, pk8)
+                                       return nacl.sign.detached.verify(msg8, sig8, pub8)
                                }
                                default: {
                                        return null