Skip to content

inmcm/salsa20-hdl

Repository files navigation

WORK IN PROGRESS

Behavioral VHDL Implementation of the Salsa20 Stream Cipher

Compilation/Simulation test suite using GHDL can be run:

sh ./simulate.sh

In addition to reporting success/failure, a VCD file is output which can be rendered with tools such as Scansion and GTKWave

Test vectors taken from the official paper and generated with Python Salsa20 NaCl bindings

Complete

From the official paper:

  • quarterround function
  • rowround function
  • columnround function
  • doubleround function
  • Salsa20 Hash Function
  • Salsa20 Expansion Function
  • Salsa20 Encryption Function

TODO

  • Setup logic
  • Count Increment
  • Input/Output
  • Message XOR

About

VHDL Implementation of Salsa20 Stream Cipher

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published