Commit Graph
100 Commits
Author SHA1 Message Date
Ugljesa Jovanovic 9cb2701715 Added tests, fixed bugs 2020-09-01 23:29:56 +02:00
Ugljesa Jovanovic 4762bd96d6 Implemented native 2020-09-01 20:27:51 +02:00
Ugljesa Jovanovic 57f9bd9d20 Adding crypto_box functions 2020-08-31 22:56:37 +02:00
Ugljesa Jovanovic 1894a5d995 Added jvm and js implementation for sha256/512 2020-08-31 20:56:36 +02:00
Ugljesa Jovanovic 15be707114 Added sha2 hashes in common and native and test 2020-08-31 20:44:37 +02:00
Ugljesa Jovanovic 1878144b8f Added generichash keygen 2020-08-31 19:39:19 +02:00
Ugljesa Jovanovic 16cb5c2dee Completed crypto auth and added tests 2020-08-30 19:02:40 +02:00
Ugljesa Jovanovic d2fda34807 Add auth native and tests 2020-08-30 18:33:14 +02:00
Ugljesa Jovanovic 0c8de7b5c5 Adding crypto_auth 2020-08-30 17:56:12 +02:00
Ugljesa Jovanovic 4cf1d48225 Add generic hash to checklist 2020-08-30 13:15:41 +02:00
Ugljesa Jovanovic 6768832332 Update cheklist 2020-08-30 13:13:03 +02:00
Ugljesa Jovanovic dd0895b5f3 Completed cha cha aead variants 2020-08-30 13:10:31 +02:00
Ugljesa Jovanovic 3f9f316e04 Fixed (the usual) copypaste error of removing ABYTES in detached implementation, added aead chacha tests 2020-08-30 12:24:43 +02:00
Ugljesa Jovanovic 1a11bdc81b Added native aead chacha poly implementation 2020-08-30 12:07:53 +02:00
Ugljesa Jovanovic 3de04749ba Change all occurences of additionalData to associatedData 2020-08-30 11:56:18 +02:00
Ugljesa Jovanovic 54489ef6cb Start work on _aead_ 2020-08-30 11:21:53 +02:00
Ugljesa Jovanovic 99b9ee5e9d Added secretbox functions and constants 2020-08-29 21:53:17 +02:00
Ugljesa Jovanovic 555b69f15c Binding implementation tracking list 2020-08-29 17:34:24 +02:00
Ugljesa Jovanovic 387b827aef Updated checklist 2020-08-29 17:26:47 +02:00
Ugljesa Jovanovic d5b1e7f7f3 Added rekey and keygen to secretstream 2020-08-29 17:25:59 +02:00
Ugljesa Jovanovic 91cd41c8c1 Short hash implementation and test, updated cbc tests as they ignored padding 2020-08-28 22:35:33 +02:00
Ugljesa Jovanovic 86611453ea Same thing for JVM, forgot about tag length 2020-08-27 22:09:42 +02:00
Ugljesa Jovanovic 89e5ae62e4 Fixed native (i forgot to account for tag length. Added debug list of js functions, can be usefull when defining interface 2020-08-27 22:07:03 +02:00
Ugljesa Jovanovic 9e10677165 ADded helper extension toPtr instead of addressOf(0), implemented jvm and native secret stream 2020-08-27 19:27:46 +02:00
Ugljesa Jovanovic 2c92a8142f Add generic hash tests, add templates for secret stream jvm and js 2020-08-26 22:33:55 +02:00
Ugljesa Jovanovic 39f0817308 Adding secret stream impl, completed generichash impl 2020-08-26 22:15:03 +02:00
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 231a84af67 Comment out old debug generated code, but keep for short term reference, add android/jvm wrappers, seemingly solve android unit test problems 2020-08-23 13:39:59 +02:00
Ugljesa Jovanovic 9962198aad Comment out old debug generated code, but keep for short term reference, add android/jvm wrappers, seemingly solve android unit test problems 2020-08-22 13:53:01 +02:00
Ugljesa Jovanovic f060d2298d Added android plugin, need to sort out shared jvm code next 2020-08-22 00:43:22 +02:00
Ugljesa Jovanovic 92058a7ba5 Added generic hash 2020-08-21 19:21:40 +02:00
Ugljesa Jovanovic 6a6119dec1 Abandon generator approach 2020-08-21 18:57:20 +02:00
Ugljesa Jovanovic be4468785d Slow progress. 2020-08-21 18:55:17 +02:00
Ugljesa Jovanovic cd90f964ab Update kotlin version, need to fix secretstream pull, at least in js if not everywhere 2020-08-18 23:32:50 +02:00
Ugljesa Jovanovic 0c098e57db Test secret stream generated code 2020-08-15 17:50:46 +02:00
Ugljesa Jovanovic df87dae376 Adding pull secretstream definition 2020-08-15 11:53:11 +02:00
Ugljesa Jovanovic bbe2e8429f remove delegate from pure publish script 2020-08-09 17:32:58 +02:00
Ugljesa Jovanovic 222fef00e3 Ios -> IosX64 2020-08-09 16:26:40 +02:00
Ugljesa Jovanovic 791d8d2ca7 Fix build script typos and missing configuration 2020-08-09 15:42:45 +02:00
Ugljesa Jovanovic d609885cfc Rename publish build script 2020-08-09 15:00:43 +02:00
Ugljesa Jovanovic 0ab54a6048 Dokka sourceset definition 2020-08-09 14:35:20 +02:00
Ugljesa Jovanovic 773731760e Split builds into more jobs as we are itting execution time limit on travis, it seems linking takes much longer on 1.4.0-rc 2020-08-09 10:59:21 +02:00
Ugljesa Jovanovic 67e2d239b4 Try to expand gradle and konan cache used by travis 2020-08-09 00:46:28 +02:00
Ugljesa Jovanovic d1a910b965 fix macos and windows compilation issues 2020-08-08 23:05:27 +02:00
Ugljesa Jovanovic e6e7a7664c Update readme and changelog, as this is going into master so snapshots are available for experimenting 2020-08-08 22:22:38 +02:00
Ugljesa Jovanovic e997c18d1d A nicer workaround for JS compiler wrong function name bug 2020-08-08 22:05:46 +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 1f0eaf59ca Pivot to a handled API, update common js and native generators 2020-08-08 16:20:56 +02:00
Ugljesa Jovanovic 1aaffe9c7c Starting work on JS generator 2020-08-02 17:09:13 +02:00
Ugljesa Jovanovic a972b022d3 Add native parameter pining 2020-08-02 15:13:30 +02:00
Ugljesa Jovanovic 97c631ecb7 Progress on native generator 2020-08-01 18:07:12 +02:00
Ugljesa Jovanovic c975bdb248 Progress 2020-07-31 20:08:33 +02:00
Ugljesa Jovanovic c5082a0f47 Progress 2020-07-31 17:37:49 +02:00
Ugljesa Jovanovic 53325cdba6 Forming the generator slowly 2020-07-31 13:20:43 +02:00
Ugljesa Jovanovic 3c77cc0698 Bump to 1.4.0-rc 2020-07-27 20:41:25 +02:00
Ugljesa Jovanovic 8b3b94df3a Switch to latest BigInteger, use new byte conversion api 2020-07-26 20:21:37 +02:00
Ugljesa Jovanovic 0af9ed4337 Initial attempts and experiments 2020-07-18 13:41:21 +02:00
Ugljesa Jovanovic 278e11b315 Remove conversion methods that acctually already existed and worked in standard library 2020-07-17 12:30:15 +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 579c44fcc7 Add delegated xchacha20poly1305 decrypt 2020-07-07 23:11:12 +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 9751f80347 Experiment with asByteArray() 2020-07-07 21:19:20 +02:00
Ugljesa Jovanovic 8fb4f91374 Add delegated as base for future libsodium bindings, update travis yml to include it, start updating readme 2020-07-07 20:24:47 +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 0000bc4b8e Disable macos and linux builds while we are setting up windows builds
Add windows cache directories

fix yml

Fix YAML

Get java first on windows build

Try to replace mingw with msys in script

Try windows build without the toolchain, since we are bringing our own

taskkill was failing

Different libtool package name

Add autoconf to msys2

Install mingw-w64-x86_64-toolchain but with each package instead of a group which interrupts installation

Msys2 cant find make, try using alias

Make everything executable, add some debugging logs to windowsBuild

Skip building, debug make

Find all make files

Another attempt

Attempt different alias

Try with symbolic link

Attempt mingw64

Forgot to change folder

Attempt N

Set -e+e

Try with cygwin

mingw again

Move

Add more debug logs

Add +e to see what fails now

try direct make
2020-06-13 09:55:03 +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 add5480850 Proper name of msys2 packages 2020-06-11 19:35:11 +02:00
Ugljesa Jovanovic 218bd8f4e1 Windows msys cache 2020-06-11 19:33:24 +02:00
Ugljesa Jovanovic 611a60b94b Use msys2 instead of mingw 2020-06-11 19:32:12 +02:00