jarv.org

Go rewrite of cmdchallenge

I’ve decided to take what was written years ago for cmdchallenge.com and port it to a single Go app. This is a pretty big change because I will be removing most of the AWS serverless components including API Gateway, Dynamo and possibly CloudFront. In the process, I would also like to simplify the architecture a bit. It seems like a single process with Docker running locally, and a db like sqlite should be sufficient. Here are some notes for the transition:

So first thing to do is create a schema for commands:

    CREATE TABLE `commands` (
      `fingerprint` TEXT,
      `challenge_slug` TEXT,
      `cmd` TEXT,
      `cmd_length` INT,
      `correct` BOOL,
      `create_time` INT,
      `output` TEXT,
      `source_ip` TEXT,
      `resp` TEXT
    );

On removing Cloudflare caching, I think it will be interesting to remove it altogether, I assume that cache lookups in sqlite will be performant enought to bypass the extra caching layer.