身为一名程序员,是时候展示一波技术了。接下来的一段时间,我会用通熟易懂的方式讲解比特币的底层技术,让技术小白也可以看懂各种白皮书。
谈到虚拟数字货币就一定绕不开密码学,所以今天就给大家先讲解一下比特币相关的密码学。
在比特币白皮书里,两个最常用的密码学概念是哈希函数和公钥私钥。
哈希函数
传统的哈希函数就是将任意长度的数据映射到有限长度的域上,通俗的解释就是对一串数据M进行变换,输出成另一串固定长度的数据h,即h=H(M)。
除了数据h可以作为数据M的指纹外,在密码学中,哈希函数还有别的性质:
给定数据M很容易计算出数据h,但是给定数据h不能很方便的得到数据M,唯一的方法就是遍历数据M所有的可能。
Binance International最大质押地址将6940万美元ETH转入信标链:5月26日消息,据Arkham监测,2小时前,Binance International最大质押地址再次收到价值6940万美元ETH,并全部转入信标链上。该地址自开始使用以来,总共质押价值12.9亿美元ETH,是过去一个月的第三大质押者。[2023/5/26 9:44:11]
很难找到两个数据,它们的哈希值是一样的。尽管很难,这样的两个数据还是存在的,因为哈希算法的本质是对数据的有损压缩。
从数学上讲,大家可以认为哈希函数是一个复杂的函数。
举个例子
h=2M是一个函数,但是不是一个好的哈希函数呢?
加密借贷平台Celsius资产拍卖日期已确定,投标截止日期为10月18日:10月4日消息,根据周一提交给纽约南区美国破产法院的文件,加密借贷平台Celsius已确定其资产拍卖日期,投标截止日期为北京时间10月18日4:00,如有必要,拍卖会在北京时间10月20日22:00进行,销售截止日期为北京时间10月26日4:00。文件称,将于北京时间11月1日23:00在美国首席破产法官Martin Glenn面前通过Zoom举行出售听证会,并补充说预计会有大量参与者。[2022/10/4 18:39:01]
因为给定一个h,我们可以非常容易地反向猜到M,那就不是一个好的哈希函数。
哈希函数的目的是,给定一个h,我没法容易地找到H的逆函数,进而通过这个逆函数找到M。
Solana漏洞事件受影响独立钱包数量已超9000个:金色财经报道,据Dune Analytics数据显示, Solana漏洞事件受影响的独立钱包数量已超9000个,截至本文撰写达到9214个,包含SOL、USD、BTC、ETH和mSOL在内的受影响资产总规模达到4,088,068美元。据此前消息,Solana因漏洞导致恶意行为者从 Solana 的多个钱包中盗取资金。[2022/8/3 2:57:00]
我只能通过暴力穷举所有的M,然后看H(M)是不是等于h,从而找到答案,这样才是一个好的哈希函数。
比特币使用的哈希算法采用双重SHA256算法,这是因为SHA1在2017年被birthdaycollisionattack攻破,而SHA2被攻破也只是时间问题,而采取双重哈希算法可以有效抵御birthdaycollisionattack。
俄罗斯与加密货币相关的刑事案件增加 40%:金色财经报道,一项新的研究表明,俄罗斯的法院正在审理越来越多的有关加密资产的案件。其中大约三分之二是根据该国刑法的规定启动的,但民事案件也占很大比例。2021 年俄罗斯涉及加密货币的刑事案件接近 1,000 起去年,与加密货币、数字资产交换和铸币相关的诉讼在俄罗斯大幅增加,总数达到 1,531 起。与此同时,研究人员透露,与加密货币所有权相关的破产案件数量在 2021 年翻了一番。在这些诉讼中,俄罗斯司法机构将加密资产视为财产,双方必须提供证明他们拥有加密货币的文件。(news.bitcoin)[2022/6/13 4:21:20]
SHA256(SHA256(BlockHeader))
公私钥机制
给定一个加密算法,每个个体都可以任意的产生一组公钥和私钥,通常是256bit或者512bit的字符串。
大概长成下面这个样子:
0010110100010010010110110100010010010110110100010010010110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110110100010010011110
大家可以认为公钥和私钥,一个是锁,一个是钥匙,两者一一对应。
非对称加密算法:
乙方生成两把密钥,公钥,私钥。公钥是公开的,任何人都可以获得,私钥则是保密的甲方获取乙方的公钥,然后用它对信息加密乙方得到加密后的信息,用私钥解密
举个例子
小明和小红,小明想给小红写封情书,但是他不想让外人知道情书的内容。
我们假设小明情书的内容是“我爱你”,小明第一步用小红的公钥对其进行加密。
公钥是所有人都知道的,所以小明也同样知道小红的公钥。
我们假设小红的公钥就是她的手机号:“138xxxxxxxx”。
加密过程涉及到加密函数Enc。这个函数用实际情书内容"我爱你"和小红的公钥"138xxxxxxxx"作为输入,得到一个输出,叫做data_enc。
data_enc=Enc(“我爱你",小红的公钥)
我们假设Enc函数是将两个字符串合并后,将奇数字和偶数字对调,我们得到如下:
合并:“我爱你138xxxxxxxx”奇偶对调:"爱我1你83xxxxxxxx"
小明将加密后的字符串,也就是”爱我1你83xxxxxxxx"发给小红。小红收到信息后,她需要用自己的私钥以及解密函数Dec,对这条信息进行解密。
data=Dec(“爱我1你83xxxxxxxx'',小红的私钥)
为了方便,我们假设小红的私钥也是”138xxxxxxxx“,解密函数的功能是,将输入的字符串的奇偶数对调,然后从字符串后面删除小红的私钥。
奇偶对调:”我爱你138xxxxxxxx“字符串删除(”138xxxxxxxx“):"我爱你"
这样一来,小红就知道,小明发过来的原字符串是"我爱你"。
当然实际工程中,加密和解密函数都是非常的复杂函数,但基本原理是一模一样的,对于理解完全没有问题。
预告:后面会介绍数字货币是如何产生的?
我会持续分享和区块链相关的干货,还会有一些投资建议和挖矿技巧,让小白也能看得懂。想上车的小伙伴们请多多关注、评论、点赞、转发,非常非常感谢!
标签:SHA比特币数字货币SHA价格SHA币比特币中国官网联系方式40亿比特币能提现吗比特币最新价格行情走势十大数字货币交易所排名数字货币交易所官方网址数字货币案例视频
以比特币和以太坊为首的主流虚拟货币,再次疲软。直去年12月达到价格高峰以来,如今这两个币种的价格几乎被腰斩.
1900/1/1 0:00:00一、Cryptography密码学 *Hash哈希 是一种函数,它把任何数字或者字符串输入转化成一个固定长度的输出。通过输出我们不可能反向推得输入,除非尝试了所有的可能的输入值.
1900/1/1 0:00:00以太坊ERC20Token标准自2015年11月19日诞生以来,为智能合约、以太坊生态以及区块链应用的发展做出了巨大的贡献.
1900/1/1 0:00:00作者JACE 制作:李莹、南楠 微信公众号:链塔智库 前言 北京时间2018年5月8日,链塔智库发布比原链BTM项目评级报告,链塔智库区块链项目评级分析师团队将比原链BTM项目等级定义为「A」.
1900/1/1 0:00:00英国经济历史学家——比特币是未来的金融体系NiallFerguson是一位著名的历史学家,评论员,也是包括《金钱崛起》和《罗斯柴尔德之家》在内的15本书的作者.
1900/1/1 0:00:00我们此前提及,目前,这些虚拟货币并未像股票市场那样被纳入监管视野,因为,美国商品期货交易委员会认为类似比特币这种虚拟货币是一种大宗商品.
1900/1/1 0:00:00