比较字符串加密与否?

时间:2014-02-06 14:24:42

标签: php string oracle encryption

我需要检查我的数据库(oracle)是否有一些修改,

为防止检查column by columnchar by char我认为最好加密连接的所有列并比较加密字符串而不是所有字符。

实现这一目标的最佳方法是什么?

这种方法比普通字符串好吗?

1 个答案:

答案 0 :(得分:1)

加密密集。你对哈希(MD5,SHA等)更感兴趣,因为你想要的是一个统计上非常微小的机会,在改变之后使用与之前相同的功能。

但是,有一个缺陷就是连接所有列。

假设我有一个带有'bob'的列和带有'tom'的B列,我将它们连接起来并将其哈希。 如果该行稍后在A中变为'bo'而在B中变为'btom',则尽管不同,但concat和hash将给出相同的答案。

说实话,逐列比较是简单表格的最佳选择。但是如果你想减少要比较的数据量并且你有很长的行(例如LOB),这个过程可能会有所帮助:

  1. 哈希每列。康卡特的结果。每个哈希的结果将是一个特定的长度,你将避免上述问题。
  2. 哈希结合的结果。这将为您提供一个字符串,您可以在下次需要检查行时进行比较。