adding support for SHA256
adding support for SHA512