[−][src]Trait r1cs::BlockCipher
A symmetric-key block cipher.
Required methods
fn encrypt(
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
input: &Expression<F>
) -> Expression<F>
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
input: &Expression<F>
) -> Expression<F>
Encrypt the given input using the given key.
fn decrypt(
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
output: &Expression<F>
) -> Expression<F>
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
output: &Expression<F>
) -> Expression<F>
Decrypt the given output using the given key.
Provided methods
fn encrypt_evaluate(&self, key: &Element<F>, input: &Element<F>) -> Element<F>
Like encrypt
, but actually evaluates the encryption function rather than just adding it
to a GadgetBuilder
.
fn decrypt_evaluate(&self, key: &Element<F>, output: &Element<F>) -> Element<F>
Like decrypt
, but actually evaluates the decryption function rather than just adding it
to a GadgetBuilder
.
Implementors
impl<F: Field> BlockCipher<F> for MiMCBlockCipher<F>
[src]
fn encrypt(
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
input: &Expression<F>
) -> Expression<F>
[src]
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
input: &Expression<F>
) -> Expression<F>
fn decrypt(
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
output: &Expression<F>
) -> Expression<F>
[src]
&self,
builder: &mut GadgetBuilder<F>,
key: &Expression<F>,
output: &Expression<F>
) -> Expression<F>