========= CCC Agile ========= WORKING ======= * NC: add more JNI crypto features: SHA, RSA, CHACHA * UI: flutter, add new screens - adding encrypt screen * l@@k at Android Weekly emails BACKLOG ======= Tasks ^^^^^ * GET THE LATEST - get the lastest ndk - get the latest gradle (see if 5.x is compatible) - get the latest wolfssl code - COMPILE!! =) * create "update_wolfssl.sh" script to pull latest from the repository, apply patches, build wolfssl, then copy library files to a "dist" folder for usage. As of right now the build works but the generated files aren''t auto copied. It is generated by hand. * l@@k at https://en.wikipedia.org/wiki/NTRU * l@@k at http://facebook.github.io/conceal/ * l@@k at https://techcrunch.com/2018/10/03/googles-cyber-unit-jigsaw-introduces-intra-a-security-app-dedicated-to-busting-censorship/ * l@@k at TLS Toolkit: https://www.insidesecure.com/Products/Network-security/Secure-Communication-Toolkits/Inside-Secure-TLS-Toolkit * l@@k at PolarSSL: https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.0-2.7.9-and-2.1.18-released * Create Multi Projects - nc-wc-ndk (remove android GUI code) - ccc-gui-a (android) - ccc-gui-f (flutter) - ccc-gui-i (iOS) - ccc-gui-e (electron) - ccc-cmd (command line) Milestones ^^^^^^^^^^ * normalizedcrypto - maybe wrap nextcrypto with a *VERY* simple API - new StrongestCrypt() (post-quantum, maybe even double-wrap) - new Strong() (AES_GCM_256-SHA512-RSA4096) - new Fastest() - new LossyCrypto() COMPLETED ========= * TEST: add test code for JNI calls - tested AES, everything else should work accordingly * combine wolfssl-lib + wolfssl-jni == ccc-ndk-jni (not ccc-jni which would be for java) - TEST: check that all builds OK (ok-dokey) - move from bash script builds, to all gradle (cleaning and copying libs) - no bash builds needed because gradle is generating an .aar package * WolfSSL compile - fixing CMake build - discover which gradle to target --> wolfssl was main gradle app target Milestones ^^^^^^^^^^ * JNI wrapper tests - RSA Public Key Generation - AES crypt * X Android application skeleton * X WolfSSL validate with JNI