This is a demonstration of a passwordless using a Public Key system. The project showcases how to implement a secure, passwordless E2EE authentication system.
Demonstrate the use of RSA-OAEP for encrypting and decrypting messages in a web environment. It features a FastAPI backend which handles RSA encryption and a Vue 3 frontend for a user-friendly interface.
- RSA Public Key encryption and decryption.
- FastAPI backend for secure encryption operations.
- Vue 3 frontend for interactive user experience.
- Demonstrates the use of secure/private data encyption.
- Simulated End-to-end demo of a PKI system (open in multiple browsers and try to circumvent it, good luck).
- sign the message with the private key so the server can verify it with the public key to verify requesters identity
- TODO: use signed unix timestamp for expiry
- TODO: sign a nonce that is stored on server to prevent replay messages
- TODO: Change RSA to ECDSA
To run this project, you will need Python and Node.js installed on your system.