【问题标题】:Does Linux Kernel Support RSA Encryption/Decryption?Linux 内核是否支持 RSA 加密/解密?
【发布时间】:2019-12-08 16:02:02
【问题描述】:

我目前正在制作原型。我需要 Linux 内核级别的 RSA 加密,尽管根据我的研究,Linux 内核似乎只支持签名验证。当我查看 rsa.c 和 rsa_helper.c 中的代码时,似乎有一个设置为静态的 rsa 全局结构,它具有带有变量名的函数指针:加密和解密。

此外,关于非对称 API 的文档并不多。 tcrypto.c 甚至不测试任何非对称加密 API。这似乎是一个巨大的限制。我知道非对称加密不如对称加密快,但我的原型需要它。

希望我不需要推出自己的 RSA 加密/解密例程,因为这将是一个重大挫折。

【问题讨论】:

  • 你检查过kconfig吗?它具有在 Crypto API 中启用 RSA 的选项。
  • @forest Nvm,我明白了。
  • 是的,我确实看到了。不过,它似乎并没有提供很多信息。例如,crypto_alloc_akcipher 参数是 alg_name、类型和掩码。它并没有真正详细介绍要传递的那些参数的值。我想我只需要对源代码进行一些挖掘。
  • 如果你只是想写一个支持 RSA 的程序,你不需要调用内核来做。使用实现 RSA 的库是完全可以的。

标签: cryptography linux rsa api kernel


【解决方案1】:

是的,Linux 内核支持 RSA 加密/解密。

感谢一些 cmets,我决定更深入地研究内核源代码。 This page 有点帮助。不幸的是,它不需要任何代码示例。

如果您想要一些代码示例,那么您可以查看 crypto 目录下的 testmgr.c。它包含代码中支持的算法的完整列表。

【讨论】:

  • 小心。该实现可能无法抵抗侧信道攻击
  • @kelalaka 感谢您的提示。
  • Linux 内核是否支持椭圆曲线密码术?既加密又解密,不仅仅是签名验证。
猜你喜欢
  • 1970-01-01
  • 2018-09-05
  • 2011-05-13
  • 1970-01-01
  • 2012-03-13
  • 2018-04-27
  • 2015-03-16
  • 1970-01-01
相关资源
最近更新 更多