CLWW ORE
Website | Docs | Discussions
Fast, efficient Order-Revealing and Order-Preserving Encryption
This crate implements the Order-Revealing Encryption (ORE) and Order-Preserving Encryption (OPE) schemes from Chenette, Lewi, Weis and Wu (Stanford, 2015 — hence "CLWW").
Both schemes are faster and more space efficient than the "Block" ORE scheme developed by Lewi and
Wu a year later, but have weaker security properties. The OPE variant additionally produces
ciphertexts that compare under standard lexicographic byte ordering, with no custom comparator
required — making it usable directly with operators like <, > and BETWEEN in databases that
already know how to compare opaque byte strings.
At CipherStash, we use the ORE variant for encrypting terms in our encrypted JSON indexer. For ordered range queries on encrypted columns we prefer ORE with a custom operator family/class, falling back to the OPE variant only when the database doesn't provide those. For everything else we use the Block scheme; see ore.rs for more information.
CipherStash
CLWW ORE is brought to you by the team at CipherStash.