Changed object variables in CryptoUtils to ThreadLocals

This allows multiple threads to utilize the CryptoUtils

The test does not ensure that the two threads really used the methods of the CryptoUtils at exactly the same time. I currently don't know how this could be achieved. I'm grateful for any input...