------------------------------------------- secure_messenger.launch.01.mp4 ------------------------------------------- Shows first launch of Secure Messenger and joining of Secure Messenger to the Jabber account; /data of com.secure.encrypted.chat.messenger package: following files: - databases/ - history.enc - message_delete.enc - files/ - keys/ - ca_certificates.crt - keys.p12 - logs/ - x-chat_logcat.log - x-chat_logout.log - shared_prefs/ - "com.secure.encrypted.chat.messenger_preferences.xml" - "com.XECURE CHAT.systems.crypto.xml" files: - history.enc - message_delete.enc encrypted Databases (AES-256-CBC); - ca_certificates.crt certificates, is used during creating of SSL connection; - keys.p12 EC public and private keys, are used during creating of SSL connection; keys.p12 - pkcs12 is encrypted by AES-256-CBC: openssl pkcs12 -certpbe AES-256-CBC -keypbe AES-256-CBC -maciter -macalg sha256 -export -in "$OUT_DIR"/"$CERT_FILE" -inkey "$OUT_DIR"/"$KEY_FILE" -passout pass:"$CERT_PASSWORD" -out "$OUT_DIR"/"$CERT12_FILE" - x-chat_logcat.log - x-chat_logout.log log files: x-chat_logcat.log - generated by Java code; x-chat_logout.log - generated by JNI code; - "com.secure.encrypted.chat.messenger_preferences.xml" - "com.XECURE CHAT.systems.crypto.xml" property files; "com.XECURE CHAT.systems.crypto.xml" contains: ujJTh2rta8ItSm/1PYQGxq2GQZXtFEq1yHYhtsIztUi66uaVbfNG7IwX9eoQ817jy8UUeX7X3dMUVGTioLq0Ew== 2xCVvbjy6fUBUf06PrrWQw== CnUykjJ+y9XPox2rz6cF437RFlmv9+nnwo3OG/EMYDs= jqrXjG59JdWwDGvK3Ox9UMAmQx8GGH+M0LorW9Tf3ew= "password_hash" - hash of password; "iv" "key" - parameters of AES-256-CBC; these parameters are used for encryption of DB and other data; "domain_encrypted" - XMPP/Jabber domain, encrypted by AES-256-CBC; "iv" "key" and password/key for reading keys.p12 should be saved on a remote protected storage; in these release theay are saved in code and in "com.XECURE CHAT.systems.crypto.xml". ------------------------------------------- secure_messenger.connect.ws-1.01.mp4 secure_messenger.connect.ws-2.01.mp4 ------------------------------------------- Show communitcation of two secure messengers. They are launched at two different WSs (WS-1 and WS-2). And they use various accounts: sman_01@jabber.hot-chilli.eu sman_02@jabber.hot-chilli.eu . At the start both secure messengers are launched. They created SSL connections to XMPP/Jabber servers. Then they create point-to-point connection, synchronizing public keys and generating commoin share secret, that is used as the start point of Double-Ratchet protocol. I.e. Double-Ratchet protocol should use same shared secret at the both side as init point. During generation of Shared Secret ECDH is used. After syncronizing of Shared Secrets both Secure Messenger have same state (ready for send/receive messengers): 12/06/2020 14:34:13.696 - - setState(): state = 6 After that sent mmessage is read from buffer and encrypted/decrypted, usign Double Ratchet: secure_messenger.connect.ws-1.01.mp4 secure_messenger.connect.ws-2.01.mp4 and see attached logs. After sending/receiving of several messages, secure messanger is closed at the WS-2 and launched again. After that synchronizing of keys is produced again. then after state: 12/06/2020 14:44:50.051 - - getState(): this.state = 6 messages sent again (WS-1 <-> WS-2). See: secure_messenger.connect.ws-1.01.mp4 secure_messenger.connect.ws-2.01.mp4 ------------------------------------------- secure_messenger.connect.ws-1.02.mp4 secure_messenger.connect.ws-2.02.mp4 ------------------------------------------- Show similar communitcation (like secure_messenger.connect.ws-1.01.mp4 secure_messenger.connect.ws-2.01.mp4) of two secure messengers, when one messanger sends several messages at the same time and other messanger send several messages at the same time too. -------------------------------------------