pub trait OMapCreator<KeySize: ArrayLength<u8>, ValueSize: ArrayLength<u8>, R: RngCore + CryptoRng> {
    type Output: ObliviousHashMap<KeySize, ValueSize> + Send + Sync + 'static;

    // Required method
    fn create<M: 'static + FnMut() -> R>(
        desired_capacity: u64,
        stash_size: usize,
        rng_maker: M
    ) -> Self::Output;
}
Expand description

A factory which makes ObliviousMap objects of some type, based on an ORAM

Required Associated Types§

source

type Output: ObliviousHashMap<KeySize, ValueSize> + Send + Sync + 'static

The storage type produced

Required Methods§

source

fn create<M: 'static + FnMut() -> R>( desired_capacity: u64, stash_size: usize, rng_maker: M ) -> Self::Output

Create an oblivious map, with at least capacity specified. The stash size will be used by ORAMs underlying it.

Implementors§