午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

Python3和hmac。如何處理不是二進(jìn)制的字符串

瀏覽:14日期:2022-08-07 13:30:42
如何解決Python3和hmac。如何處理不是二進(jìn)制的字符串?

您可以使用字節(jié)字面量: b’key’

def _generate_signature(data): return hmac.new(b’key’, data, hashlib.sha256).hexdigest()

除此之外,請(qǐng)確保data也是字節(jié)。例如,如果從文件中讀取文件,則在打開文件時(shí)需要使用binary模式(rb)。

解決方法

我在Python2中有個(gè)腳本,效果很好。

def _generate_signature(data): return hmac.new(’key’,data,hashlib.sha256).hexdigest()

數(shù)據(jù)是的輸出json.dumps。

現(xiàn)在,如果我嘗試在Python 3中運(yùn)行相同類型的代碼,則會(huì)得到以下信息:

Traceback (most recent call last): File '<stdin>',line 1,in <module> File '/usr/lib/python3.4/hmac.py',line 144,in new return HMAC(key,msg,digestmod) File '/usr/lib/python3.4/hmac.py',line 42,in __init__ raise TypeError('key: expected bytes or bytearray,but got %r' %type(key).__name__)TypeError: key: expected bytes or bytearray,but got ’str’

如果我嘗試將密鑰轉(zhuǎn)換為字節(jié)這樣的操作:

bytes(’key’)

我懂了

Traceback (most recent call last): File '<stdin>',in <module>TypeError: string argument without an encoding

我仍在努力理解Python 3中的編碼。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 你懂的视频在线播放 | 国产精品久久久久一区二区三区 | 91n在线观看 | 国产又大又粗又爽 | 国产 日韩 欧美 在线 | 免费麻豆视频 | 日韩欧美无 | 亚洲自拍偷拍在线 | 四虎网址在线观看 | 亚洲一二三四五六区 | 在线中文视频 | 对白超刺激精彩粗话av | 天堂中文在线资 | 成人黄页| 伊人久久伊人 | 欧美一级性 | 免费日本黄色 | 五月天开心激情 | 成人精品二区 | 成人av网站在线观看 | 怡红院欧美 | 亚洲手机视频 | 久久精品国产77777蜜臀 | 麻豆久久久久久 | 日韩亚洲天堂 | 国产成人精品网 | 超碰最新在线 | 四虎91| 亚洲色图av在线 | 天天操天天操 | 韩国色片| 国产精品www. | 日本亚洲最大的色成网站www | 国产一级免费观看 | 日韩欧美在线不卡 | 久久久久久国产精品 | 亚洲影视一区二区三区 | 国产精品欧美激情在线 | 青春草在线免费观看 | 青青草在线视频免费观看 | www.久久av |