]> git.codecow.com Git - nano25519.git/commitdiff
Add test to check invalid message lengths throw as expected.
authorChris Duncan <chris@codecow.com>
Thu, 14 May 2026 18:08:30 +0000 (11:08 -0700)
committerChris Duncan <chris@codecow.com>
Thu, 14 May 2026 18:08:30 +0000 (11:08 -0700)
index.html
vectors.mjs

index 6534e733325f96d96cb0444476c7886d6cda4a51..71bc4453e06559234dedca2c7083bb3101ddfa59 100644 (file)
@@ -335,6 +335,18 @@ SPDX-License-Identifier: GPL-3.0-or-later
                        }
 
                        // XFAIL
+                       try {
+                               test = false
+                               result = await nano25519.verifyAsync(NANO_ORG_VECTOR.signature, NANO_ORG_VECTOR.invalidMessageLength, NANO_ORG_VECTOR.publicKey)
+                       } catch (err) {
+                               test = true
+                               console.log(err)
+                       } finally {
+                               check(`verify() output for invalid message length`, test)
+                               passes += +test
+                               failures += +!test
+                       }
+
                        result = await nano25519.verifyAsync(NANO_ORG_VECTOR.badSignature, NANO_ORG_VECTOR.blockHash, NANO_ORG_VECTOR.publicKey)
                        console.log(result)
                        test = result === false
index b481c1a69b00860cb0bf89b344ec16dfd4dbbb12..946f908ac02dfdee4e94ba30e06d2244d8aa5408 100644 (file)
@@ -13,7 +13,8 @@ export const NANO_ORG_VECTOR = {
        secretKeyBytes: new Uint8Array([0x78, 0x11, 0x86, 0xFB, 0x9E, 0xF1, 0x7D, 0xB6, 0xE3, 0xD1, 0x05, 0x65, 0x50, 0xD9, 0xFA, 0xE5, 0xD5, 0xBB, 0xAD, 0xA6, 0xA6, 0xBC, 0x37, 0x0E, 0x4C, 0xBB, 0x93, 0x8B, 0x1D, 0xC7, 0x1D, 0xA3, 0x30, 0x68, 0xBB, 0x1C, 0xA0, 0x45, 0x25, 0xBB, 0x0E, 0x41, 0x6C, 0x48, 0x5F, 0xE6, 0xA6, 0x7F, 0xD5, 0x25, 0x40, 0x22, 0x7D, 0x26, 0x7C, 0xC8, 0xB6, 0xE8, 0xDA, 0x95, 0x8A, 0x7F, 0xA0, 0x39]),
        signature: '74BCC59DBA39A1E34A5F75F96D6DE9154E3477AAD7DE30EA563DFCFE501A804228008F98DDF4A15FD35705102785C50EF76732C3A74B0FEC5B0DD67B574A5900',
        signatureBytes: new Uint8Array([0x74, 0xBC, 0xC5, 0x9D, 0xBA, 0x39, 0xA1, 0xE3, 0x4A, 0x5F, 0x75, 0xF9, 0x6D, 0x6D, 0xE9, 0x15, 0x4E, 0x34, 0x77, 0xAA, 0xD7, 0xDE, 0x30, 0xEA, 0x56, 0x3D, 0xFC, 0xFE, 0x50, 0x1A, 0x80, 0x42, 0x28, 0x00, 0x8F, 0x98, 0xDD, 0xF4, 0xA1, 0x5F, 0xD3, 0x57, 0x05, 0x10, 0x27, 0x85, 0xC5, 0x0E, 0xF7, 0x67, 0x32, 0xC3, 0xA7, 0x4B, 0x0F, 0xEC, 0x5B, 0x0D, 0xD6, 0x7B, 0x57, 0x4A, 0x59, 0x00]),
-       badSignature: '74BCC59DBA39A1E34A5F75F96D6DE9154E3477AAD7DE30EA563DFCFE501A804215d484f5f757b4b7a9f4fcb2057fa423f76732c3a74b0fec5b0dd67b574a5910'
+       badSignature: '74BCC59DBA39A1E34A5F75F96D6DE9154E3477AAD7DE30EA563DFCFE501A804215d484f5f757b4b7a9f4fcb2057fa423f76732c3a74b0fec5b0dd67b574a5910',
+       invalidMessageLength: 'BB569136FA05F8CBF65CEF2EDE368475B289C4477342976556BA4C0DDF216E450'
 }
 
 /**