AES-128 in PASM

Warning message

The Propeller Object Exchange system is decommissioned and replaced with a GitHub repository to house the same existing and future Propeller objects. As of 12/5/2019, this site is read-only. You can continue to browse and download objects from here for a limited time; however, please begin using the Parallax Propeller repository for future reference.
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
Request group membership
By: created: 2010-09-10 | updated: 2013-06-17


Attached is a functioning AES-128 implementation in PASM (with just enough SPIN to set the pointer to the SBox & InvSBox lookup tables).

1. I have tested it (successfully) against the FIPS-197 example using GEAR V09_10_26. (Note: this is the Data and Key in the file, output in istate.)2. It is not a complete driver, it just encrypts & decrypts data loaded with the PASM and leaves that data in the COG. Adding data movement (along with the steps needed to support multi-block modes) is left to the implementor.

Performance: Key Expansion ~4.4K cycles, Cipher ~16.1K cycles/block, Inverse Cipher ~18K cycles/block.


Original File Upload
Package icon AES-128.zip8.29 KB