我希望实现类似于写一次的公开/私有加密共享秘密(对于缺乏术语知识没有更好的快速描述)。我想我是在尝试实施HSM。
该计划的内容如下:
实现了以下特性:
上述论证是否有谬误,是否一个合理的方案?公钥可以从密文&加密密钥中导出吗?公钥可以从密文和解密私钥中导出吗?(假设硬件令牌有缺陷,并在外部公开)
本质上,我试图创建一个多因素方案来存储共享秘密,它用于全磁盘加密(LUKS / cryptsetup)。有了以上所述,我将需要访问未锁定的加密磁盘:
但我可以将智能卡用于多个秘密/密文/私钥组合。还是我没有必要让事情变得复杂,应该用智能卡对共享的秘密进行加密吗?
发布于 2014-11-02 13:23:43
加密秘密被HSM或智能卡解密并非闻所未闻。通常,智能卡或HSM本身用于加密/解密存储的秘密值。我知道至少有一个HSM能做到这一点,而且所有的TPM都在那里。
如果你接受无限数量的秘密,那么你似乎产生了无限数量的密钥对。如果接受公钥/私钥对的任何组合,那么您也可以始终使用相同的公钥/私钥对。
顺便提一句,谈论一个512个字符的秘密是很奇怪的。这在密码学中没有任何意义(除非您指的是从本质上转换为字节的C/C++ char值)。
导出公钥吗?
不,如果加密的密钥是作为原始密钥材料表示的,则不会。这两种输出都应该(几乎)与随机没有区别。
如果没有一个秘密的公钥,你想要完成的事情应该是可能的。使用超出其界限的密码是危险的,应该避免。
是的,几乎可以肯定,除非公共指数具有与私有指数相同的性质。模数是已知的,因此需要保证公共指数的安全。大多数私钥容器将包含CRT参数和/或公共指数。此外,公钥的指数通常是一个已知值,如Fermat (65537)的3或第四个数。
是。这看起来至少比你上面描述的方案更合理。
即使这个计划不是直接错误的,它也包含太多的假设,留下太多的东西没有很好的描述。直接实现不太可能是安全的。
https://crypto.stackexchange.com/questions/19945
复制相似问题