我正在尝试使用openssl解密library(data.table)
data.table::rbindlist(json_file, fill= TRUE)
文件。我有.enc
键可用。
这就是我在做什么:
.pem
并返回以下内容:
大于mod len的数据
有什么我想念的吗?
答案 0 :(得分:2)
我们不知道文件是如何创建的或内容是什么。看来您的私钥解析正确,但是模数具有一定数量的位,例如2048位。这意味着 raw RSA(模块化幂运算)只能加密与模数相同的字节。
更精确地说,当数据使用无符号大端编码转换为数字时,应小于模数。如果您的数据较大,则解密将失败,这意味着它要么以不同的方式生成(例如,可能具有其他编码),要么是使用其他更大的RSA密钥生成的。
请注意,由于要确保RSA安全,因此需要使用填充开销,因此可以加密的数据要小得多。在数字转换和模幂运算之前,对输入消息执行填充。另外请注意,RSA始终只执行一次,而不会像通常的分组密码那样重复执行。
所以您不会丢失任何东西,而是在file.enc
中有太多字节。