This is an implementation of the AES block cipher in scratch. It is based entirely on table lookups, with unrolled inner loops - so it goes pretty fast (in Scratch terms). That's ~10KB/s in the scratch webapp, and ~1000KB/s in TurboWarp. In terms of security, it's probably vulnerable to cache timing side-channel attacks, but otherwise it should be reasonably secure.
TODO: - Make it go even faster, and/or reduce LUT sizes. There's always a tradeoff to make here, but there's room for more tuning and optimisations. - Implement decryption (less of a priority, since modern block modes like GCM only require encryption) - Implement GCM - Make it usable as a standalone "library" in other projects