问题标签 [python-cryptography]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ValueError:在 jwt 编码期间无法反序列化密钥数据
我正在尝试使用 jwt 生成令牌,并且正在传递有效负载、secret_key 和算法('RS256')。这是代码的一部分
我收到此错误
当我使用HS256 algorithm
时,会生成一个令牌,但是当我使用时RS256 algorithm
,我会收到上面的错误。我已经尝试了几乎所有在线提供的解决方案,但我仍然遇到同样的错误。
我的密钥具有以下格式:
预期的输出应该是一个令牌
python - 用相同的密钥解密文本,给出无效的令牌
我可以使用来自特定文件的密钥进行加密key1
,但我无法使用相同的密钥解密文件,cryptography.fernet.InvalidToken
即使它是来自同一文件的相同密钥Securi1.key
并读取为rb
它应该解密文本,然后用加密文件中不会解密的OG文本替换加密文本
python - ImportError:密码学版本与加载的共享对象不匹配
我正在使用帕拉米科。知道如何使用该Paramiko.RSAKey.from_private_key()
功能吗?我有兴趣使用函数来解析私钥并将该私钥用于 SSHClient。
我想运行的代码:
结果:
ImportError:加密的版本与加载的共享对象不匹配。如果您在 Python 路径中安装了多个密码学副本,则可能会发生这种情况。请尝试创建一个新的虚拟环境来解决此问题。加载的python版本:2.4.2,共享对象版本:b'2.7'
它似乎是 lib 密码学的一个问题:
我有 python 3.7.1 我已经安装了 Paramiko 使用pip install
以下是有关我用于 paramiko 的版本的一些信息:
以下是有关我用于加密的版本的一些信息:
我没有安装密码学并安装了相同版本的 paramiko:
相同的错误仍然存在
python - 在 Python 中加密私钥
我有一个 DER 格式的私钥。我正在尝试将其转换为 PEM 并同时使用密码加密私钥。
这是我用来转换和加密的 openssl 命令:
我正在尝试在 Python 中实现类似的逻辑,其中我有 DER 格式的内存中密钥的数据。我想将其更改为 PEM,对其进行加密,然后存储到文件中。
我不太熟悉 Python 的 Crypto 库,而且我很难找出正确的方法来转换和加密我的关键数据。
python - 解密功能的令牌无效?
我一直在使用 cryptography.fernet python 库来尝试加密文件中的某些字符串,但是每次我从文件中读取并尝试解密它时,都会说我将无效令牌传递给了解密函数。我只需要它从文件中读取并将其解密为已读。
我已经检查了我传递给函数的变量类型,它是一个字节类型变量。我已经删除并重新制作了该文件,但我不确定为什么它说它是一个无效的令牌。
这是我收到的确切错误消息。
我会很感激我能得到的任何帮助。
python - ValueError:使用 AES256 解密时填充字节无效
我正在尝试使用库重写此cryptography
解决方案,但在解密过程中出现填充错误,即ValueError: Invalid padding bytes.
这是我目前拥有的密码类:
当代码到达方法中时引发unpadded = unpadder.update(plaintext) + unpadder.finalize()
异常decrypt
。为什么填充失败?例如:
python - 在 Python 中使用 EC 生成公钥
我正在创建 JWT 解析器,现在我需要创建公钥。我是在 Kotlin 中实现的。但现在我必须在 Python 中创建相同的解析器。但我陷入了在 python 中创建 X.509 证书的困境。我尝试使用cryptography
图书馆但没有成功。Kotlin 中的代码。感谢您的回复。
python-3.x - Python xmlsec XML 签名值不匹配
我是 xml 签名的新手,目前我正在使用 xmlsec 生成签名的 xml。我对示例代码进行了一些修改:
现在我已经签署了 XML,并且从这里我试图了解值是在哪里或如何生成的。我正在关注上下文。我能够验证DigestValue
,现在我正在尝试获取SignatureValue
. 从stackoverflow中的链接和其他一些问题,我只需要:
- 规范化整个
SignedInfo
元素 - 哈希结果
- 签署哈希
为了得到签名值。我正在使用以下方法对SignedInfo
元素进行规范化lxml
:
有关信息,结果如下SignedInfo
:
我正在使用密码学来尝试生成SignatureValue
但是,我无法获得与 xmlsec 生成的结果相同的结果。
这是我这样做的代码片段:
我还尝试将其加载SignedInfo
到单独的文件中,但是仍然得到不匹配的 SignatureValue。我该如何做到这一点?
python - 每次用户要加密一个新文件时,我是否应该生成一个新的 RSA 密钥对?
我正在做一个项目,我将在其中加密一些文件。我已经实现了 AES 功能,现在我正在实现 RSA 部分。在 AES 部分,每次我要加密一个新文件时,我都会创建一个新密钥,即使密码是相同的,使用不同的盐也是如此。为了恢复上述密码,我需要将一个已知的密码和盐散列在一起。我应该对 RSA 公钥和私钥做同样的事情吗?如果是这样,我可以将我在 AES 密钥上使用的方法应用于 RSA 密钥吗?或者我的方法应该不同吗?
这就是我生成 RSA 密钥的方式:
这就是我处理加密/解密过程的方式:
python - Python如何使用模数+指数使用RSA进行编码
您好,我需要使用模数和指数 + 输入使用 RSA 对文本进行编码
我已经尝试过了,但出现错误
AttributeError:“str”对象没有属性“bit_length”