]>
zoso.dev Git - libnemo.git/log
Chris Duncan [Tue, 26 Nov 2024 19:33:23 +0000 (11:33 -0800)]
Fix documentation of modification.
Chris Duncan [Tue, 26 Nov 2024 19:16:00 +0000 (11:16 -0800)]
Add performance benchmarks to account derivation so it is visible in the browser.
Chris Duncan [Tue, 26 Nov 2024 19:15:37 +0000 (11:15 -0800)]
Add blake2b module code for hacking. Include copyright notice in the file and ISC license from the repository.
Chris Duncan [Tue, 26 Nov 2024 19:14:46 +0000 (11:14 -0800)]
Exporting import.meta.url does not work since once it is bundled, all files share the same URL and the Pool does not know which worker to spin up. It seems like a completely bundled solution will require creating workers from function strings, and that will require embedding all logic inside the worker with no external imports as far as I have been able to determine. Along with exporting workers as function strings, update BLAKE2b ckd to accept blake2b as a function string for its hashing.
Chris Duncan [Tue, 26 Nov 2024 13:41:04 +0000 (05:41 -0800)]
Look into replacing Node test runner with browser-based tool. Remove Node workarounds from workers.
Chris Duncan [Tue, 26 Nov 2024 12:54:28 +0000 (04:54 -0800)]
Get it working in browser, then work backward toward Node testing if possible.
Chris Duncan [Tue, 26 Nov 2024 05:46:54 +0000 (21:46 -0800)]
Add try-catch block to avoid esbuild warnings when building for browser.
Chris Duncan [Mon, 25 Nov 2024 23:07:23 +0000 (15:07 -0800)]
Simplify worker exports.
Chris Duncan [Mon, 25 Nov 2024 22:37:21 +0000 (14:37 -0800)]
Export keyPair as proper object and update its original implementation as a function to a new create function. Create grouped export to make all functions available in one variable. Update relevant import statements. Fix tabs.
Chris Duncan [Mon, 25 Nov 2024 22:25:39 +0000 (14:25 -0800)]
Document change to crypto_hash function.
Chris Duncan [Mon, 25 Nov 2024 22:24:32 +0000 (14:24 -0800)]
Delete extraneous tab from start of every line that has one.
Chris Duncan [Mon, 25 Nov 2024 22:17:11 +0000 (14:17 -0800)]
Delete unused poly1305 function object and unused variables.
Chris Duncan [Mon, 25 Nov 2024 22:11:26 +0000 (14:11 -0800)]
Delete original hash function now that it has been replaced by blake2b and tests are passing.
Chris Duncan [Mon, 25 Nov 2024 22:06:02 +0000 (14:06 -0800)]
Update imports for new nano-nacl filename.
Chris Duncan [Mon, 25 Nov 2024 22:03:55 +0000 (14:03 -0800)]
Rename custom TweetNaCl implementation file.
Chris Duncan [Mon, 25 Nov 2024 21:58:57 +0000 (13:58 -0800)]
Fix hash and signature values in send block test vector.
Chris Duncan [Mon, 25 Nov 2024 21:54:19 +0000 (13:54 -0800)]
Fix send block test not awaiting signature call.
Chris Duncan [Mon, 25 Nov 2024 21:53:55 +0000 (13:53 -0800)]
Tabs.
Chris Duncan [Mon, 25 Nov 2024 20:53:37 +0000 (12:53 -0800)]
Update tools test.
Chris Duncan [Mon, 25 Nov 2024 20:52:39 +0000 (12:52 -0800)]
Fix tools sign function.
Chris Duncan [Mon, 25 Nov 2024 20:50:59 +0000 (12:50 -0800)]
TweetNaCl expects 64-byte secret keys and signatures, and in Nano this is accomplished by concatenating private key and public key, so update sign functions to align.
Chris Duncan [Mon, 25 Nov 2024 20:43:57 +0000 (12:43 -0800)]
Return block hash as hex instead of bytes, and update relevant tests.
Chris Duncan [Mon, 25 Nov 2024 20:31:45 +0000 (12:31 -0800)]
Reorder test block properties.
Chris Duncan [Mon, 25 Nov 2024 19:33:40 +0000 (11:33 -0800)]
Reorder test vector block properties.
Chris Duncan [Mon, 25 Nov 2024 19:33:07 +0000 (11:33 -0800)]
Add signature of test vector open block from Nano docs.
Chris Duncan [Mon, 25 Nov 2024 19:29:35 +0000 (11:29 -0800)]
Include hash in block test vectors to be checked.
Chris Duncan [Mon, 25 Nov 2024 19:03:54 +0000 (11:03 -0800)]
SendBlock constructor expects address for link, not key.
Chris Duncan [Mon, 25 Nov 2024 16:54:56 +0000 (08:54 -0800)]
Add test for open block.
Chris Duncan [Mon, 25 Nov 2024 16:54:37 +0000 (08:54 -0800)]
Substitute hard-coded test vector block values for constants.
Chris Duncan [Mon, 25 Nov 2024 16:46:12 +0000 (08:46 -0800)]
Add block creation test vectors retrieved from Nano documentation.
Chris Duncan [Mon, 25 Nov 2024 06:08:43 +0000 (22:08 -0800)]
Fix order of arguments.
Chris Duncan [Mon, 25 Nov 2024 06:04:33 +0000 (22:04 -0800)]
Rename hash functions to drop in BLAKE2b for nano.
Chris Duncan [Mon, 25 Nov 2024 06:04:04 +0000 (22:04 -0800)]
Delete lowlevel functions that were used by the box API and elsewhere and are unnecessary for nano purposes.
Chris Duncan [Mon, 25 Nov 2024 05:56:48 +0000 (21:56 -0800)]
Delete deprecated constants.
Chris Duncan [Mon, 25 Nov 2024 05:55:25 +0000 (21:55 -0800)]
Delete previously exported lowlevel API since we simply won't be using it.
Chris Duncan [Mon, 25 Nov 2024 05:49:37 +0000 (21:49 -0800)]
Attach export keyword directly to applicable functions and adjust property chain to reflect simplified API.
Chris Duncan [Mon, 25 Nov 2024 05:42:31 +0000 (21:42 -0800)]
Delete previously exported verify function since signatures are verified using sign object functions.
Chris Duncan [Mon, 25 Nov 2024 05:37:40 +0000 (21:37 -0800)]
Delete previously exported secretbox function and related deprecated functions.
Chris Duncan [Mon, 25 Nov 2024 05:34:54 +0000 (21:34 -0800)]
Fix function declaration.
Chris Duncan [Mon, 25 Nov 2024 05:34:20 +0000 (21:34 -0800)]
Delete previously exported scalarMult function.
Chris Duncan [Mon, 25 Nov 2024 05:30:25 +0000 (21:30 -0800)]
Delete previously exported hash function.
Chris Duncan [Mon, 25 Nov 2024 05:28:33 +0000 (21:28 -0800)]
Fix function declaration.
Chris Duncan [Mon, 25 Nov 2024 05:28:23 +0000 (21:28 -0800)]
Delete previously exported box function and related functions made irrelevant.
Chris Duncan [Mon, 25 Nov 2024 04:54:26 +0000 (20:54 -0800)]
Fix function declaration.
Chris Duncan [Mon, 25 Nov 2024 04:49:33 +0000 (20:49 -0800)]
Delete function previously exported but no longer.
Chris Duncan [Mon, 25 Nov 2024 04:47:52 +0000 (20:47 -0800)]
Export only those functions to be used by nano implementation.
Chris Duncan [Sun, 24 Nov 2024 23:22:47 +0000 (15:22 -0800)]
Remove self reference in nacl since we're using it as a module. Replace imports of old implementation.
Chris Duncan [Sun, 24 Nov 2024 22:52:48 +0000 (14:52 -0800)]
Restore original hash function, and include nano blake version as new function.
Chris Duncan [Sun, 24 Nov 2024 22:41:03 +0000 (14:41 -0800)]
Restore changes to tweetnacl and prune extraneous functions created for testing and learning.
Chris Duncan [Sun, 24 Nov 2024 19:40:52 +0000 (11:40 -0800)]
Got account to work with basically vanilla TweetNaCl, so save work and start pruning in subsequent commits.
Chris Duncan [Sat, 23 Nov 2024 09:48:11 +0000 (01:48 -0800)]
Start testing new tweetnacl rewrite in Account.
Chris Duncan [Sat, 23 Nov 2024 09:47:53 +0000 (01:47 -0800)]
No way to import in worker besides as modules, so start figuring out workarounds.
Chris Duncan [Sat, 23 Nov 2024 09:47:23 +0000 (01:47 -0800)]
Start rewriting tweetnacl as module with exports.
Chris Duncan [Sat, 23 Nov 2024 09:07:00 +0000 (01:07 -0800)]
Move passkey file into workers folder.
Chris Duncan [Sat, 23 Nov 2024 09:06:37 +0000 (01:06 -0800)]
Ignore further typescript errors for now.
Chris Duncan [Sat, 23 Nov 2024 09:02:22 +0000 (01:02 -0800)]
Start resolving typescript errors.
Chris Duncan [Sat, 23 Nov 2024 09:02:06 +0000 (01:02 -0800)]
Get type definitions from original source.
Chris Duncan [Sat, 23 Nov 2024 08:50:30 +0000 (00:50 -0800)]
Replace hash function in 25519 implemention
Chris Duncan [Sat, 23 Nov 2024 08:40:55 +0000 (00:40 -0800)]
Document source and reason for changes.
Chris Duncan [Sat, 23 Nov 2024 08:39:39 +0000 (00:39 -0800)]
Commit snapshot from tweetnacl to modify for Nano.
Chris Duncan [Fri, 22 Nov 2024 11:59:13 +0000 (03:59 -0800)]
Eliminate unused commented section.
Chris Duncan [Fri, 22 Nov 2024 11:58:26 +0000 (03:58 -0800)]
Eliminate remaining imported convert functions. Add type guard to initial seed ingestion. Pass around DataViews instead of strings.
Chris Duncan [Fri, 22 Nov 2024 10:12:09 +0000 (02:12 -0800)]
Start eliminating imports from BIP-44 ckd worker since they are problematic for testing with Node and also bundling for the browser.
Chris Duncan [Thu, 21 Nov 2024 23:10:35 +0000 (15:10 -0800)]
Save work on testing browser compatibility.
Chris Duncan [Thu, 21 Nov 2024 06:25:42 +0000 (22:25 -0800)]
Remove deprecated ckd functions from wallet subclasses. Fix freeze from ckd being called on empty array of indexes. Throw error if index of derived account is missing instead of just logging to the console.
Chris Duncan [Thu, 21 Nov 2024 06:04:28 +0000 (22:04 -0800)]
Worker threads do not seem to improve BLAKE2b ckd much, but BIP-44 ckd is 5x faster. This commit saves the work, and the next commit will clean up the logging and old functions.
Chris Duncan [Thu, 21 Nov 2024 05:54:25 +0000 (21:54 -0800)]
Create new ckd functions for BIP-44 and BLAKE2b. Set up class for A/B performance testing.
Chris Duncan [Thu, 21 Nov 2024 05:53:43 +0000 (21:53 -0800)]
Skip wallet performance tests for now while refactoring ckd functions.
Chris Duncan [Thu, 21 Nov 2024 05:44:56 +0000 (21:44 -0800)]
Remove pool logging.
Chris Duncan [Thu, 21 Nov 2024 05:34:08 +0000 (21:34 -0800)]
Remove duplicate ckd function. Post index along with key from worker back to caller.
Chris Duncan [Thu, 21 Nov 2024 05:25:23 +0000 (21:25 -0800)]
Rename performance test files for clarity in IDE.
Chris Duncan [Thu, 21 Nov 2024 05:23:51 +0000 (21:23 -0800)]
Add small log statement for tracking pool performance.
Chris Duncan [Thu, 21 Nov 2024 05:19:07 +0000 (21:19 -0800)]
Increase Node.js listener limit in globals importing during testing.
Chris Duncan [Thu, 21 Nov 2024 05:07:35 +0000 (21:07 -0800)]
Import Pool and add relevant private property to wallet subclasses.
Chris Duncan [Thu, 21 Nov 2024 05:04:42 +0000 (21:04 -0800)]
Organize ckd workers by splitting into separate files according to algorithm.
Chris Duncan [Thu, 21 Nov 2024 04:53:33 +0000 (20:53 -0800)]
Fix premature Pool exit due to isDone return in for loop. Do not remove busy flag from thread until it has reported its results.
Chris Duncan [Thu, 21 Nov 2024 03:36:04 +0000 (19:36 -0800)]
Remove redundant ckd performance test.
Chris Duncan [Thu, 21 Nov 2024 02:41:48 +0000 (18:41 -0800)]
Sort imports.
Chris Duncan [Thu, 21 Nov 2024 02:39:41 +0000 (18:39 -0800)]
Use import aliases in test files.
Chris Duncan [Wed, 20 Nov 2024 21:35:43 +0000 (13:35 -0800)]
Move performance tests into separate folder and add npm script to execute them.
Chris Duncan [Wed, 20 Nov 2024 21:32:42 +0000 (13:32 -0800)]
Add project root alias for local imports.
Chris Duncan [Wed, 20 Nov 2024 08:24:45 +0000 (00:24 -0800)]
Merge branch 'main' into threads
Chris Duncan [Wed, 20 Nov 2024 08:18:25 +0000 (00:18 -0800)]
Update version.
Chris Duncan [Wed, 20 Nov 2024 08:11:24 +0000 (00:11 -0800)]
In Tools, deprecate blake2b function in favor of simpler hash function already exported to reduce confusion with package of the same name, and add an encoding flag to allow strings already encoded to hexadecimal like nano blocks.
Chris Duncan [Wed, 20 Nov 2024 02:06:01 +0000 (18:06 -0800)]
Explicitly define esbuild platform when building, even though browser is the default.
Chris Duncan [Wed, 20 Nov 2024 01:14:35 +0000 (17:14 -0800)]
Add flag to force exit if long running tests (like when worker thread listeners are active) need to be closed.
Chris Duncan [Wed, 20 Nov 2024 01:13:16 +0000 (17:13 -0800)]
Tabs.
Chris Duncan [Wed, 20 Nov 2024 01:12:38 +0000 (17:12 -0800)]
Tabs and arrow notation.
Chris Duncan [Wed, 20 Nov 2024 01:09:16 +0000 (17:09 -0800)]
Tabs.
Chris Duncan [Wed, 20 Nov 2024 01:07:16 +0000 (17:07 -0800)]
Additional tests for wallet properties.
Chris Duncan [Wed, 20 Nov 2024 00:44:14 +0000 (16:44 -0800)]
Use arrow notation for tests.
Chris Duncan [Wed, 20 Nov 2024 00:40:50 +0000 (16:40 -0800)]
Switch to blake2b package from blake2b-wasm for ckd worker.
Chris Duncan [Wed, 20 Nov 2024 00:37:32 +0000 (16:37 -0800)]
Restore ckd worker file.
Chris Duncan [Tue, 19 Nov 2024 18:50:21 +0000 (10:50 -0800)]
Merge changes from main.
Chris Duncan [Tue, 19 Nov 2024 16:56:21 +0000 (08:56 -0800)]
Remove auto-added import statement.
Chris Duncan [Tue, 19 Nov 2024 07:18:04 +0000 (23:18 -0800)]
Update version.
Chris Duncan [Tue, 19 Nov 2024 07:16:32 +0000 (23:16 -0800)]
Fix typo.
Chris Duncan [Tue, 19 Nov 2024 07:15:50 +0000 (23:15 -0800)]
Ignore test coverage file.
Chris Duncan [Tue, 19 Nov 2024 07:13:02 +0000 (23:13 -0800)]
Lock and unlock is pretty solid, so remove flag for skipping relevant tests.
Chris Duncan [Tue, 19 Nov 2024 07:10:57 +0000 (23:10 -0800)]
Indicate to esbuild when browser bundle is being built versus when Node tests are running.