Oracle的ORA_HASH是“随机"的吗? [英] Is Oracle's ORA_HASH "random"?

查看:422
本文介绍了Oracle的ORA_HASH是“随机"的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Ora_hash具有确定性,因为保持输入和种子恒定将产生确定的输出.

Ora_hash is deterministic in that the keeping the input and seed constant will produce a definite output.

但是,对于任何种子(包括默认值),ora_hash的输出必然具有以下属性:

But, for any seed (including the default), will the output of an ora_hash necessarily have the property that:

没有一种方法可以用来预测ORA_HASH的成功率要高于纯随机猜测结果的水平吗?"

"No method exists that can be used to predict what the result of an ORA_HASH will be with any level of success higher than purely random guessing?"

推荐答案

可能不是,不是. ORA_HASH并非设计为特别健壮的哈希算法-当然,您不会将其用作加密库的一部分,例如,您将使用DBMS_CRYPTO.HASH选择适当的算法和选项. ORA_HASH旨在有效地将项目分发到存储桶中(即对表进行哈希分区时会发生的情况),并且是一种相对轻量级的哈希算法.它并非旨在免受攻击.

Probably not, no. ORA_HASH is not designed as a particularly robust hashing algorithm-- it's certainly not something you would use as part of a cryptography library, for example, you'd use the DBMS_CRYPTO.HASH choosing an appropriate algorithm and options. ORA_HASH is designed to distribute items into buckets effectively (i.e. what happens when you hash partition a table) and to be a relatively lightweight hashing algorithm. It is not designed to be secure from attack.

这篇关于Oracle的ORA_HASH是“随机"的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆