Simple but strongly encrypted message system based on asymmetric cryptography

How it works

When a user registers, two keys are created: one PUBLIC and one PRIVATE. The PUBLIC key is stored in the database in plain text, meaning unencrypted, while the 4096 bit PRIVATE key is stored in the database in encrypted form using the AES 256 algorithm. The encryption password is derived from the access password the user chooses during registration. The access password is stored in the database using the bcrypt algorithm. This method is known also as End-To-End Encryption.

When the user logs in and enters his password, the bcrypt algorithm verifies the match with the stored one, and if successful, the decryption password is generated. This password is then placed into a cookie, also protected with the AES 256 algorithm, and used to decrypt the PRIVATE key when needed. When an anonymous or registered user sends you a message, the system will use your PUBLIC key to encrypt the message, and only you, in possession of the PRIVATE key, will be able to read the message.

Even those who access the database, either legitimately or abusively, have no way of reading any messages unless they discover your identity and coerce you into revealing your password!

We use only technical and session cookies necessary for the proper functioning of the website. By continuing to browse, you agree to their use. Close