簡體   English   中英

fe.net 密鑰錯誤“Fe.net 密鑰必須是 32 個 url 安全的 base64 編碼字節”

[英]fernet key error "Fernet key must be 32 url-safe base64-encoded bytes"

我不斷收到此錯誤,但找不到任何有用的信息。 我沒有將它存儲在一個文件中,而是將它存儲在解密代碼中,這樣一旦它被編譯就沒有人可以看到它(如果有更好的存儲密鑰的方法請告訴我)。

這是錯誤

get_data = ast.literal_eval(Fernet(Key).decrypt((Message).encode('utf-8')).decode('utf-8'))
  File "C:\Program Files\Python37\lib\site-packages\cryptography\fernet.py", line 38, in __init__
    "Fernet key must be 32 url-safe base64-encoded bytes."
ValueError: Fernet key must be 32 url-safe base64-encoded bytes.

這是我的代碼部分

Key = b'pT8ZDjwCvnWkfPEYBm12q2p9srNkM-nWC6Ss9aAcMEw='

我讓代碼更容易閱讀

message_to_decrypt = (message_to_decrypt).encode('utf-8')
ast.literal_eval(Fernet(Key).decrypt(message_to_decrypt ).decode('utf-8'))

試試這個

import base64

key = b'pT8ZDjwCvnWkfPEYBm12q2p9srNkM-nWC6Ss9aAcMEw='

key = base64.urlsafe_b64encode(key)

如果這不起作用,請提供給您錯誤的示例代碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM