Decryption

我的 fernet 密鑰“過期”了怎麼辦?

  • September 14, 2021

6 個月前,我創建了一個機器人,它基本上將每個使用者的數據以 json 格式儲存在不同的文本文件中,並且我有一個 fernet 密鑰。我基本上已經有 2 個月沒碰它了,因為它是一個面向學生的機器人。所以事情就是這樣,開學 15 天,我有 106 個帳戶,這些帳戶使用單個 fernet 密鑰加密,我無法解碼任何文件,因為它說它已損壞。我能做些什麼?

在仔細研究了 fernet 原始碼之後,看起來一種可能性是您在加密數據上設置了 TTL。

如果您使用的是 Ruby,您可以使用配置選項禁用 TTL 檢查config.enforce_ttl

如果您使用的是 Go,看起來您可以將ttl0傳遞給VerifyAndDecrypt

您也許可以使用 fernet CLI 測試這個理論,因為它似乎預設禁用 TTL 檢查(如果我正確解釋了 Ruby 程式碼)。

引用自:https://crypto.stackexchange.com/questions/93564