Including reading and writing encrypted payload format (see Bindata SubType 6 document)
This should be done by extending and deriving from DBClientBase a new class that implements encrypt, decrypt, and generateDataKey. The Mongo object in Javascript is just an adapter for DBClientBase so deriving a new class from it that maintains the KMS information would be the least intrusive.
API:
encrypt(algorithm: string, keyId: UUID, iv? : byte[]) : BinData {}
decrypt(value: BinData) : BSON {}
- depends on
-
SERVER-39892 Integrate KMS Message Library with synchronous stream-oriented socket network layer
- Closed
- is depended on by
-
SERVER-39897 Implement field level encryption for various commands in JS shell API
- Closed