27 de set. de 2015

Python - Hashlib e HMAC

0 comentários
O HMAC (Hash-base Message Authentication Code) é usado para verificar a integridade de informações e arquivos. Mecanismos que verificam a integridade baseados em uma chave secreta são usualmente chamados de MAC (message authentication codes), baseados em 2 partes que compartilham 2 chaves secretas para validar a informação transmitida. O HMAC usa uma variedade de algoritmos como: MD5, SHA1, SHA256, RIPEMD-128/160, entre outros.

exemplo_hmac.py:
import hmac
import hashlib
# o hmac.new possui 3 argumentos: chave, msg e o modulo do hash
gerar_resumo=hmac.new('chave_secreta','',hashlib.md5)
f=open('arquivo.txt','rb')
try:
    while True:
        bloco=f.read(1024)
        if not bloco:
           break
        gerar_resumo.update(bloco)
finally:
    f.close()
resumo=gerar_resumo.hexdigest()
print resumo