Skip to content

Chess Engine Entropy #7

@TheExpandingPolytope

Description

@TheExpandingPolytope

Description
We want to create a module (written in any lanugage, C++, Rust, Python) that takes a random hash/number as input from an external trusted source into the machine, and upon recieval of this random number, it injects randomness into the cartesi machine in such a way that encapsulates every possible case of entropy that can exist within a computer (For now, just every way that a chess engine can derive entropy).

Steps

  1. First step is determining where chess engines derive their non-determinism from. There could be many answers to this one question.
    Question on reddit

  2. Second step is creating a module/library that can take a random number as input and distribute entropy throughout the Cartesi machine in a way that encapsulates all the avenues that a chess engine can derive randomness from. For example, if chess engine a uses a C++ rand library that derives is randomness from "/dev/random" or "/dev/urandom" then this module must, at the very least, take the random number it recieves as input and manipulate the value of "dev/random" or "/dev/urandom". This module will recieve inputs through standard input so that simple subprocess calls can be made through our python scripts like so subprocess.run(["./gen_entropy", "-hash", "16264848662284"])
    Randomness in Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions