leo/ast/benches/main.leo
ljedrz 07743b2d75 bench: change the AST bench to a much more complex one
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-14 13:44:59 +02:00

27 lines
688 B
Plaintext

circuit PedersenHash {
parameters: [group; 256],
// Instantiates a Pedersen hash circuit
static function new(parameters: [group; 256]) -> Self {
return Self { parameters: parameters }
}
function hash(bits: [bool; 256]) -> group {
let mut digest: group = 0;
for i in 0..256 {
if bits[i] {
digest += self.parameters[i];
}
}
return digest
}
}
// The 'pedersen-hash' main function.
function main() -> group {
const parameters = [1group; 256];
const pedersen = PedersenHash::new(parameters);
let hash_input: [bool; 256] = [true; 256];
return pedersen.hash(hash_input)
}