========================== Weekly Progress 2019-03-01 ========================== WORKING ======= * NC: test more JNI crypto features: RSA, CHACHA, AES modes * UI: flutter - add combo spinner - adding basic encrypt screen * using local branch "ciphers" for updates to add more ciphers * 2-factor AUTH?? - 5 digit combo (or hash value...this would be more secure, like second password) - password Cipher Combo API DESIGN ======================= The following describes how the CCC library will be used. * CipherCombo - this allows the library to encrypt with a deterministic pattern such that any desperate combo will work interchangably - Ccc_enc( CipherCombo combo, Password pass, Message msg ) * Cipher - this allows the library to encrypt with a single cipher - Ccc_enc( Cipher cipher, Password pass, Message msg ) * CipherPattern - this allows a specific pattern of ciphers to be set - Ccc_enc( CipherPattern pattern, Password pass, Message msg ) * EasyCipher - this allows anyone to use the library and expect the library to know the best, more powerful cipher; fastest cipher that is secure; most secure cipher - Ccc_enc ( EasyCipher cipher, Password pass, Message msg ) - EasyCipher: ( BEST, FAST, ... ) NOTES ===== COMPLETED ========= * NC: ShaTest.java works with .aar library!! * NC: updated the compile process, new CFlags!! added all ciphers!! (file: build.gradle) - library now supports ALL ciphers - also added support to generate keys (pub/pvt) ISSUES ====== MakeRsaKey : Feature not compiled in ------------------------------------ * fix this by adding compile CFlag '-DWOLFSSL_KEY_GEN' :: MakeRsaKey() https://www.wolfssl.com/doxygen/group__RSA.html#ga3f89eea8d56ae352730ffd49ec2fd68e #ifdef WOLFSSL_KEY_GEN ... E/AndroidRuntime: FATAL EXCEPTION: main Process: io.malloc.ccc.android.mytest, PID: 24791 com.wolfssl.wolfcrypt.WolfCryptException: Feature not compiled in at com.wolfssl.wolfcrypt.Rsa.MakeRsaKey(Native Method) at com.wolfssl.wolfcrypt.Rsa.makeKey(Rsa.java:135) at io.malloc.ccc.android.nc.RsaTest.testEncDec(RsaTest.java:41) at io.malloc.ccc.android.ui.MainActivity$1.onClick(MainActivity.java:40) at android.view.View.performClick(View.java:5637) at android.view.View$PerformClick.run(View.java:22429) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)