在Snowflake-db中使用Sha vs md5或Hash

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Snowflake-db中使用Sha vs md5或Hash相关的知识,希望对你有一定的参考价值。

让我先说一下我没有使用它来存储密码或任何其他敏感信息 - 我只是想要一个我可以在以后使用的行级sha / hash或快速检查唯一记录。我的桌子将在长边上,在0.1到10万亿行的范围内。

我使用的是Snowflake datawarehouse,因此我的选项是SHA1,SHA2,MD5(每个都带有二元选项)和HASH

我想我想尽量减少碰撞的机会(考虑到长桌),而不是不必要地烧掉我的计算信用。

根据我的用例,哪一个是最好的选择?

答案

如果您可以接受一些冲突,内置的hash功能应该足够好。它可以比MD5 / SHA函数快得多,并且考虑到输出它会产生良好的散列,但它会产生较小范围的散列(64位输出),因此更容易引起更多冲突。

如果你不需要冲突,显然没有散列函数可以保证。

MD5 / SHA函数在您想要以与使用这些算法之一计算哈希的其他系统兼容的形式计算字符串的哈希时非常有用。

以上是关于在Snowflake-db中使用Sha vs md5或Hash的主要内容,如果未能解决你的问题,请参考以下文章

什么是更好的? Password_hash vs. SHA256 vs. SHA1 vs. md5

OpenSSL 3.0 版本已经发布VS2019编译源码教程

字符串的加密与解密(3DES、sha1、MD5) - swift3.1

C#代码加密字符串,与SQL加密结果不一致

SHA-256 或 MD5 用于文件完整性

MD5 与 SHA 在 Delphi 中函数实现,加密密码