0 | module Crypto.Hash.Interfaces
5 | interface Digest (0 algo : Type) where
7 | update : List Bits8 -> algo -> algo
8 | finalize : algo -> Vect digest_nbyte Bits8
11 | interface Digest algo => Hash algo where
16 | interface Digest algo => MAC (0 key : Type) algo where
17 | initialize_mac : key -> algo