π RSA Cryptography Demonstration Utility A simple, single-page web application demonstrating the full lifecycle of asymmetric cryptography: Key Generation, Encryption/Decryption (Confidentiality), and Digital Signing/Verification (Authentication & Integrity) using the RSA algorithm.
π Features Dual Key Pair Generation: Creates separate RSA key pairs for two parties, Alice and Bob, for the purposes of encryption (RSA-OAEP) and signing (RSASSA-PKCS1-v1_5).
Encrypted & Signed Payload: A message is encrypted using the recipient's (Bob's) public key and signed using the sender's (Alice's) private key.
Decryption & Verification: The recipient decrypts the message using their private key and verifies the sender's signature using the sender's public key.
Modern Web Tech: Implemented using Vanilla JavaScript and the Web Cryptography API for secure, client-side cryptographic operations, with Tailwind CSS for a clean, responsive UI.
π How It Works This utility simulates a secure communication exchange:
Key Generation: Alice and Bob generate their Public/Private Key pairs.
Encryption: Alice takes a plaintext message and encrypts it using Bob's Public Key (ensuring only Bob can read it).
Signing: Alice takes the original plaintext and creates a digital signature using Alice's Private Key (proving the message came from her).
Decryption: Bob receives the payload and decrypts the ciphertext using Bob's Private Key.
Verification: Bob uses the decrypted message and Alice's Public Key to verify the digital signature (checking if Alice actually sent it and if it was tampered with).
π οΈ Prerequisites A modern web browser (Chrome, Firefox, Edge, Safari) that supports the Web Cryptography API (window.crypto.subtle).
Git (for cloning the repository).
π Deployment and Usage Guide Since this is a single static HTML file with no server-side dependencies, deployment is incredibly simple.