Skip to content
This repository was archived by the owner on Oct 2, 2025. It is now read-only.

v0.1.0

Choose a tag to compare

@PlexSheep PlexSheep released this 30 Oct 19:01
500d8a8

0.1.0 (2024-10-30)

Features

  • add sd_timeout debug action to check that jobs actually time out (fe46a71)
  • block2poly: implement block2poly action (93c47d5)
  • c1: add defining relations for smaller fields (d13521d)
  • c1: display solution and operation (63417d9)
  • c1: first implementation of add and mul (3c14f92)
  • c1: implement solve (43a1a14)
  • c1: structure for calculating with polynomials on F_2_128 (4140934)
  • c1: try to display a polynom and fail miserably (6e65d44)
  • c1: understand machine repr of polynomails and display it correctly (0140a64)
  • cipher: add xex action with empty functions (b83dcbd)
  • cipher: decryption for sea_128_xex (a819b50)
  • cipher: first version of sea_128_xex_encrypt (72b7ead)
  • cipher: make sea_128_xex encrypt work for the test (02292a6)
  • cipher: sea_128 decrypt but wrong, nopad (02a78e2)
  • cipher: sea128 encrypt (50ff66d)
  • cli: allow inputting actions with args with options instead of a JSON file #9 (b91d606)
  • cli: CLI with getopts (afd62cc)
  • cli: dump testcase definition with verbose output (cc0d215)
  • cli: read from stdin when the first argument is - #8 (ecd5a67)
  • common: add get_bytes_maybe_hex (87aa22f)
  • common: add put_bytes and get_bytes for getting and writing bytes to and from json (6a15555)
  • common: add veprintln function to help with verbose debug prints (4be7c2c)
  • common: encode and decode bytes to and from hex (57e19a1)
  • common: get bit at index (11fea74)
  • common: tag some json value (17cd0e6)
  • common: vec to arr (767251f)
  • example: solve the first example testcase addsub (8f9590d)
  • ffield: add gfmul action (e998611)
  • ffield: add SD_DisplayPolyBlock action #7 (16ee7d9)
  • ffield: implement a primitive multiplication that only works with y=alpha (e249b6c)
  • ffield: make mul work with a horrible hack, but I don't know how else to do it (cffffbe)
  • ffield: perform gfmul action (db3d5d3)
  • ffield: work on poly2block and block2poly (dbf76c2)
  • make use of threadpools and allow the user to set a thread count in an environment variable (f80be65)
  • poly2block: works (fb30a41)
  • print challenge type to stderr on start and end (c7981bc)
  • select and run testcases with the specified json format (37b7c53)

Bug Fixes

  • add common as a module (34c5d39)
  • c1: adjust the DEFINING_RELATION_F_2_128 to what I think is correct (3e1f07d)
  • cipher: deencrypt the xor'd data instead of the ciphertext (630b9fc)
  • cipher: fix xor in decryption for sea_128 (090eda0)
  • cipher: used the first key for tweak encryption and the second for block encryption in xex mode (0c443a7)
  • common: bytes_to_u128 paniced when input was too large, because the length was not being checked correctly (de82715)
  • don't report an envvar error if the envvar is just not defined (3cb4804)
  • ffield: block2poly sort is required to be ascending (79db6c7)
  • ffield: simplified mul works (025a5c4)
  • ffield: simplified mul works (1651df3)
  • ffield: simplified mul works (78b9a7f)
  • msrv: use map_err instead of inspect_err to support rustc 1.75 (3e9fd36)
  • mul_alpha run if poly_a is alpha (1d30e80)
  • result handling for jobs was wrong (recv_timeout wraps in a result) (6d211c2)