Java 密码保持相同的大小,并将其插入DB中的VARCHAR列

Java 密码保持相同的大小,并将其插入DB中的VARCHAR列,java,encryption,Java,Encryption,我有一个像这样的数字“3344550043374314”,我需要一个算法,可以加密这个 编号,然后将其添加到数据库中的VARCHAR列中 加密的数字不得超过DB列大小(19) 无法更改数据库列类型 我已经用“一次性pad”、“CaesarCipher”、“DES”、“securehash”进行了测试。他们都不工作 作为解决办法 我需要接收密钥和字符串的加密/解密函数。因为您存储的列值只包含数值,所以我认为您不应该加密数值。但是,如果您担心安全性,您可以设计自己的机制,从值中减去一个特定数字并存储

我有一个像这样的数字“3344550043374314”,我需要一个算法,可以加密这个 编号,然后将其添加到数据库中的VARCHAR列中

  • 加密的数字不得超过DB列大小(19)
  • 无法更改数据库列类型
  • 我已经用“一次性pad”、“CaesarCipher”、“DES”、“securehash”进行了测试。他们都不工作 作为解决办法


    我需要接收密钥和字符串的加密/解密函数。

    因为您存储的列值只包含数值,所以我认为您不应该
    加密数值。但是,如果您担心安全性,您可以设计自己的机制,从值中减去一个特定数字并存储它们,在检索时,您可以将该特定数字加回去以获得所需的结果。
    如果你想获得更高的安全性,请阅读这篇文章,它将允许你
    压缩解压缩
    ,是的,你可以玩一个小把戏,先进行减法,然后
    压缩解压缩
    ,以增强安全性

    这也满足了你的条件

  • 加密的数字不得超过DB列大小(19)
  • 无法更改数据库列类型

  • 添加了一些安全性,以防止其容易破裂。

    您必须更改数据库大小,否则必须创建自己的密码。此数字随时都会为负数,并且您希望存储的数值的最大位数是多少?为了帮助您的研究,这通常称为。数字永远不会为负数,最大长度为19