def test_crypto_hash_sha512(self): self.assertEqual(self.byteHashToString(pysodium.crypto_hash_sha512("test")), "ee26b0dd4af7e749aa1a8ee3c10ae9923f618980772e473f8819a5d4940e0db27ac185f8a0e1d5f84f88bc887fd67b143732c304cc5fa9ad8e6f57f50028a8ff") self.assertEqual(self.byteHashToString(pysodium.crypto_hash_sha512("howdy")), "905caca5c4685f296c5491d38660d7720ee87bef08f829332e905593522907674de8490de46c969d2c585b40af40439b387562d6f776023507753d1a9554ebbb") self.assertEqual(self.byteHashToString(pysodium.crypto_hash_sha512("Correct Horse Battery Staple")), "0675070bda47bef936f0b65ae721d90f82ca137841df4d7cae27776501ae4b446ab926d64dc1d282c8758ac0eb02cc4aa11b2452d4f8ffeb795023b797fe2b80") self.assertEqual(self.byteHashToString(pysodium.crypto_hash_sha512("pysodium")), "ecbc6f4ffdb6e6dcbe6e6beecf0b8e05c11b0cc8a56f2b4098cd613585749fcca5ed1cfda3518e33a5d2c63746ee2857ff6857b9a2eeda4cc208c1e7fd89cc17")
def test_sha2(): """ Used pysoidium.crypto_hash_sha256(message) """ # create keypair without seed verkey, sigkey = pysodium.crypto_sign_keypair() assert len(verkey) == 32 == pysodium.crypto_sign_PUBLICKEYBYTES assert len(sigkey) == 64 == pysodium.crypto_sign_SECRETKEYBYTES verkey = b'Z\x80s\x81\xd3\xf4\xaa\x94\x80\x86\x9bH\x8ay\xc2\xf9\x89k_\x946\xf1_`\x8c\xa9\xd8\xd2b\xe4\x00\x08' # digest of publickey digest = pysodium.crypto_hash_sha256(verkey) assert len(digest) == 32 == pysodium.crypto_generichash_BYTES assert digest == ( b'\x81\xce\x15L\x8b3\xb1mI\x9bF\xd9(\x0e\x99\x08SH6\xb9\xb5)\xf6\x93\xd0\x7f\x85\xe1r\xa7\x13\xd7' ) digestbig = pysodium.crypto_hash_sha512(verkey) assert len(digestbig) == 64 # assert digestbig[:32] == digest # not true for sha256 sha512 dig = hashlib.sha256(verkey).digest() assert len(dig) == 32 assert dig == digest digbig = hashlib.sha512(verkey).digest() assert len(digbig) == 64 assert digbig == digestbig """