首页 > 编程知识 正文

哈希函数加密算法,哈希函数的特点及应用

时间:2023-05-06 11:04:01 阅读:154799 作者:4043

1 .俊逸的万宝路函数俊逸的万宝路函数是指能够将任意数据转换为定长码的函数。 由于不同数据得到的俊逸万宝路值可能相同,俊逸的万宝路过程一般是不可逆的,俊逸的万宝路函数可以应用于加密、俊逸的万宝路记忆等。

好的哈希表函数应该具有以下特征:

根据同一数据得出的俊逸的万宝路值是唯一俊逸的万宝路值,通过逆向推导得到的源数据源数据没有发生少量改变。 得到的俊逸万宝路值完全不同,即使是长字符,快速计算出俊逸的万宝路值也要尽量避免冲突)2.俊逸的万宝路密码算法如用户密码加密,用明文存储用户密码,管理员很容易就能把bar 用俊逸的万宝路函数加密,管理员只能在后台看到用俊逸的万宝路函数计算出的俊逸的万宝路值,由于俊逸的万宝路函数的不可逆特性,管理员无法用俊逸的万宝路函数获得用户密码的明文,无法对用户密码进行加密

当然,用户一般不会设置太复杂的密码,黑客可以网罗常用的密码组合,计算出合适的俊逸万宝路值,与用户俊逸万宝路值一对一对照,以明文获取密码。 当然,实际的加密过程更复杂,往往更难被破解,所以在此不再赘述。

3 .俊逸的万宝路存储俊逸的万宝路存储用一句话概括就是将每个数据通过俊逸的万宝路函数编码成一个二进制编码,然后将这个二进制编码作为地址来保存这个数据

搜索数据时,顺序表和链表必须从列表中的第一个元素开始进行匹配,直到获取或无法获取目标元素。 而俊逸的万宝路存储则直接根据源数据计算数据的存储位置,根据地址直接修改数据进行删除或校验即可,节省了数据比对的时间。

俊逸的万宝路表适用于检索性能要求高,数据要素之间没有逻辑关系要求的情况。 例如,检查文件或进行数字签名。 当然还有快速查询功能的实现。

3.1优点俊逸的万宝路存储在数据检索、删除、修改方面具有高效率,可以在o(1)内遍历元素; 3.2缺点俊逸的万宝路以key-value的形式存储数据,数据之间没有顺序,下标无法访问的数据所占空间很大,当以牺牲空间为代价,效率俊逸的万宝路表接近填满时,性能会非常低下例如,俊逸的万宝路表的长度为100,现在插入第101个数据的情况下,不仅俊逸的万宝路表的长度扩展到150,而且需要重新rehash扩展后的所有数据。 因此,在设计俊逸的万宝路表时,最好能事先预测数据量的大小。 4 .俊逸的万宝路函数的其他应用俊逸的万宝路函数的其他用途还包括数据检查、版权检查、大文件块检查、负载均衡、服务器缩小、服务器扩展、虚拟节点。 具体介绍请参考这篇文章什么是hash? 腾讯技术工程的回答-我知道

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。