Amid the rise of HTTPS, there are still many spots where content shifted encrypted across the web is ultimately stored in wide-open plain text, so a Mozilla engineer wants to close one of those gaps.
In an Internet Engineering Task Force RFC published this month, a proposal by Martin Thomson (also a member of the Internet Architecture Board), first mooted in late 2015, has been updated and pushed into the IETF's Standard Track.
In RFC 8188, Thomson explains there are good reasons to encrypt data long after it has been exchanged between clients and servers.
If, for example, you may want to store files uploaded to a server encrypted with a particular key so that only the person, or people, with the necessary decryption key can unlock it. The data can be sent securely to the server via HTTPS but you may want to automatically keep it protected even when it's committed to disk. Rather than hoping that engineers remember to implement that level of security, Thomson hopes to embed the capability into applications with a standard specifying content coding for HTTP.
He also notes that it wasn't practical to adapt message-based encryption formats (he cites OpenPGP's RFC 4880, the Cryptographic Message Syntax in RFC 5652 and other examples) because those don't meet HTTP's need for stream processing. Rather, Thomson's RFC suggests using AES 128 in Galois/Counter Mode.
The scheme “only provides content-origin” authentication, the RFC notes, but that “ensures that an entity with access to the content-encryption key produced the encrypted data.” ®