【问题标题】:How to encrypt and decrypt integers?如何加密和解密整数?
【发布时间】:2015-12-19 01:43:52
【问题描述】:

是否有可能以某种方式将整数转换为一串随机数和字符? 例如:

Integer i=1;
String genStr=generateString(i);

genStr 生成后会是这样的WxmFbBirXVaQ2VnN2s
然后我需要将genStr 转换回数字。这样的东西:

i=backToInteger(genStr);

所以基本上我需要两个功能:加密和解密
在用每个唯一 ID 标记我的文件后,我需要它。
当我将此 ID 发送到控制器时,我想要显示的内容:
https://localhost:8080/MyController/open?id=WxmFbBirXVaQ2VnN2s
所以稍后我可以在MyController 中解密我的id
有什么想法吗?

【问题讨论】:

  • 您需要什么级别的安全性?只是为了防止流氓读取数据(例如,混淆是可以的),还是您需要完全加密/解密?另外,如果您正在寻找完全加密,您对密钥有什么要求?解密的人总是加密的人,还是为了在两方之间安全地传输消息?
  • 我不明白你为什么需要加密。只需生成一个随机令牌并将其放入数据库中的附加列。
  • Artjom B.,也许你是对的,我会改为传递简单的数字

标签: java security encryption


【解决方案1】:

您可以在应用加密之前将会话 ID 附加到数字(即 sessionId_num)以将其转换为字符串。在解密过程中,如果会话 id 不匹配,则拒绝请求。这可以最大限度地减少重放攻击。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-27
    • 1970-01-01
    • 1970-01-01
    • 2012-10-03
    • 1970-01-01
    • 2011-07-02
    相关资源
    最近更新 更多