Passport Numbers
Encrypted Passport Number Input Field
Passport numbers entered on immigration and travel websites are exposed to every script on the page. SmartField encrypts them with military-grade AES-256-GCM encryption.
The Problem
Passport Numbers entered in a standard HTML input are immediately accessible to any JavaScript on the page:
// Any script, extension, or tracker:
document.querySelector('input').value
// Your passport numbers in plaintext
The Solution
<smart-field type="password" encrypt-key="/api/sf-key"
placeholder="Enter passport numbers"></smart-field>
Now the same attack returns AES-256-GCM encrypted data. The passport numbers never exist as plaintext in the browser.
What the User Sees
The user types normally. The screen shows animated cipher characters: ΣΩΔψξλμπ
The real passport numbers are stored in a WeakMap (invisible to JavaScript) and encrypted with AES-256-GCM (unreadable without the server key).
Server-Side Decryption
// Node.js
const sf = require('@smartfield-dev/server');
await sf.init();
const data = await sf.decrypt(req.body.field);
// Your passport numbers in plaintext, server-side only
Frequently Asked Questions
How does SmartField encrypt passport numbers?+
SmartField generates a new AES-256 key and IV for every encryption. Passport Numbers are encrypted before they exist in the DOM. The AES key is wrapped with RSA-2048. Only your server can decrypt.
Can trackers like Hotjar capture passport numbers?+
No. Hotjar records DOM content. SmartField stores passport numbers in a WeakMap inside a closed Shadow DOM. Hotjar only captures cipher characters.
What server languages are supported?+
SmartField provides SDKs for Node.js, Python, Java, Go, PHP, and Ruby. All tested and verified.
Related Pages