The libcrypto and libssl libraries normally come as a pair. Using a mismatched pair is likely to result in crashes or other misbehaviors.
This issue should not happen on a normal system. As such, when it does happen it is likely to be caused by a unique set of circumstances which makes it hard to provide general steps for its resolution.
That said you may first check whether either library is an old version left over after an upgrade. For instance a libcrypto.so.0.9.7 file with no matching libssl file but current 0.9.8 files for libcrypto and libssl. If that's the case you may delete the lone file after double checking with your package manager that it is not mean to be there (use dpkg -S or rpm -qf there).
You may also try to follow the instructions for installing libssl.