Python Hash Strings and Lists to MD5, SHA256, SHA512 with Hashlib Module – POFTUT

Python Hash Strings and Lists to MD5, SHA256, SHA512 with Hashlib Module


Security is important part of the today IT and gains more respect from IT world. Hashing is a security measure to protect and check our data. In this tutorial we will look how to use hash with tables and strings.

What is Hash

Hash is a function where provided data will be converted into another expressions format and can not be recovered back with normal functions.

MD5

MD5 is very popular hashing algorithm created long time ago. It is very popular in IT world. But it have security issues which makes it unsecure for public usage.

SHA1 / SHA224 / SHA256 / SHA384 / SHA512

SHA is a hash algorithm family where different size of hashes can be created. We can create hash from 128 byte to 512 byte. SHA is recent and popular algorithm which can be used securely in our applications and system.

OpenSSL

OpenSSL is popular library which provides cryptographic functions. We can use different encryption and hash algorithms. There is also OpenSSL library and module for Python too.

How To Install and Use OpenSSL Library In Python Applications?

Hashlib Module

Hashlib is the builtin library provided by Python. This library mainly provides diffent type of hash libraries those we have explained previously. We can import hashlib module like below.

import hashlib

MD5 Hash

Now we will look how to hash given value into an MD5 hash. We will use md5() function which is provided by hashlib. In this example we will hash the string poftut.com. In order to create a hash we have to encode given string with  encode() function.

 hashlib.md5('poftutcom'.encode())
MD5 Hash
MD5 Hash

Print Hash Hexadecimal Format

We can print created hash in hexadecimal format. We just need to use hexdigest() function after hash function.

hashlib.md5('poftutcom'.encode()).hexdigest()
Print Hash Hexadecimal Format
Print Hash Hexadecimal Format

SHA256 Hash

We can also create SHA256 hash of given value with sha256() function. In this example we will hash the string poftut.com. As we will see this hash function will provide different values the MD5. The create hash will be longer than MD5 which makes it more secure than MD5

hashlib.sha256('poftutcom'.encode()).hexdigest()
SHA256 Hash
SHA256 Hash

SHA512 Hash

SHA512 is the most secure version of the SHA family. Using this hash will make our implementations more secure. We can use SHA512 like below. As we will see it will create more longer hash result than previously implemented MD5 and SHA256.

 hashlib.sha512('poftutcom'.encode()).hexdigest()
SHA512 Hash
SHA512 Hash

Hash Multiple Values

If we have a lot of objects those need to hashed doing this one by one is very tedious task. We can use loops or map function to implement hash. In this example we will provide 3 strings to hash with sha256 and print them to the console in hexadecimal format.

for h in map(hashlib.sha256,['poftut.com'.encode(),'ismail'.encode(),'ali'.encode()]):
 h.hexdigest()
Hash Multiple Values
Hash Multiple Values

LEARN MORE  What is VPN and VPN Tunnel with Free Vpn List?

Leave a Comment