]> git.codecow.com Git - nano25519.git/commit
Merge branch 'next/out-buf'
authorChris Duncan <chris@zoso.dev>
Sat, 22 Aug 2026 07:47:14 +0000 (00:47 -0700)
committerChris Duncan <chris@zoso.dev>
Sat, 22 Aug 2026 07:47:14 +0000 (00:47 -0700)
commitb317571607fc741503959fe1f9544bd94ce156ca
treedc0761a803f2776a6e408159fab3827480aa378d
parent17bdc7a7fed2a0d71ada5e4085caa83986984de2
parent37988d3518ac4371113636e7bdba543adaee769c
Merge branch 'next/out-buf'

- derive() and sign() can now optionally take a preallocated output buffer.
- Fixed verify() returning unsigned result instead of signed (-1 vs 255)
- Vastly reduced WASM module size by flattening base point arrays into a plain static memory data segment.
- Added lots more defensive buffer clearing.
- Fixed `equal()`, `negative()`, and `sodium_is_zero()` which silently broke due to AssemblyScript masking shift operands based on bit width.
- Extracted `crypto_derive`, `crypto_sign`, and `crypto_verify` from the WASM index entry point.
- Split async module into separate files for host code and worker code, and inject the worker code string using an esbuild process.
- Updated async error handling to reject all pending tasks when the worker resets.
- Move tests to separate subdirectory, add output buffer and offset coverage, and test a live cemented block from a small-order account that is rejected by strict verification (Nano needs ed25519-donna implementation here especially).