Documentation

CatCryptCore.Examples.Cryptobox.KEY

KEY: Shared Key Management Game #

The KEY game manages shared keys indexed by session identifiers (SID).

Overview #

Two variants parameterized by b : Bool:

Oracles #

References #

Heap Locations #

State is stored in the global heap via typed locations. Locations are @[reducible] so that .ty reduces for type checking.

@[reducible]

Shared key storage: SID → SharedKey. Default: all default.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[reducible]

    Honesty flags for shared keys: SID → Bool. Default: all false (unset).

    Equations
    Instances For

      Oracle Definitions #

      Each oracle is an SPComp computation that reads/writes heap locations. The b : Bool parameter in keySetOracle switches between real and ideal behavior.

      KSET oracle: set the shared key for a session. If the session already has a key set (honest or corrupt), fails. If b = false (real): stores the provided key k. If b = true (ideal): samples a fresh random key and stores that instead.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        KCSET oracle: corrupt key set — always stores the provided key directly. Marks the session as not honest (corrupt).

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          KGET oracle: retrieve the stored shared key for a session.

          Equations
          Instances For

            KHON oracle: check whether a session's key was set honestly.

            Equations
            Instances For

              Oracle Record #

              Oracle interface for KEY games.

              Instances For

                KEY Game #

                KEY game parameterized by real/ideal behavior b.

                • b = false: real — honest keys are stored as provided
                • b = true: ideal — honest keys are replaced with random samples
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For