Commit graph

95 commits

Author SHA1 Message Date
Miguel Oliveira 95340ad79d Add timing based generator initialization 2024-05-12 18:57:43 -03:00
Miguel Oliveira f0f9c4b940 Merge branch 'main' into develop 2023-10-29 19:38:45 -03:00
Miguel Oliveira 91072fa555 Stabilize x25519c.lua 2023-10-29 19:37:38 -03:00
Miguel Oliveira 52307c723f
Merge pull request #2 from SuoDizzy/patch-1
Function Description mismatching actual code
2023-09-22 08:26:58 -03:00
SuoDizzy 11ca366908
Function Description mismatching actual code
The autocomplete description had the parameters mismatching with the actually needed ones, you may choose to edit the parameter order in the functions actual code if you had wanted it another way, this commit just changes the description to match with the code.
2023-07-29 12:19:46 +03:00
Miguel Oliveira 9d7943920f
Merge pull request #1 from migeyel/develop
Various fixes
2023-07-18 21:14:49 -03:00
Miguel Oliveira 91e6f32894 Fix "cryptolib" typo 2023-07-18 21:12:20 -03:00
Miguel Oliveira 0604359dbb Loosen integral limits on packing.lua 2023-07-18 21:12:00 -03:00
Miguel Oliveira 3da91cf3a2 Fix random.random
Whoops.
2023-06-11 12:01:05 -03:00
Miguel Oliveira 8d77e6597c Check argument types in random.mix 2023-06-09 21:23:02 -03:00
Miguel Oliveira 5c615a14d3 Fix random.random erroring with a negative length
Calling random.random(-1) will return an empty string and set the state
to a 31-byte string. This makes any further call in the module error.
2023-06-09 21:22:25 -03:00
Miguel Oliveira 0a23090e99 Add a progress callback to PBKDF2 2023-06-09 18:30:23 -03:00
Miguel Oliveira 8b5b86e13c Fix PBKDF2 password padding 2023-06-09 15:28:42 -03:00
Miguel Oliveira a3decc5c70 Add initialization instructions to README 2023-06-09 14:32:04 -03:00
Miguel Oliveira d266ab392b Add string utilities 2023-06-09 14:31:42 -03:00
Miguel Oliveira 45a1238a2e Add a profiling program 2023-06-09 13:28:10 -03:00
Miguel Oliveira 4106df6da2 Change some comments 2023-06-09 12:24:49 -03:00
Miguel Oliveira 66120fc624
Create README.md 2023-06-08 01:27:31 -03:00
Miguel Oliveira 71cb9b5a47
Create LICENSE 2023-06-08 01:26:25 -03:00
Miguel Oliveira 2402f55f58 Tag experimental function exports as experimental 2023-06-08 01:25:07 -03:00
Miguel Oliveira bfd15c242b Move away from illuaminate 2023-06-08 01:24:22 -03:00
Miguel Oliveira a42fe34ba1 Change module exports syntax 2023-06-08 01:19:44 -03:00
Miguel Oliveira cb620cfb0a Rework comments to new annotation style 2023-06-08 01:15:16 -03:00
Miguel Oliveira 6fbbab378a Simplify random initialization
The entropy is now provided by the user. They are tasked with finding a
high-quality source of entropy to initialize the generator with.
2023-04-11 16:46:13 -03:00
Miguel Oliveira 32ba9d8252 Add large test vectors 2023-04-11 14:38:19 -03:00
Miguel Oliveira c85969605e Remove BLAKE3 state
I feel like a broken record already. This is simpler and can be changed
later.
2023-04-11 14:28:39 -03:00
Miguel Oliveira 77dfbae843 Switch argument validation back to assertions 2023-01-02 20:56:35 -03:00
Miguel Oliveira cc71819572 Change masked exchange interface 2023-01-02 20:33:57 -03:00
Miguel Oliveira dcd7f93a3c Fix exchange validation
Now that it accepts any (projective) base as input, we need to check the
projective equation, rather than the affine one, which assumes Z = 1.
2023-01-02 16:36:53 -03:00
Miguel Oliveira 73e0df0b5e Add masked signing 2023-01-02 16:02:03 -03:00
Miguel Oliveira 77892f3a76 Add Ed25519 tests and secret key conversion 2023-01-02 04:45:53 -03:00
Miguel Oliveira 374ba5ee4a Add birational decoding of Edwards25519 points
I really dislike this interface, I'll probably need to think of
something else.
2023-01-02 02:51:19 -03:00
Miguel Oliveira a7d98da04c Add tests and check the twist on x25519c.lua 2023-01-02 01:50:01 -03:00
Miguel Oliveira 88a584b393 Split AEAD key derivation and decryption
This makes decryption failures happen earlier, at the cost of leaking
more information through timing.
2022-12-31 18:00:08 -03:00
Miguel Oliveira 8a28d6f7ea Add ecc unit tests and fix Ed25519 2022-12-14 20:27:47 -03:00
Miguel Oliveira 9d060fa581 Move directory and add unit tests 2022-12-14 00:00:27 -03:00
Miguel Oliveira 5438c20bc9 Change documentation styles 2022-12-13 18:53:53 -03:00
Miguel Oliveira c2991a6768 Remove Curve25519 fieldMul 2022-12-13 18:52:24 -03:00
Miguel Oliveira 0af58b5e2d Improve random byte generator 2022-12-13 18:51:38 -03:00
Miguel Oliveira 7d45646aa0 Fix typo 2022-12-13 18:42:31 -03:00
Miguel Oliveira 08016b8a61 Document PRAC rule conditions 2022-12-13 18:40:52 -03:00
Miguel Oliveira d4c173c713 Remove dependency on string.pack 2022-10-16 19:28:56 -03:00
Miguel Oliveira 0cd726952a
Fix BLAKE3 output expansion 2022-04-10 17:42:39 -03:00
Miguel Oliveira c9829f9759
Move BLAKE3 expand function 2022-04-10 17:39:30 -03:00
Miguel Oliveira b9457e9dd5
Make BLAKE3 stateful 2022-04-10 17:38:16 -03:00
Miguel Oliveira db4c272aea
Add PRAC-based twofold multiplication 2022-04-08 11:56:03 -03:00
Miguel Oliveira a57c5e1ded
Unroll mp.lua operations and add others for PRAC 2022-04-06 13:59:55 -03:00
Miguel Oliveira 5290be7c75
Put Fq arithmetic internals in a separate module 2022-04-05 17:28:50 -03:00
Miguel Oliveira f53bb2ec6a
Bring back Fp negation 2022-04-05 16:32:09 -03:00
Miguel Oliveira 0a6c3021d0
Fix Poly1305 canonicalization 2022-04-04 23:36:25 -03:00