Security posture
This page explains the guarantees behind T.A.L.A., the risks we model, and the controls that keep exam and procurement material locked until release.
Encryption standard
AES 256 GCM
Authenticated encryption with associated data
Algorithm
Advanced Encryption Standard with 256 bit keys in counter mode with authentication.
Why it is chosen
Fast, parallel friendly, and widely audited. The same mode used by modern TLS.
Key handling
Keys originate in the browser, never appear in plaintext on servers, and are sealed on chain until unlock.
Data validation
Authentication tags catch any alteration to ciphertext before decryption runs.
Threat scenarios
Server seizure
Risk
Infrastructure is taken down or seized.
Response
Servers never keep keys. They hold only CIDs and contract pointers. Encrypted payloads stay on IPFS, while keys remain on chain.
Clock manipulation
Risk
Someone tries to move the unlock time forward.
Response
Unlock checks read validator time from Polygon. No single host clock can change the schedule once it is committed.
Key theft
Risk
An attacker obtains the encrypted key blob.
Response
Keys are created in the browser, sent encrypted, and stored on chain. Brute forcing AES 256 is infeasible with current computing power.
IPFS loss
Risk
The encrypted file disappears from storage.
Response
Pinata pins across regions. The CID exposes any attempt to swap or tamper with the payload.
Security principles
Confidentiality
AES 256 keeps content private. Network observers see only ciphertext until the correct key arrives at unlock time.
Integrity
GCM authentication tags make tampering obvious. Any change to the encrypted blob fails validation in the browser.
Authenticity
Smart contracts are immutable. Unlock events and void events are on chain proofs tied to specific vault identifiers.
Accountability
On chain logs show who created, voided, and unlocked. That record supports audits and dispute resolution.
Operational checklist
Client encrypts before upload; no plaintext leaves the device.
CID and checksum recorded for every submission.
Polygon enforces unlock time; no admin override exists.
Keys never stored on servers; AES 256 used throughout.
Webhooks signed for authenticity and retried with backoff.
Regular reviews and external audits of contract changes.
Bug bounty with responsible disclosure at support@usetala.in.