]> zoso.dev Git - libnemo.git/log
libnemo.git
9 days agoAdd return typings to blake2b functions.
Chris Duncan [Mon, 2 Dec 2024 19:46:52 +0000 (11:46 -0800)]
Add return typings to blake2b functions.

9 days agoTarget esnext which is esbuild default.
Chris Duncan [Mon, 2 Dec 2024 19:31:15 +0000 (11:31 -0800)]
Target esnext which is esbuild default.

9 days agoFix JSDoc.
Chris Duncan [Mon, 2 Dec 2024 19:30:24 +0000 (11:30 -0800)]
Fix JSDoc.

9 days agoRevert typescript update due to issue with SharedArrayBuffer not existing on ArrayBuf...
Chris Duncan [Mon, 2 Dec 2024 18:46:57 +0000 (10:46 -0800)]
Revert typescript update due to issue with SharedArrayBuffer not existing on ArrayBufferLike.

9 days agoExplicitly specify return typings from entropy getters.
Chris Duncan [Mon, 2 Dec 2024 18:46:26 +0000 (10:46 -0800)]
Explicitly specify return typings from entropy getters.

9 days agoTabs.
Chris Duncan [Mon, 2 Dec 2024 16:43:15 +0000 (08:43 -0800)]
Tabs.

9 days agoRemove blake2b typings. Update node typings and typescript package.
Chris Duncan [Mon, 2 Dec 2024 16:26:26 +0000 (08:26 -0800)]
Remove blake2b typings. Update node typings and typescript package.

9 days agoRemove blake2b package.
Chris Duncan [Mon, 2 Dec 2024 16:03:47 +0000 (08:03 -0800)]
Remove blake2b package.

9 days agoInstantiate Pool as part of block for calculating pow.
Chris Duncan [Mon, 2 Dec 2024 16:02:56 +0000 (08:02 -0800)]
Instantiate Pool as part of block for calculating pow.

9 days agoRemove replaced X25519 files.
Chris Duncan [Mon, 2 Dec 2024 16:00:17 +0000 (08:00 -0800)]
Remove replaced X25519 files.

10 days agoRNG directly instead of from Entropy. Tweak blake hashing call. Clarify some var...
Chris Duncan [Mon, 2 Dec 2024 06:34:08 +0000 (22:34 -0800)]
RNG directly instead of from Entropy. Tweak blake hashing call. Clarify some var names. Set known Nano constants. Import to main.js for testing.

10 days agoImplement initial PoW worker.
Chris Duncan [Mon, 2 Dec 2024 04:49:45 +0000 (20:49 -0800)]
Implement initial PoW worker.

10 days agoAdd perf logging to test webpage.
Chris Duncan [Mon, 2 Dec 2024 03:01:05 +0000 (19:01 -0800)]
Add perf logging to test webpage.

10 days agoRemove testing log statements.
Chris Duncan [Sun, 1 Dec 2024 21:43:06 +0000 (13:43 -0800)]
Remove testing log statements.

10 days agoRename BIP-44 ckd file.
Chris Duncan [Sun, 1 Dec 2024 21:42:12 +0000 (13:42 -0800)]
Rename BIP-44 ckd file.

10 days agoUpdate Bip44Ckd exports and imports.
Chris Duncan [Sun, 1 Dec 2024 21:41:11 +0000 (13:41 -0800)]
Update Bip44Ckd exports and imports.

10 days agoMove nano-nacl type definitions, which will eventually just be implemented in the...
Chris Duncan [Sun, 1 Dec 2024 20:46:23 +0000 (12:46 -0800)]
Move nano-nacl type definitions, which will eventually just be implemented in the file itself.

10 days agoReorganize NanoNaCl exports and imports. Remove some logging from test attempts and...
Chris Duncan [Sun, 1 Dec 2024 20:45:39 +0000 (12:45 -0800)]
Reorganize NanoNaCl exports and imports. Remove some logging from test attempts and start converting vars to lets and consts as appropriate.

10 days agoThe issue was Chrome all along. Firefox uses workers just fine. Remove unused imports.
Chris Duncan [Sun, 1 Dec 2024 18:40:04 +0000 (10:40 -0800)]
The issue was Chrome all along. Firefox uses workers just fine. Remove unused imports.

11 days agoRemove more extraneous logging.
Chris Duncan [Sun, 1 Dec 2024 07:17:29 +0000 (23:17 -0800)]
Remove more extraneous logging.

11 days agoRemove some extraneous logging.
Chris Duncan [Sun, 1 Dec 2024 07:17:14 +0000 (23:17 -0800)]
Remove some extraneous logging.

11 days agoAdd a few logs for perf testing.
Chris Duncan [Sun, 1 Dec 2024 06:06:29 +0000 (22:06 -0800)]
Add a few logs for perf testing.

11 days agoAdd bytes-to-hex function in nanonacl and return keys as strings instead of bytes.
Chris Duncan [Sun, 1 Dec 2024 05:57:49 +0000 (21:57 -0800)]
Add bytes-to-hex function in nanonacl and return keys as strings instead of bytes.

11 days agoFix wrong variable being returned from worker.
Chris Duncan [Sun, 1 Dec 2024 05:30:45 +0000 (21:30 -0800)]
Fix wrong variable being returned from worker.

11 days agoFix keypair object being assigned to public key variable.
Chris Duncan [Sun, 1 Dec 2024 05:30:07 +0000 (21:30 -0800)]
Fix keypair object being assigned to public key variable.

11 days agoFix chunking assignment in Pool. Get keys as hex string instead of Uint8Array in...
Chris Duncan [Sat, 30 Nov 2024 22:58:51 +0000 (14:58 -0800)]
Fix chunking assignment in Pool. Get keys as hex string instead of Uint8Array in nacl worker since the stringifier mucks up the array.

11 days agoUse ArrayBuffer to transfer data to and from worker.
Chris Duncan [Sat, 30 Nov 2024 20:49:12 +0000 (12:49 -0800)]
Use ArrayBuffer to transfer data to and from worker.

11 days agoStart prepping pow worker.
Chris Duncan [Sat, 30 Nov 2024 20:48:12 +0000 (12:48 -0800)]
Start prepping pow worker.

11 days agoAdd cores count to pool for job splitting.
Chris Duncan [Sat, 30 Nov 2024 20:47:32 +0000 (12:47 -0800)]
Add cores count to pool for job splitting.

12 days agoDelete unneeded backup file.
Chris Duncan [Sat, 30 Nov 2024 08:15:27 +0000 (00:15 -0800)]
Delete unneeded backup file.

12 days agoWe are only ever using this to get public keys if interacting with keys are all,...
Chris Duncan [Sat, 30 Nov 2024 08:15:17 +0000 (00:15 -0800)]
We are only ever using this to get public keys if interacting with keys are all, so remove unrelated functionality and update references.

12 days agoPublic key is validated as part of fromPublicKey call, so remove it from fromKeypair.
Chris Duncan [Sat, 30 Nov 2024 08:13:55 +0000 (00:13 -0800)]
Public key is validated as part of fromPublicKey call, so remove it from fromKeypair.

12 days agoChange some names and fix NanoNaCl worker with a forced name for the Blake2b class...
Chris Duncan [Sat, 30 Nov 2024 07:00:42 +0000 (23:00 -0800)]
Change some names and fix NanoNaCl worker with a forced name for the Blake2b class that was getting changed by esbuild.

12 days agoLogging for perf tests
Chris Duncan [Sat, 30 Nov 2024 06:59:26 +0000 (22:59 -0800)]
Logging for perf tests

12 days agoClass reference to static member within static initializer should use 'this'.
Chris Duncan [Sat, 30 Nov 2024 06:59:12 +0000 (22:59 -0800)]
Class reference to static member within static initializer should use 'this'.

12 days agoBackup working copy of nano-nacl prior to optimization efforts.
Chris Duncan [Sat, 30 Nov 2024 05:38:10 +0000 (21:38 -0800)]
Backup working copy of nano-nacl prior to optimization efforts.

12 days agoAdd typings. Remove unnecessary allocation when hashing.
Chris Duncan [Fri, 29 Nov 2024 10:45:27 +0000 (02:45 -0800)]
Add typings. Remove unnecessary allocation when hashing.

12 days agoWe're only going to work in browser environments from here on out, so lose the node...
Chris Duncan [Fri, 29 Nov 2024 10:35:49 +0000 (02:35 -0800)]
We're only going to work in browser environments from here on out, so lose the node crypto implementation. We're also not opening the module up to plugin RNG, so place the relevant code directly in the one place it is used.

12 days agoBite the bullet on formatting.
Chris Duncan [Fri, 29 Nov 2024 10:26:53 +0000 (02:26 -0800)]
Bite the bullet on formatting.

12 days agoImport typing for blake.
Chris Duncan [Fri, 29 Nov 2024 10:25:05 +0000 (02:25 -0800)]
Import typing for blake.

12 days agoStart adding typings to nano-nacl.
Chris Duncan [Fri, 29 Nov 2024 10:20:00 +0000 (02:20 -0800)]
Start adding typings to nano-nacl.

12 days agoSimplify ckd implementation with fewer allowed typings.
Chris Duncan [Fri, 29 Nov 2024 10:07:25 +0000 (02:07 -0800)]
Simplify ckd implementation with fewer allowed typings.

12 days agoUse more concise typing.
Chris Duncan [Fri, 29 Nov 2024 09:45:49 +0000 (01:45 -0800)]
Use more concise typing.

12 days agoAha moment: the entire Blake2b class can be passed as an argument into the stringifie...
Chris Duncan [Fri, 29 Nov 2024 09:39:10 +0000 (01:39 -0800)]
Aha moment: the entire Blake2b class can be passed as an argument into the stringified NanoNaCl worker using an IIFE construct. Brilliant, it works now! Also fix object property name being passed from blake ckd, and update references to renamed account keypair factory method.

12 days agoNormalize address prefix in constructor to fix duplicate prefix bug.
Chris Duncan [Fri, 29 Nov 2024 09:32:03 +0000 (01:32 -0800)]
Normalize address prefix in constructor to fix duplicate prefix bug.

12 days agoPass index when creating account from known keypair.
Chris Duncan [Fri, 29 Nov 2024 09:24:46 +0000 (01:24 -0800)]
Pass index when creating account from known keypair.

13 days agoPass blake2b through nacl functions. Need to do something about bytes vs hex in blake...
Chris Duncan [Thu, 28 Nov 2024 11:15:19 +0000 (03:15 -0800)]
Pass blake2b through nacl functions. Need to do something about bytes vs hex in blake vs bip wallets.

13 days agoFix nano-nacl exports. Fix bip44 ckd return value. Pass account private key to worker...
Chris Duncan [Thu, 28 Nov 2024 10:52:27 +0000 (02:52 -0800)]
Fix nano-nacl exports. Fix bip44 ckd return value. Pass account private key to worker as bytes.

13 days agoFix account factory usage.
Chris Duncan [Thu, 28 Nov 2024 10:51:09 +0000 (02:51 -0800)]
Fix account factory usage.

13 days agoRefactor wallet account methods to start building out for NaCl worker implementation.
Chris Duncan [Thu, 28 Nov 2024 10:40:52 +0000 (02:40 -0800)]
Refactor wallet account methods to start building out for NaCl worker implementation.

13 days agoBegin refactoring NaCl implementation to a web worker format.
Chris Duncan [Thu, 28 Nov 2024 10:21:21 +0000 (02:21 -0800)]
Begin refactoring NaCl implementation to a web worker format.

13 days agoRename for clarity.
Chris Duncan [Thu, 28 Nov 2024 10:20:02 +0000 (02:20 -0800)]
Rename for clarity.

13 days agoAccount class is pretty simple overall, so having async factory methods is not very...
Chris Duncan [Thu, 28 Nov 2024 10:19:38 +0000 (02:19 -0800)]
Account class is pretty simple overall, so having async factory methods is not very useful. Refactor them to be synchronous.

13 days agoRename NaCl implementation.
Chris Duncan [Thu, 28 Nov 2024 09:14:38 +0000 (01:14 -0800)]
Rename NaCl implementation.

13 days agoRewrite blake2b as class and update references. Add typings and assertions to satisfy...
Chris Duncan [Thu, 28 Nov 2024 09:06:03 +0000 (01:06 -0800)]
Rewrite blake2b as class and update references. Add typings and assertions to satisfy TypeScript compiler.

2 weeks agoCondense assertions.
Chris Duncan [Wed, 27 Nov 2024 22:04:04 +0000 (14:04 -0800)]
Condense assertions.

2 weeks agoAdd quick performance checks to test page.
Chris Duncan [Wed, 27 Nov 2024 21:58:09 +0000 (13:58 -0800)]
Add quick performance checks to test page.

2 weeks agoSpaces.
Chris Duncan [Wed, 27 Nov 2024 21:53:04 +0000 (13:53 -0800)]
Spaces.

2 weeks agoDelete deprecated worker.
Chris Duncan [Wed, 27 Nov 2024 21:38:13 +0000 (13:38 -0800)]
Delete deprecated worker.

2 weeks agoUpdate comment header to reflect current purpose.
Chris Duncan [Wed, 27 Nov 2024 21:35:10 +0000 (13:35 -0800)]
Update comment header to reflect current purpose.

2 weeks agoUse customized blake implementation and start trying to reoptimize it since it's...
Chris Duncan [Wed, 27 Nov 2024 21:33:11 +0000 (13:33 -0800)]
Use customized blake implementation and start trying to reoptimize it since it's about 20% slower (but still really fast).

2 weeks agoRename definition file.
Chris Duncan [Wed, 27 Nov 2024 21:32:30 +0000 (13:32 -0800)]
Rename definition file.

2 weeks agoCopyiing the entire blake2b function string into the web worker proved too expensive...
Chris Duncan [Wed, 27 Nov 2024 21:29:23 +0000 (13:29 -0800)]
Copyiing the entire blake2b function string into the web worker proved too expensive, and blake2b is so optimized that web workers are 3x slower even it's embedded directly in the worker, so just revert to implementing the ckd in the wallet itself.

2 weeks agoRemove debug statements.
Chris Duncan [Wed, 27 Nov 2024 13:54:20 +0000 (05:54 -0800)]
Remove debug statements.

2 weeks agoHot damn it worked.
Chris Duncan [Wed, 27 Nov 2024 08:15:43 +0000 (00:15 -0800)]
Hot damn it worked.

2 weeks agoSave changes.
Chris Duncan [Wed, 27 Nov 2024 01:03:53 +0000 (17:03 -0800)]
Save changes.

2 weeks agoFormatting.
Chris Duncan [Tue, 26 Nov 2024 22:31:05 +0000 (14:31 -0800)]
Formatting.

2 weeks agoDiscard redundant variable.
Chris Duncan [Tue, 26 Nov 2024 22:26:56 +0000 (14:26 -0800)]
Discard redundant variable.

2 weeks agoUse template literals for error messages.
Chris Duncan [Tue, 26 Nov 2024 22:04:21 +0000 (14:04 -0800)]
Use template literals for error messages.

2 weeks agoAdd type guards to function. Spaces.
Chris Duncan [Tue, 26 Nov 2024 22:00:08 +0000 (14:00 -0800)]
Add type guards to function. Spaces.

2 weeks agoAdd typings to blake2b functions.
Chris Duncan [Tue, 26 Nov 2024 21:52:29 +0000 (13:52 -0800)]
Add typings to blake2b functions.

2 weeks agoClarify array typings.
Chris Duncan [Tue, 26 Nov 2024 21:41:13 +0000 (13:41 -0800)]
Clarify array typings.

2 weeks agoMove constants to top.
Chris Duncan [Tue, 26 Nov 2024 20:04:47 +0000 (12:04 -0800)]
Move constants to top.

2 weeks agoRemove deprecated blake2b-wasm references.
Chris Duncan [Tue, 26 Nov 2024 20:01:33 +0000 (12:01 -0800)]
Remove deprecated blake2b-wasm references.

2 weeks agoReplace deprecated assert calls with if-throw statements.
Chris Duncan [Tue, 26 Nov 2024 19:42:28 +0000 (11:42 -0800)]
Replace deprecated assert calls with if-throw statements.

2 weeks agoRemove imports.
Chris Duncan [Tue, 26 Nov 2024 19:33:57 +0000 (11:33 -0800)]
Remove imports.

2 weeks agoFix documentation of modification.
Chris Duncan [Tue, 26 Nov 2024 19:33:23 +0000 (11:33 -0800)]
Fix documentation of modification.

2 weeks agoAdd performance benchmarks to account derivation so it is visible in the browser.
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.

2 weeks agoAdd blake2b module code for hacking. Include copyright notice in the file and ISC...
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.

2 weeks agoExporting import.meta.url does not work since once it is bundled, all files share...
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.

2 weeks agoLook into replacing Node test runner with browser-based tool. Remove Node workarounds...
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.

2 weeks agoGet it working in browser, then work backward toward Node testing if possible.
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.

2 weeks agoAdd try-catch block to avoid esbuild warnings when building for browser.
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.

2 weeks agoSimplify worker exports.
Chris Duncan [Mon, 25 Nov 2024 23:07:23 +0000 (15:07 -0800)]
Simplify worker exports.

2 weeks agoExport keyPair as proper object and update its original implementation as a function...
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.

2 weeks agoDocument change to crypto_hash function.
Chris Duncan [Mon, 25 Nov 2024 22:25:39 +0000 (14:25 -0800)]
Document change to crypto_hash function.

2 weeks agoDelete extraneous tab from start of every line that has one.
Chris Duncan [Mon, 25 Nov 2024 22:24:32 +0000 (14:24 -0800)]
Delete extraneous tab from start of every line that has one.

2 weeks agoDelete unused poly1305 function object and unused variables.
Chris Duncan [Mon, 25 Nov 2024 22:17:11 +0000 (14:17 -0800)]
Delete unused poly1305 function object and unused variables.

2 weeks agoDelete original hash function now that it has been replaced by blake2b and tests...
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.

2 weeks agoUpdate imports for new nano-nacl filename.
Chris Duncan [Mon, 25 Nov 2024 22:06:02 +0000 (14:06 -0800)]
Update imports for new nano-nacl filename.

2 weeks agoRename custom TweetNaCl implementation file.
Chris Duncan [Mon, 25 Nov 2024 22:03:55 +0000 (14:03 -0800)]
Rename custom TweetNaCl implementation file.

2 weeks agoFix hash and signature values in send block test vector.
Chris Duncan [Mon, 25 Nov 2024 21:58:57 +0000 (13:58 -0800)]
Fix hash and signature values in send block test vector.

2 weeks agoFix send block test not awaiting signature call.
Chris Duncan [Mon, 25 Nov 2024 21:54:19 +0000 (13:54 -0800)]
Fix send block test not awaiting signature call.

2 weeks agoTabs.
Chris Duncan [Mon, 25 Nov 2024 21:53:55 +0000 (13:53 -0800)]
Tabs.

2 weeks agoUpdate tools test.
Chris Duncan [Mon, 25 Nov 2024 20:53:37 +0000 (12:53 -0800)]
Update tools test.

2 weeks agoFix tools sign function.
Chris Duncan [Mon, 25 Nov 2024 20:52:39 +0000 (12:52 -0800)]
Fix tools sign function.

2 weeks agoTweetNaCl expects 64-byte secret keys and signatures, and in Nano this is accomplishe...
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.

2 weeks agoReturn block hash as hex instead of bytes, and update relevant tests.
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.

2 weeks agoReorder test block properties.
Chris Duncan [Mon, 25 Nov 2024 20:31:45 +0000 (12:31 -0800)]
Reorder test block properties.

2 weeks agoReorder test vector block properties.
Chris Duncan [Mon, 25 Nov 2024 19:33:40 +0000 (11:33 -0800)]
Reorder test vector block properties.