Plasma GitLab Archive
Projects Blog Knowledge

sig
  module Symmetric_cipher :
    sig
      type sc_ctx = {
        set_iv : string -> unit;
        set_header : string -> unit;
        encrypt : Netsys_types.memory -> Netsys_types.memory -> unit;
        decrypt : Netsys_types.memory -> Netsys_types.memory -> bool;
        mac : unit -> string;
      }
      type sc = {
        name : string;
        mode : string;
        key_lengths : (int * int) list;
        iv_lengths : (int * int) list;
        block_constraint : int;
        supports_aead : bool;
        create : string -> Netsys_crypto_modes.Symmetric_cipher.sc_ctx;
      }
      val extract :
        (module Netsys_crypto_types.SYMMETRIC_CRYPTO->
        string * string -> Netsys_crypto_modes.Symmetric_cipher.sc
      val extract_all :
        (module Netsys_crypto_types.SYMMETRIC_CRYPTO->
        Netsys_crypto_modes.Symmetric_cipher.sc list
      val cbc_of_ecb :
        Netsys_crypto_modes.Symmetric_cipher.sc ->
        Netsys_crypto_modes.Symmetric_cipher.sc
      val ofb_of_ecb :
        Netsys_crypto_modes.Symmetric_cipher.sc ->
        Netsys_crypto_modes.Symmetric_cipher.sc
      val ctr_of_ecb :
        Netsys_crypto_modes.Symmetric_cipher.sc ->
        Netsys_crypto_modes.Symmetric_cipher.sc
    end
  module type CIPHERS =
    sig val ciphers : Netsys_crypto_modes.Symmetric_cipher.sc list end
  module Bundle :
    functor (C : CIPHERS-> Netsys_crypto_types.SYMMETRIC_CRYPTO
  module Add_modes :
    functor (SC : Netsys_crypto_types.SYMMETRIC_CRYPTO->
      Netsys_crypto_types.SYMMETRIC_CRYPTO
end
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml