Perfection - SafeSlingerProject/SafeSlinger-Media GitHub Wiki
SafeSlinger was designed to protect end-to-end messaging systems from network attackers who have the ability to observe and/or alter messages before they reach their destination. SafeSlinger's success relies on the ability for a user to trust the operating system on which the application executes. SafeSlinger is designed to protect against network attacks, especially Man-In-The-Middle. There are a number of great solutions to the non-network attacks listed here, but SafeSlinger was never designed to solve them and are out of the scope of this project.
Operating System Backdoors
SafeSlinger trusts the operating system it runs on. However, unless a user builds the source code themselves and can examine each line of code for vulnerabilities, the cellular carrier or operating system provider could have inserted backdoor exploits to capture decrypted messages and log passphrases. To combat this, there are projects like CyanogenMod working diligently to provide verifiable builds of the Android operating system and easy methods for users to install them on their devices.
Hardware Backdoors
SafeSlinger trusts the hardware it runs on. However, unless a user constructs all of the hardware themselves, the manufacturer of any component of the hardware could have inserted backdoor exploits to capture decrypted messages and log passphrases. To combat this, a solid implementation of the TPM module could help isolate all cryptographic operations.
Malware
We do our best to ensure text messages and passphrases cannot leak outside of our application environment. If malware exists that can compromise the operating system, SafeSlinger was not designed to combat it. Operating system providers are responsible for preventing dishonest applications from accessing honest applications.
Post-Quantum Computers
Since most symmetric ciphers are post-quantum secure, and our exchange protocol uses symmetric ciphers and all keys used are ephemeral, the exchange should be as well. Also, cracking the exchange protocol with a future system offers not benefit to the attacker since they cannot participate in an exchange in the past. On the other hand, the Messenger application uses public-key cryptography and is not currently post-quantum secure. Our Messenger approach would be to use perfect forward secrecy in the future.