gpt4 book ai didi

python - base64编码时属性错误

转载 作者:太空宇宙 更新时间:2023-11-04 08:40:50 26 4
gpt4 key购买 nike

我有两个使用 curve25519 生成的 key ( secret key 和公共(public) key )。我想使用 base64.safe_b64encode 对这两个 key 进行编码,但我一直收到错误消息。有什么方法可以使用它进行编码吗?

这是我的代码:

import libnacl.public
import libnacl.secret
import libnacl.utils
from tinydb import TinyDB
from hashlib import sha256
import json
import base64

pikeys = libnacl.public.SecretKey()

piprivkey = pikeys.sk
pipubkey = pikeys.pk

piprivkey = base64.safe_b64encode(piprivkey)
pipubkey = base64.safe_b64encode(pipubkey)

print("encoded priv", piprivkey)
print("encoded pub", pipubkey)

这是我得到的错误:

Traceback (most recent call last):
File "/home/pi/Desktop/finalcode/pillar1.py", line 130, in <module>
File "/home/pi/Desktop/finalcode/pillar1.py", line 50, in generatepillar1key
piprivkey = base64.safe_b64encode(piprivkey)
AttributeError: 'module' object has no attribute 'safe_b64encode'

最佳答案

出现此错误的原因是 base64 库没有名为 safe_base64encode 的函数。 safe_base64encode 是什么意思?为什么要用 base64 对两个 key 进行编码?有urlsafe编码函数,也有常规base64编码函数。

encoded_data = base64.b64encode(data_to_encode)

encoded_data = base64.urlsafe_b64encode(data_to_encode)

后者只是有一个不同的字母表,- 而不是 +_ 而不是 /所以它是 urlsafe。我不确定您想做什么,但请参阅文档 here

关于python - base64编码时属性错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45039289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com