On 11/06/2012 12:27 PM, Niels Möller wrote:
_salsa20_core produces byteswapped output (a somewhat peculiar interface, but it's an internal function, the reason is to be able do do any needed swap with word operations). So I think it should be a plain memcpy above.
Testing on both little-endian and big-endian would be nice
I've tested on a powerpc machine running debian sid, starting at the current HEAD (1c7d767b4ca224e26b7d7d3875d2d89201accb29); at the HEAD, "make check" passes all tests with no problems.
With simon's 0001-Add-salsa20_core-function.patch applied (i manually tuned the Changelog entry), i get:
PASS: gosthash94 PASS: ripemd160 Assert failed 193: MEMEQ (SALSA20_BLOCK_SIZE, dst, H("a41f859c6608cc993b81cacb020cef05" "044b2181a2fd337dfd7b1c6396682f29" "b4393168e3c9e6bcfe6bc5b7a06d96ba" "e424cc102c91745c24ad673dc7618f81")) Aborted FAIL: salsa20 PASS: sha1
I'd be happy to figure out how to give access to this powerpc machine if any of y'all want it, or to make other changes and test them on this big-endian machine.
hth,
--dkg