【发布时间】:2023-04-05 06:06:01
【问题描述】:
我已经在我的 PC 上成功构建并编译了一个应用程序,它将生成一个 RSA 密钥对(我使用 GPK 进行长算法)。然后我在字符串“Hello World”上测试了加密/解密(ASCII --> 首先是十六进制转换)。
我的问题是,在数学上是否可以仅从我的密文字符串“Hello World”中解密“Hello”,或者我必须先加密“Hello”,然后加密“World”,然后再解密分开吗?
编辑:我想要的用例:
我有一个芯片(Xilinx 的 Zynq SoC),它只有 256K 的片上内存和 512K 的二级缓存。
我可以用一些基本指令/数据预填充和锁定缓存,然后将 256K 用于我的堆栈、堆和 .data/.bss 代码部分(变量)。
我需要更多空间,所以我想我可以使用 256K 作为“交换”空间,并从外部加密闪存中获取其余的 .text(指令代码),但我需要对其进行解密- 芯片来维护安全。
我想知道是否可以加密整个图像,然后“获取、解密、解码、执行”。看起来我可能仅限于以 256K 块加密我的图像,并以该大小的块解密它。
【问题讨论】:
-
你能发布你的代码吗?
-
不要为此使用 RSA。使用像 AES 这样的分组密码——它们支持您正在考虑的那种分块操作,并且块大小要小得多(例如,一次 128 或 256 位)。我相信 Zynq SOC 甚至可能已经在硬件中安装了 AES。
标签: math encryption cryptography rsa