Soham Tembare
Cloud Computing Project
Pick any file. It is cut into blocks and every block is sealed with AES-256-GCM. The file never leaves your device.
Plain blockEncrypted block
| Block | Plain size | Encrypted size | Starts with (hex) | Save |
|---|
What the page does
- Reads your file and records its SHA-256 fingerprint.
- Cuts it into blocks of the size you chose.
- Creates a fresh 256-bit key, then encrypts each block with its own random 12-byte nonce.
- Each encrypted block is 28 bytes larger than the plain block: 12 for the nonce and 16 for the authentication tag.
- Verify decrypts every block, joins them in order and compares the fingerprint with the original.
The block format is the same one used by the Python programs in this project (nonce + ciphertext + tag), so blocks saved here can also be decrypted with the same secret.key logic.
How it is delivered
The site files are stored on Amazon S3 and served to visitors through a content delivery network over HTTPS. Browsers only allow the encryption functions used above on secure (HTTPS) pages, which is why this demo works on the CDN address and not on the plain HTTP S3 website address.