theanolasagnetheano-cuda

Using Theano and Lasagne with FIPS Enabled


I have the following:

I installed Theano and Lasange with pip without issue, but when I import lasange I receive an error related to FIPS:

$: python
Python 2.7.5 (default, Aug  2 2016, 04:20:16)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import lasagne
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: error:060800A3:digital envelope routines:EVP_DigestInit_ex:disabled for fips

Is there some workaround known or available? Unfortunately I have to have FIPS enabled.

I'm just starting out with Theano and Lasagne so I apologize if I need additional help to troubleshoot.


Solution

  • As of now, it looks like md5 hashing is hardcoded into the library and has been acknowledged by Theano developers: https://github.com/Theano/Theano/issues/5757

    Update: May 25, 2017

    I have modified the theano code so it uses sha256 instead of md5. This has resolved the FIPS issues I've been experiencing and has not slowed down any computation I've been running.

    You can review the pull request here: https://github.com/Theano/Theano/pull/5916 and you can download my changes here until it is merged: https://github.com/dareneiri/Theano , if indeed it is accepted.