加入收藏 | 设为首页 | 会员中心 | 我要投稿 阜阳站长网 (https://www.0558zz.cn/)- AI行业应用、低代码、混合云存储、数据仓库、物联网!
当前位置: 首页 > 站长资讯 > 动态 > 正文

框架帮我们做了什么?

发布时间:2021-02-16 16:02:17 所属栏目:动态 来源:互联网
导读:通过 OpenSSL 深入了解密码学的细节:哈希值、数字签名、数字证书等。 本系列的第一篇文章 通过 OpenSSL 库和命令行实用程序介绍了哈希、加密/解密、数字签名和数字证书。这第二篇文章将对细节进行深入探讨。让我们从计算中无处不在的哈希开始,并考虑是什么

通过 OpenSSL 深入了解密码学的细节:哈希值、数字签名、数字证书等。

本系列的第一篇文章通过 OpenSSL 库和命令行实用程序介绍了哈希、加密/解密、数字签名和数字证书。这第二篇文章将对细节进行深入探讨。让我们从计算中无处不在的哈希开始,并考虑是什么使哈希函数具备密码学意义。

密码学哈希

OpenSSL 源代码的下载页面包含了一个带有最新版本的表格。每个版本都有两个哈希值hash:160 位 SHA1 和 256 位 SHA256。这些值可以用来验证下载的文件是否与存储库中的原始文件相匹配:下载者在本地重新计算下载文件的哈希值,然后将结果与原始文件进行比较。现代系统有计算这种哈希值的实用程序。例如,Linux 有 md5sum 和 sha256sum。OpenSSL 本身也提供了类似的命令行实用程序。

哈希值被用于计算的许多领域。例如,比特币区块链使用 SHA256 哈希值作为区块标识符。挖比特币就是生成一个低于指定阈值的 SHA256 哈希值,也就是至少有 N 个前导零的哈希值。(N 的值可以上升或下降,这取决于特定时间的挖矿生产力)。作为一个兴趣点,如今的矿机是为并行生成 SHA256 哈希值而设计的硬件集群。在 2018 年的一个高峰期,全球的比特币矿工每秒产生约 7500 万个太哈希值terahash —— 这真是一个不可思议的数字。

网络协议也使用哈希值(在这里通常叫做“校验和checksum”)来支持消息的完整性;也就是说,保证收到的消息与发送的消息是一样的。消息发送者计算消息的校验和,并将结果与消息一起发送。当消息到达时,接收方重新计算校验和。如果发送的校验和与重新计算的校验和不一致,那么消息在传输过程中可能出现了一些问题,或者发送的校验和出现了问题,或者两者都出现了问题。在这种情况下,应该重新发送消息和它的校验和,或者至少应该触发一个错误情况。(如 UDP 这样的低级网络协议不会理会校验和。)

哈希的其他例子大家都很熟悉。比如一个网站,要求用户用密码进行验证,用户在浏览器中输入密码,然后,他们通过 HTTPS 连接到服务器,密码从浏览器加密发送到服务器。一旦密码到达服务器,就会被解密,然后进行数据库表的查询。

在这个查询表中应该存储什么?存储密码本身是有风险的。风险要小得多的方式是存储一个由密码生成的哈希值,也许在计算哈希值之前“加一些salt(额外的位)改善口味”。你的密码可能会被发送到 Web 服务器上,但网站可以向你保证,密码不会存储在那里。

哈希值还出现在安全的各个领域。例如,基于哈希值的消息认证码hash-based message authentication codeHMAC)使用一个哈希值和一个秘密的加密密钥cryptographic key来认证通过网络发送的消息。HMAC 码轻量级且易于在程序中使用,在 Web 服务中很受欢迎。一个 X509 数字证书包括一个称为指纹fingerprint的哈希值,它可以方便证书验证。一个存放于内存中的可信存储truststore可以实现为一个以这种指纹为键的查找表 —— 作为一个支持恒定查找时间的哈希映射hash map。来自传入的证书的指纹可以与可信存储中的密钥进行比较,以确定是否匹配。

密码学哈希函数cryptographic hash function应该具有什么特殊属性?它应该是单向one-way的,这意味着很难被逆转。一个加密哈希函数应该是比较容易计算的,但是计算它的反函数(将哈希值映射回输入位串的函数)在计算上应该是困难的。下面是一个描述,用 chf 作为加密哈希函数,我的密码 foobar 作为样本输入。

 

在区块链项目的投资人名单中,有一个特别明显的特点叫做:背书效应,有些项目依靠着一个知名机构的背书就能一路通关,其实大家应该理性正确的看待知名机构背书这件事。一个项目获得知名机构背书固然说明了项目实力,但是也不要排除另外一个可能性,行业早期各大投资机构也是要去占据赛道,要去卡位,普通人其实很难判断这是投资机构重点培育的明星项目,还是只是为了广泛撒网来陪跑的项目。所以,明星投资机构可以作为参考标准之一,而不能只是唯一。回到项目本身的价值和服务,项目本身的实力,才是最关键的。

最后一个维度,是入场时机。这个维度看起来没关系,其实很重要。因为我们都生活在周期里。如何理解入场时机这个维度呢?我给大家举个例子。区块链的发展历程中也跟其他行业一样,甚至更明显地会出现周期性变化。比如2017年底到2018年初是最近一个牛市的顶部,那个时间段市面上的区块链项目如雨后春笋一样冒出来,市场上的钱也非常多,大多获得了不错的收益。随着牛熊转换,2018年下半年开始到2019年,纵使是一流团队的创业项目,也难逃过市场下行的趋势,业绩惨淡。

因此,创业团队对于入场时机的选择,其实也隐含着不同的成功几率。换句话说,入场时机好的时候,其他维度标准可以适当降低,因为风口有风能送上去;而入场时机差的时候,其他维度标准需要提高,逆势而行非死即伤。这就是周期的力量,是大势能的力量,这就是看为什么要重点看入场时机的原因。

以上就是可以用来判断一个区块链项目情况的五维法则:创始团队、技术特点、盈利模式、投资人背景和入场时机。

这5个维度都偏技术层面,其实他背后,回到最本质的是一个道,也就是项目价值。抛开所有的外部因素,回到项目本身,认真的去看:他到底提供了什么不可稀缺的价值或者服务?他的稀缺性、独特性和可持续性在哪里,最终,回到项目本身,才是投资成败的最关键。

基于以上几点,或者运用任何方法之前,投入时间提升自己的专业知识,投资于自己的认知也是无比重要的。因为投资是一件非常专业的事情。看待投资,我会谨记一句话:“所有收益均是风险和流动性的对价。”讲的就是要敬畏市场,遵守商业规则,冷静看待收益和风险的关系。祝福大家,遇到好项目,遇到好团队,投出一个有价值、可持续的未来。


(编辑:阜阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读