【问题标题】:RSA encryption using blocks使用块的 RSA 加密
【发布时间】:2014-04-20 03:08:30
【问题描述】:

我正在尝试使用块来实现 RSA 加密,以减少使用大比特长度进行解密的运行时间。我的程序现在的方式,它可以工作,但会读取单个字符并对其进行解密。正如您可能想象的那样,大位长度的运行时间很长。

有没有一种方法可以使用块轻松实现解密,以便在这些大位长度下更快地工作。如果简单可行,带有实现的代码示例会很好。谢谢。

【问题讨论】:

    标签: java encryption block rsa


    【解决方案1】:

    根据您的描述,您似乎使用了以下加密方案:

    for i=0 to length(input):
        output(RSA_encrypt(key, input[i]))
    

    这不是一个安全的加密方案。您似乎在寻求一种类似于

    的方法
    for i=0 to blocks(input):
        output(RSA_encrypt(key, block(i, input)))
    

    这同样不安全。基于 RSA 的安全加密方案通常涉及使用 RSA 加密唯一的会话密钥,然后使用对称密码(如 AES)加密消息。例如,请参阅RSAES-OAEP。不要尝试自己实现它,因为你可能会弄错。相反,请使用信誉良好的密码库。

    永远记住加密规则:

    1. 永远不要设计自己的加密货币。
    2. 永远不要实现自己的加密。
    3. 任何人都可以设计自己无法破解的加密货币。

    【讨论】:

    • +1 表示 Never design your own cryptoNever implement your own crypto。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2019-05-08
    • 1970-01-01
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 2013-03-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多