158 Commits

Author SHA1 Message Date
Ugljesa Jovanovic
6f38a01195
Fixed some of the errors spotted in various aes implementation while doing cryptopals challenge, anyways they were unused. Added multipart generic hash (blake2b) native implementation 2020-08-26 19:58:57 +02:00
Ugljesa Jovanovic
0ab54a6048
Dokka sourceset definition 2020-08-09 14:35:20 +02:00
Ugljesa Jovanovic
ef55f7470f
Update sourcesets 2020-08-09 12:24:50 +02:00
Ugljesa Jovanovic
1c210c3ad2
Don't compile ios libsodium on mac build and vice versa, use default target names 2020-08-09 12:22:39 +02:00
Ugljesa Jovanovic
b5547758be
Use ios arm compilation target name consistently 2020-08-09 11:41:56 +02:00
Ugljesa Jovanovic
d1a910b965
fix macos and windows compilation issues 2020-08-08 23:05:27 +02:00
Ugljesa Jovanovic
5d61858f81
All platforms working with a smoke test, seems theres a bug with JS compiler (TODO in smoke test desccribes it) 2020-08-08 19:54:48 +02:00
Ugljesa Jovanovic
0883ddf801
Updated dokka 2020-08-02 18:34:45 +02:00
Ugljesa Jovanovic
8b3b94df3a
Switch to latest BigInteger, use new byte conversion api 2020-07-26 20:21:37 +02:00
Ugljesa Jovanovic
60ebca2616
Remove debug logging from pure xchacha20poly1305 2020-07-14 20:14:13 +02:00
Ugljesa Jovanovic
1dc423a509
Fixed sha256/512 implementation updateable version counter overflowing because it was int instead of long, fixed nonce overwriting in pure xchacha20poly1305 implementation 2020-07-13 23:39:36 +02:00
Ugljesa Jovanovic
52b6a4ad8e
Add state cleanup for delegated and pure. There doesn't seem to be a easy way to clean js state 2020-07-10 22:08:08 +02:00
Ugljesa Jovanovic
1293b9ea75
Added nonce xoring with mac to pure implementation 2020-07-10 18:36:45 +02:00
Ugljesa Jovanovic
55b5641f14
Add high level AEAD tests, implement missing initializations, implement pure decryption 2020-07-09 23:44:30 +02:00
Ugljesa Jovanovic
5d3c14de2f
Use unsafe cast instead of conversion that creates new array 2020-07-07 21:47:10 +02:00
Ugljesa Jovanovic
f5150557d6
Bump to 1.4-M3 2020-07-07 00:00:53 +02:00
Ugljesa Jovanovic
71ec5b7585
Remove coroutines 2020-07-05 19:40:22 +02:00
Ugljesa Jovanovic
8625002ea4
Api cleanup continued 2020-07-04 22:39:00 +02:00
Ugljesa Jovanovic
2db5523893
Cleanup 1 2020-07-04 19:05:15 +02:00
Ugljesa Jovanovic
a1a56487ff
Working verification of encrypted data, there was confusion regarding the ciphertext padding, which might or might not be an issue in libsodium 2020-07-01 20:35:15 +02:00
Ugljesa Jovanovic
85e3e2e4ee
Adopting libsodium secret stream approach for multipart, currently correct state and keystream, but mac is still incorrect on pure implementation 2020-06-29 21:46:29 +02:00
Ugljesa Jovanovic
e6f560ba8e
Working single shot xchacha20poly1305 encryption and decryption in delegated flavour 2020-06-27 18:20:53 +02:00
Ugljesa Jovanovic
6228263978
Further progress on delegated xchacha poly, working jvm , js in progress 2020-06-25 21:16:14 +02:00
Ugljesa Jovanovic
e3fe276e4c
Starting delegated implementation 2020-06-23 22:19:19 +02:00
Ugljesa Jovanovic
1848de0e8d
Further API conversion 2020-06-23 21:39:04 +02:00
Ugljesa Jovanovic
233ee1bf55
Multipart API continuation 2020-06-23 19:54:30 +02:00
Ugljesa Jovanovic
f107db3312
Sketching further API 2020-06-21 22:06:09 +02:00
Ugljesa Jovanovic
2f0f174b33
Added decryption 2020-06-21 21:52:17 +02:00
Ugljesa Jovanovic
3c49128c90
Added XChaCha20Poly1305 updatable and tests 2020-06-21 21:24:20 +02:00
Ugljesa Jovanovic
d55f67dd59
Added updateablePoly1305 2020-06-21 20:54:15 +02:00
Ugljesa Jovanovic
6fae2fd061
Adding xchacha20 updateable, and tests 2020-06-21 19:51:21 +02:00
Ugljesa Jovanovic
1a4fc90922
Some more sketching of the public API, added workaround for uint backing class kotln bug, worked around new js bug 2020-06-20 23:35:52 +02:00
Ugljesa Jovanovic
fc2d7b701d
Working xchacha20poly1305, debug state atm 2020-06-20 16:07:53 +02:00
Ugljesa Jovanovic
9456772828
Working chacha20poly1305 2020-06-20 12:10:24 +02:00
Ugljesa Jovanovic
8ffa354d93
Poly1305 progress 2020-06-17 23:09:47 +02:00
Ugljesa Jovanovic
32dc90b47e
Implemented XChaCha20 2020-06-17 11:16:48 +02:00
Ugljesa Jovanovic
ae1aa53f0e
Implemented chacha20 2020-06-16 19:03:59 +02:00
Ugljesa Jovanovic
c7445376ca
Completed xsalsa20, adding chacha20 2020-06-16 16:07:01 +02:00
Ugljesa Jovanovic
0143fe0080
Working salsa20 encryption 2020-06-14 23:50:33 +02:00
Ugljesa Jovanovic
946fc6a4ce
Salsa 20 progress 2020-06-14 19:13:36 +02:00
Ugljesa Jovanovic
e24f0a29f2
Dropping AES gcm from public api as it's not portable in libsodium and going the xchacha20poly1305 as only AEAD 2020-06-14 17:05:28 +02:00
Ugljesa Jovanovic
5c10d3abf4
Removing direct aes cbc and ctr, to reduce foot shooting incidents, introducing aes256-gcm 2020-06-14 12:49:46 +02:00
Ugljesa Jovanovic
0b30215143
Initial AES-CTR API refactoring 2020-06-13 21:48:21 +02:00
Ugljesa Jovanovic
f246acc745
Add watchos and tvos targets to pure variant 2020-06-13 21:04:49 +02:00
Ugljesa Jovanovic
a3cb4f653a
Use dev version of dokka because we are in 1.4-M2 2020-06-13 18:16:43 +02:00
Ugljesa Jovanovic
1db2547967
Bump version to 0.1.0 cause a lot of things changed since 0.0.4, mac builds are working, now to get Windows to work, updated readme, copied crypto API to pure variant 2020-06-11 20:29:03 +02:00
Ugljesa Jovanovic
4eb8970fd3
Added testing tasks to osx builds, cleaned up pure variant build.gradle.kts 2020-06-11 19:48:10 +02:00
Ugljesa Jovanovic
197aacac33
Built and included modified libsodium with additional wrappers, working blake, sha256/512 hashes 2020-06-09 20:30:12 +02:00
Ugljesa Jovanovic
3a81d8e57c
More changes to get intellij to reconize cinterop in native sourceset 2020-06-07 17:18:41 +02:00
Ugljesa Jovanovic
9c9383d54f
Removed digest from stateless has interface and pushed it down, as some hashes don't support keys or different hash lengths 2020-06-07 11:59:46 +02:00