一、AES-CMAC算法原理及用途
什么是基于AES的CMAC算法?
采用AES加密算法,使用密钥K,对明文P进行加密,得到的密文C,作为明文P的认证码,和明文P一起传输给接收方。接收方收到后,再使用自己的密钥,对明文再做一次AES加密,生成新的认证码,与接收到的发送方的认证码进行对比验证。如果相等,说明明文没有被篡改,接收方就可以接收明文并处理;如果不相等,说明明文被篡改,数据不安全,则丢弃!
这就是基于AES的CMAC算法,多用于消息数据的正确性认证,生成的认证码,叫作message authentication code,消息认证码,简称MAC。
二、python CMAC生成验证算法实现
from Crypto.Cipher import AES
from Crypto.Hash import CMAC
from binascii import hexlify, unhexlify
import binascii
import os
key = unhexlify(‘2b7e151628aed2a6abf7158809cf4f3c’)
#print(“key:”, key.decode())
message = unhexlify(‘6bc1bee22e409f96e93d7e117393172a’)
#print(“message:”, message.decode())
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂&#x