]> git.codecow.com Git - nano25519.git/log
nano25519.git
2 days agoStart combining scratch buffers to migrate them to highest level possible and reduce...
Chris Duncan [Fri, 2 Oct 2026 08:32:06 +0000 (01:32 -0700)]
Start combining scratch buffers to migrate them to highest level possible and reduce instances.

2 days agoCut module size by 10% by letting compiler decide which hot paths to inline.
Chris Duncan [Fri, 2 Oct 2026 08:16:07 +0000 (01:16 -0700)]
Cut module size by 10% by letting compiler decide which hot paths to inline.

2 days agoMerge single-use function into caller.
Chris Duncan [Fri, 2 Oct 2026 06:51:16 +0000 (23:51 -0700)]
Merge single-use function into caller.

3 days agoRename variables.
Chris Duncan [Fri, 2 Oct 2026 06:37:39 +0000 (23:37 -0700)]
Rename variables.

3 days agoEliminate another scratch buffer.
Chris Duncan [Fri, 2 Oct 2026 05:33:50 +0000 (22:33 -0700)]
Eliminate another scratch buffer.

3 days agoReorganize exports, no functional change.
Chris Duncan [Fri, 2 Oct 2026 05:28:45 +0000 (22:28 -0700)]
Reorganize exports, no functional change.

3 days agoEliminate another scratch buffer.
Chris Duncan [Fri, 2 Oct 2026 05:20:38 +0000 (22:20 -0700)]
Eliminate another scratch buffer.

3 days agoEliminate a scratch buffer by reusing parameter.
Chris Duncan [Fri, 2 Oct 2026 05:16:26 +0000 (22:16 -0700)]
Eliminate a scratch buffer by reusing parameter.

3 days agoStraighten out cneg.
Chris Duncan [Thu, 1 Oct 2026 21:40:00 +0000 (14:40 -0700)]
Straighten out cneg.

3 days agoExtract signature check for multiple verification call sites.
Chris Duncan [Thu, 1 Oct 2026 21:37:31 +0000 (14:37 -0700)]
Extract signature check for multiple verification call sites.

3 days agoSimplify some arithmetic. Fix documentation.
Chris Duncan [Thu, 1 Oct 2026 21:24:04 +0000 (14:24 -0700)]
Simplify some arithmetic. Fix documentation.

3 days agoRevert function name for accuracy.
Chris Duncan [Thu, 1 Oct 2026 21:02:09 +0000 (14:02 -0700)]
Revert function name for accuracy.

3 days agoEnsure extra newlines are stripped from generated code.
Chris Duncan [Thu, 1 Oct 2026 20:59:54 +0000 (13:59 -0700)]
Ensure extra newlines are stripped from generated code.

3 days agoReduce load calls and eliminate loop in blake gen. Formatting.
Chris Duncan [Thu, 1 Oct 2026 20:57:51 +0000 (13:57 -0700)]
Reduce load calls and eliminate loop in blake gen. Formatting.

3 days agoInterleave carry assignments to improve cpu scheduling.
Chris Duncan [Thu, 1 Oct 2026 20:51:02 +0000 (13:51 -0700)]
Interleave carry assignments to improve cpu scheduling.

3 days agoBias carry shifts to reduce instruction count and improve performance.
Chris Duncan [Thu, 1 Oct 2026 20:30:59 +0000 (13:30 -0700)]
Bias carry shifts to reduce instruction count and improve performance.

3 days agoMigrate multiply carry chain from scalar extraction and carry to direct vector manipu...
Chris Duncan [Thu, 1 Oct 2026 19:53:43 +0000 (12:53 -0700)]
Migrate multiply carry chain from scalar extraction and carry to direct vector manipulation and storage.

3 days agoParallel vector squaring did not perform any better than sequential scalar squaring...
Chris Duncan [Thu, 1 Oct 2026 14:48:52 +0000 (07:48 -0700)]
Parallel vector squaring did not perform any better than sequential scalar squaring, so deprecate it to simplify and reduce module size.

4 days agoMerge single-use vartime verify function into caller. Swap vector squaring parameter...
Chris Duncan [Thu, 1 Oct 2026 02:11:05 +0000 (19:11 -0700)]
Merge single-use vartime verify function into caller. Swap vector squaring parameter order. Copy point doubling algorithm instead of calling to define a fe instead of a p2. Fix identity functions based on new branded point types.

4 days agoNarrow point types.
Chris Duncan [Thu, 1 Oct 2026 01:15:38 +0000 (18:15 -0700)]
Narrow point types.

4 days agoRename variable.
Chris Duncan [Thu, 1 Oct 2026 01:09:27 +0000 (18:09 -0700)]
Rename variable.

4 days agoCombine load and splat.
Chris Duncan [Thu, 1 Oct 2026 00:23:48 +0000 (17:23 -0700)]
Combine load and splat.

4 days agoAdd asc compilation scripts and profiling script.
Chris Duncan [Thu, 1 Oct 2026 00:23:36 +0000 (17:23 -0700)]
Add asc compilation scripts and profiling script.

4 days agoMove mutex release into Mutex object for clarity of intent.
Chris Duncan [Thu, 1 Oct 2026 00:23:01 +0000 (17:23 -0700)]
Move mutex release into Mutex object for clarity of intent.

6 days agoMerge branch 'test/optimize-copy' main
Chris Duncan [Mon, 28 Sep 2026 15:24:51 +0000 (08:24 -0700)]
Merge branch 'test/optimize-copy'

6 days agoMerge branch 'next/primordials'
Chris Duncan [Mon, 28 Sep 2026 15:20:39 +0000 (08:20 -0700)]
Merge branch 'next/primordials'

6 days agoEliminate more dead code.
Chris Duncan [Mon, 28 Sep 2026 15:18:37 +0000 (08:18 -0700)]
Eliminate more dead code.

6 days agoEliminate dead code.
Chris Duncan [Mon, 28 Sep 2026 15:14:15 +0000 (08:14 -0700)]
Eliminate dead code.

6 days agoImprove performance by eliminating extra load/store calls when loading base point...
Chris Duncan [Mon, 28 Sep 2026 15:02:10 +0000 (08:02 -0700)]
Improve performance by eliminating extra load/store calls when loading base point precomputed values.

7 days agoSimplify bitwise selection with AssemblyScript shift rules.
Chris Duncan [Mon, 28 Sep 2026 05:11:07 +0000 (22:11 -0700)]
Simplify bitwise selection with AssemblyScript shift rules.

7 days agoInline another single-use utility function.
Chris Duncan [Mon, 28 Sep 2026 04:24:39 +0000 (21:24 -0700)]
Inline another single-use utility function.

7 days agoInline some base point conditional move ops.
Chris Duncan [Mon, 28 Sep 2026 04:17:08 +0000 (21:17 -0700)]
Inline some base point conditional move ops.

7 days agoRestrict input to bytes only, no array buffers. Fix typings and test.
Chris Duncan [Sun, 27 Sep 2026 08:48:37 +0000 (01:48 -0700)]
Restrict input to bytes only, no array buffers. Fix typings and test.

7 days agoPatch endianness flag to test big-endian function paths.
Chris Duncan [Sun, 27 Sep 2026 08:02:25 +0000 (01:02 -0700)]
Patch endianness flag to test big-endian function paths.

7 days agoUse same endian-aware buffer copy from message for keys and signatures.
Chris Duncan [Sun, 27 Sep 2026 07:53:03 +0000 (00:53 -0700)]
Use same endian-aware buffer copy from message for keys and signatures.

8 days agoRevert to array-based word copy with endianness check since hardened getUint32 is...
Chris Duncan [Sun, 27 Sep 2026 03:00:36 +0000 (20:00 -0700)]
Revert to array-based word copy with endianness check since hardened getUint32 is way to slow getting half speed.

8 days agoBind to call on declaration instead of recalling call.
Chris Duncan [Sun, 27 Sep 2026 02:03:44 +0000 (19:03 -0700)]
Bind to call on declaration instead of recalling call.

8 days agoUpdate node tests.
Chris Duncan [Sun, 27 Sep 2026 00:17:57 +0000 (17:17 -0700)]
Update node tests.

8 days agoUse primordials to create and set bytes.
Chris Duncan [Sat, 26 Sep 2026 16:18:53 +0000 (09:18 -0700)]
Use primordials to create and set bytes.

8 days agoUse primordial byteLength instead of prototype method.
Chris Duncan [Sat, 26 Sep 2026 16:14:04 +0000 (09:14 -0700)]
Use primordial byteLength instead of prototype method.

8 days agoFix imports.
Chris Duncan [Sat, 26 Sep 2026 09:14:02 +0000 (02:14 -0700)]
Fix imports.

8 days agoAbandon conditional word copy function selection in favor of reliability.
Chris Duncan [Sat, 26 Sep 2026 09:12:27 +0000 (02:12 -0700)]
Abandon conditional word copy function selection in favor of reliability.

8 days agoFix buffer handling.
Chris Duncan [Sat, 26 Sep 2026 08:57:55 +0000 (01:57 -0700)]
Fix buffer handling.

8 days agoFix byte offsets in big-endian path.
Chris Duncan [Sat, 26 Sep 2026 08:55:54 +0000 (01:55 -0700)]
Fix byte offsets in big-endian path.

8 days agoFix endianness of inputs on big-endian path.
Chris Duncan [Sat, 26 Sep 2026 08:50:00 +0000 (01:50 -0700)]
Fix endianness of inputs on big-endian path.

8 days agoUse captured buffer accessor instead of prototype property.
Chris Duncan [Sat, 26 Sep 2026 08:48:46 +0000 (01:48 -0700)]
Use captured buffer accessor instead of prototype property.

8 days agoFix Uint32Array length.
Chris Duncan [Sat, 26 Sep 2026 08:37:19 +0000 (01:37 -0700)]
Fix Uint32Array length.

8 days agoFix endian check.
Chris Duncan [Sat, 26 Sep 2026 08:32:49 +0000 (01:32 -0700)]
Fix endian check.

8 days agosave copy optimization.
Chris Duncan [Sat, 26 Sep 2026 08:16:21 +0000 (01:16 -0700)]
save copy optimization.

9 days agoSet custom error names in a way that esbuild will recognize.
Chris Duncan [Sat, 26 Sep 2026 00:35:27 +0000 (17:35 -0700)]
Set custom error names in a way that esbuild will recognize.

9 days agoRetain custom error names when bundling.
Chris Duncan [Sat, 26 Sep 2026 00:32:03 +0000 (17:32 -0700)]
Retain custom error names when bundling.

9 days agoFix failing test due to outdated error message.
Chris Duncan [Sat, 26 Sep 2026 00:24:34 +0000 (17:24 -0700)]
Fix failing test due to outdated error message.

9 days agoFix test page signature buffer aliasing.
Chris Duncan [Sat, 26 Sep 2026 00:19:26 +0000 (17:19 -0700)]
Fix test page signature buffer aliasing.

9 days agoCompute offset instead of relying on magic number.
Chris Duncan [Fri, 25 Sep 2026 17:19:32 +0000 (10:19 -0700)]
Compute offset instead of relying on magic number.

9 days agoAdd custom message byte length to speed test page.
Chris Duncan [Fri, 25 Sep 2026 16:48:13 +0000 (09:48 -0700)]
Add custom message byte length to speed test page.

9 days agoRefactor input copying from host to WASM to batch bytes and vastly improve performanc...
Chris Duncan [Fri, 25 Sep 2026 16:33:43 +0000 (09:33 -0700)]
Refactor input copying from host to WASM to batch bytes and vastly improve performance for large message values at the boundary crossing.

10 days agoFix blakegen compression step.
Chris Duncan [Thu, 24 Sep 2026 21:04:28 +0000 (14:04 -0700)]
Fix blakegen compression step.

10 days agoGenerate blake hashing to unroll long loops.
Chris Duncan [Thu, 24 Sep 2026 19:57:08 +0000 (12:57 -0700)]
Generate blake hashing to unroll long loops.

10 days agoFix test page content.
Chris Duncan [Thu, 24 Sep 2026 13:49:08 +0000 (06:49 -0700)]
Fix test page content.

10 days agoComment doc.
Chris Duncan [Thu, 24 Sep 2026 06:53:46 +0000 (23:53 -0700)]
Comment doc.

11 days agoMove curve arithmetic into subdirectory.
Chris Duncan [Thu, 24 Sep 2026 06:50:51 +0000 (23:50 -0700)]
Move curve arithmetic into subdirectory.

11 days agoInclude assembly subdirectories in asc checking.
Chris Duncan [Thu, 24 Sep 2026 06:44:07 +0000 (23:44 -0700)]
Include assembly subdirectories in asc checking.

11 days agoRefactor error code handling, eliminate dead code, and remove redundant currying.
Chris Duncan [Thu, 24 Sep 2026 06:42:39 +0000 (23:42 -0700)]
Refactor error code handling, eliminate dead code, and remove redundant currying.

11 days agoRename env import overrides.
Chris Duncan [Wed, 23 Sep 2026 21:26:06 +0000 (14:26 -0700)]
Rename env import overrides.

11 days agoUse custom abort handler.
Chris Duncan [Wed, 23 Sep 2026 20:19:45 +0000 (13:19 -0700)]
Use custom abort handler.

11 days agoClear WASM I/O buffers with host-side call to export instead of using setters and...
Chris Duncan [Wed, 23 Sep 2026 19:41:27 +0000 (12:41 -0700)]
Clear WASM I/O buffers with host-side call to export instead of using setters and getters.

11 days agoSwitch from direct memory access to get/set exports.
Chris Duncan [Wed, 23 Sep 2026 18:17:21 +0000 (11:17 -0700)]
Switch from direct memory access to get/set exports.

2 weeks agoUpdate agent file.
Chris Duncan [Sat, 19 Sep 2026 06:27:29 +0000 (23:27 -0700)]
Update agent file.

2 weeks agoUpdate agent file.
Chris Duncan [Sat, 19 Sep 2026 06:17:27 +0000 (23:17 -0700)]
Update agent file.

2 weeks agoClear static buffer after use to avoid leaveing the negated copy of the last base...
Chris Duncan [Sat, 19 Sep 2026 06:17:21 +0000 (23:17 -0700)]
Clear static buffer after use to avoid leaveing the negated copy of the last base table entry selected by the scalar since matching it against the 8 public entries recovers `|e[62]|`, the final radix-16 digit of the secret scalar.

2 weeks agoStage constant instead of literal.
Chris Duncan [Sat, 19 Sep 2026 06:09:24 +0000 (23:09 -0700)]
Stage constant instead of literal.

2 weeks agoFix agent file.
Chris Duncan [Sat, 19 Sep 2026 05:50:20 +0000 (22:50 -0700)]
Fix agent file.

2 weeks agoReset buffers after [s]B.
Chris Duncan [Sat, 19 Sep 2026 05:49:00 +0000 (22:49 -0700)]
Reset buffers after [s]B.

2 weeks agoAdd branded point zeroing.
Chris Duncan [Sat, 19 Sep 2026 05:47:46 +0000 (22:47 -0700)]
Add branded point zeroing.

2 weeks agoFix staged verify byte comparison.
Chris Duncan [Sat, 19 Sep 2026 05:45:15 +0000 (22:45 -0700)]
Fix staged verify byte comparison.

2 weeks agoImplement primordials to capture built-ins before they can be patched or overridden...
Chris Duncan [Fri, 18 Sep 2026 09:57:52 +0000 (02:57 -0700)]
Implement primordials to capture built-ins before they can be patched or overridden by subsequent malicious code.

2 weeks agoRemove convergence since it does not reduce by much and the .wat will differ from...
Chris Duncan [Thu, 17 Sep 2026 06:57:41 +0000 (23:57 -0700)]
Remove convergence since it does not reduce by much and the .wat will differ from the .wasm if suboptimal.

2 weeks agoFix test string modification.
Chris Duncan [Wed, 16 Sep 2026 07:18:27 +0000 (00:18 -0700)]
Fix test string modification.

3 weeks agoAdd Bytes type alias for legibility.
Chris Duncan [Mon, 7 Sep 2026 07:24:41 +0000 (00:24 -0700)]
Add Bytes type alias for legibility.

4 weeks agoMerge branch 'next/batch-buffers'
Chris Duncan [Mon, 7 Sep 2026 06:27:27 +0000 (23:27 -0700)]
Merge branch 'next/batch-buffers'

4 weeks agoFix README examples.
Chris Duncan [Sun, 6 Sep 2026 09:33:02 +0000 (02:33 -0700)]
Fix README examples.

4 weeks agoUpdate README.
Chris Duncan [Sun, 6 Sep 2026 09:31:16 +0000 (02:31 -0700)]
Update README.

4 weeks agoFix byte clearing after flipping verify bit meaning.
Chris Duncan [Sun, 6 Sep 2026 09:18:12 +0000 (02:18 -0700)]
Fix byte clearing after flipping verify bit meaning.

4 weeks agoFix blake message byte counter in digest.
Chris Duncan [Sun, 6 Sep 2026 09:17:29 +0000 (02:17 -0700)]
Fix blake message byte counter in digest.

4 weeks agoFix blake message byte counter carry.
Chris Duncan [Sun, 6 Sep 2026 08:49:47 +0000 (01:49 -0700)]
Fix blake message byte counter carry.

4 weeks agoFix output buffers in speed test page.
Chris Duncan [Sun, 6 Sep 2026 08:25:50 +0000 (01:25 -0700)]
Fix output buffers in speed test page.

4 weeks agoSave markdownlint settings for changelog and readme content.
Chris Duncan [Sun, 6 Sep 2026 08:25:27 +0000 (01:25 -0700)]
Save markdownlint settings for changelog and readme content.

4 weeks agoSplit up test vector sources and bundle them to resolve import issues.
Chris Duncan [Sun, 6 Sep 2026 07:57:29 +0000 (00:57 -0700)]
Split up test vector sources and bundle them to resolve import issues.

4 weeks agoRequire output buffer arg in order to receive output in bytes, else return string...
Chris Duncan [Sun, 6 Sep 2026 07:31:48 +0000 (00:31 -0700)]
Require output buffer arg in order to receive output in bytes, else return string regardless of input type.

4 weeks agoRemove noop cast.
Chris Duncan [Sat, 5 Sep 2026 17:51:15 +0000 (10:51 -0700)]
Remove noop cast.

4 weeks agoFix test vector fallback URL.
Chris Duncan [Sat, 5 Sep 2026 07:54:20 +0000 (00:54 -0700)]
Fix test vector fallback URL.

4 weeks agoRemove irrelevant build config parameter.
Chris Duncan [Sat, 5 Sep 2026 07:23:27 +0000 (00:23 -0700)]
Remove irrelevant build config parameter.

4 weeks agoRemove seed no longer needed by unit test.
Chris Duncan [Sat, 5 Sep 2026 07:23:00 +0000 (00:23 -0700)]
Remove seed no longer needed by unit test.

4 weeks agoFix positive test.
Chris Duncan [Sat, 5 Sep 2026 03:36:36 +0000 (20:36 -0700)]
Fix positive test.

4 weeks agoUpdate agent file.
Chris Duncan [Fri, 4 Sep 2026 22:09:02 +0000 (15:09 -0700)]
Update agent file.

4 weeks agoRemove deprecated label drops.
Chris Duncan [Fri, 4 Sep 2026 22:08:55 +0000 (15:08 -0700)]
Remove deprecated label drops.

4 weeks agoUse constant instead of hardcoded value.
Chris Duncan [Fri, 4 Sep 2026 21:35:46 +0000 (14:35 -0700)]
Use constant instead of hardcoded value.

4 weeks agoAdd positive test for identity signature verification. Fix failed verify rejection...
Chris Duncan [Fri, 4 Sep 2026 21:35:08 +0000 (14:35 -0700)]
Add positive test for identity signature verification. Fix failed verify rejection output.

4 weeks agoAdd canary for equalbytes. Add fabricated valid signature for identity public key.
Chris Duncan [Fri, 4 Sep 2026 20:52:03 +0000 (13:52 -0700)]
Add canary for equalbytes. Add fabricated valid signature for identity public key.

4 weeks agoMove large test vector set to its own file to avoid crashing IDE. Add byte values...
Chris Duncan [Fri, 4 Sep 2026 20:21:44 +0000 (13:21 -0700)]
Move large test vector set to its own file to avoid crashing IDE. Add byte values for malleable signature vector.