2015-10-22 17:57:40 UTC
Aleksey Cherepanov found that there is an implementation of scrypt
(perhaps only the subset needed for Litecoin?) written in gcnasm (which
was in turn written by Daniel Bali under GSoC 2013 with Openwall):
It uses this fork of gcnasm, but the changes relative to Daniel's
original are minimal (just one commit "fix bug for gcn-scrypt"):
This shows that gcnasm was almost readily usable to write a complete
kernel for a non-trivial hash and achieve reasonable speeds. Perhaps
Daniel should have tried harder to actually write a JtR format with
gcnasm. And perhaps it's not too late to try now, using this bug-fixed
version and using the scrypt implementation as a sufficiently
non-trivial example of how to actually use gcnasm.
I thought gcnasm was not quite ready for actual use, but I was wrong.
Well done, Daniel Bali and Cheng Liangyu (clyfish)!