【发布时间】:2016-09-22 06:03:06
【问题描述】:
我只需要生成与字符串对应的签名并将其存储在数据库中,然后当再次需要该字符串时,可以使用存储的签名从数据库中提取它(即通过解密签名)。
【问题讨论】:
-
你应该为此散列,就像java中的MD5 stackoverflow.com/questions/415953/…
-
如果您需要从存储的数据中检索原始字符串,那么您需要加密,而不是签名。签名允许您验证给定的数据片段是否与最初签名的字符串相同;他们不允许检索原始数据。 (签名是固定大小的;不可能从固定大小的签名中检索更长的原始字符串。)
-
有很多方法可以做到这一点,但请说明您的要求。为什么需要将数据放入签名中?为什么需要加密?
-
这个要求就像我需要将数据(由客户在表格中填写)存储到数据库中。然后此数据将转换为逗号分隔的字符串,并使用证书的(.p12 格式)私钥为该字符串生成签名。该签名也将存储在数据库中。现在以后,如果再次需要原来填写的数据,那么应该借助存储的签名来提取。 @Maarten Bodewes
标签: java cryptography digital-signature