OpenWrt Forum Archive

Topic: python-crypto: RIPEMD-160 self-test failure

The content of this topic has been archived on 3 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi,

I'm trying to compile PyCrypto 2.6.1 for Chaos Calmer (targeting ar71xx), based on the Makefile/patches from the old packages feed. The library compiled without any fatal errors and I'm able to package and install on my router (TP-Link TL-MR3020).

To be sure it's working correctly, I transferred setup.py to my router and ran the self-test. All the tests passed except for the 9 RIPEMD-160 hash tests. The library function(s) seem to return normally, but the returned hash is incorrect, e.g.:

FAIL: runTest (Crypto.SelfTest.Hash.common.HashSelfTest)
RIPEMD #1: '' (empty string)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/Crypto/SelfTest/Hash/common.py", line 88, in runTest
    self.assertEqual(self.expected, out1)   # h = .new(); h.update(data); h.digest()
AssertionError: '9c1185a5c5e9fc54612808977ee8f548b2258d31' != '7c7c0f550ddb9e5ebf157869ea147e65cb89bb0e'

I'm unsure how to proceed at this point; my searches on Google haven't returned any relevant results. What area/library/etc should I investigate/debug to fix this? Any help would be appreciated.

Thanks!
Jeff

(Last edited by jeff_themovie on 28 Oct 2015, 12:07)

The discussion might have continued from here.