区块链学习二———密码学原理

这篇具有很好参考价值的文章主要介绍了区块链学习二———密码学原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

区块链学习二–密码学原理

比特币中使用到了密码学的知识,主要是哈希函数与数字签名



一、哈希函数的工作原理

1.哈希碰撞(collision resistance)

哈希碰撞的含义:不同的输入,哈希值是相同的

x≠y,H(x) = H(y)

输入空间较大 输出空间较小,出现哈希碰撞的情况很常见。碰撞是客观存在的。 实际中,靠一个个数试,去找到两个不同的数的哈希值是相同的,几乎是不可能的

MD5算法已经可以人为的制造哈希碰撞。因此该算法已不安全。

2.单向性(hiding)

x→H(x)

上面公式只能正推 不能反推。
只能通过暴力破解求解哈希值。取遍x所有的可能值即可推出哈希值。
单向性成立的条件是:输入的取值空间要足够大,且输入的值较均匀
H(x||nonce):输入值加上一个随机数再进行哈希可以保证输入值随机且较均匀。

3.两个性质结合(digital commitment)

这个地方老师讲解的特别好
假设一个股神预测明天的股市,股神将预测的结果说出来了,大家也都知道股神预测的结构,其实这种预测并不能够判断股神预测的是否是对的。假设大家都根据股神的预测与买卖股票的话,那么股神的预测是正确的;反之,则是错误的。
这个时候就出现了一种解决方法,股神把预测的结果计算一个哈希值,并将该哈希值交由可靠的第三方机构保管,等收盘后,再进行验证股神是否预言正确。

4.puzzle friendly

无法确定输出的内容(哈希值),也无法预测输出的内容。假设要计算一个数的哈希值,使这个数的哈希值小于一个固定的阈值,其实是很难的,这也设计到了比特币中挖矿的概念。

挖矿原理

nonce与区块的块头其他信息结合在一起作为输入得到的哈希值小于一个目标阈值

H(block header nonce)≤ target

工作量证明:挖矿需要大量的工作寻找nonce,而寻找nonce值没有捷径,只能靠试。挖矿较难,而验证nonce的值比较简单。

比特币中的哈希函数是SHA-256


二、公钥密码算法

1.引入

开户:创建一个公私钥对。该公私钥对即为账户(公钥相当于银行账户,交易只需知道对方的公钥即可。私钥个人保存,知道对方的公钥可对对方进行转账)

对称密码算法:由于密钥分发不方便。因此出现了公钥密码算法。
加密使用公钥,解密使用私钥(私钥保存在本地)
生成公私钥的过程是需要一个较好的随机源。随机源不好有可能泄露私钥。

2.签名

签名使用私钥,验证使用公钥(注:该公私钥是私钥者)。
Q:如何确定交易确确实实是交易的人发起的。
A:对该笔交易进行签名,使用私钥进行加密,验证方使用公钥进行验证。
出现公私钥对相同的概率是几乎不可能的(随机源需好)

三、总结

比特币系统中先对message计算哈希,再对哈希进行签名。

大家可以参考这篇博客 这位博主写的非常的详细 区块链技术与应用-密码学原理文章来源地址https://www.toymoban.com/news/detail-473226.html

到了这里,关于区块链学习二———密码学原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 区块链--密码学复习概括

    目录 一、密码学需要实现的功能与目标 二、从发展历史角度 三、古典密码学 四、现代密码学 五、密码体制分类 六、密码技术基础 七、非对称密码体制 八、基于证书的公钥分发机制 九、对称与非对称加密体制特性对比 十、RSA算法 十一、数字签名 十二、ECDSA签名算法 十三

    2024年02月03日
    浏览(47)
  • 密码学基本原理和发展——古典密码学

      目录 1 滚筒密码 2 棋盘密码 3 凯撒密码 4 单表代换与多表代换 4.1 单表代换 4.2 多表代换         密码技术最早起源于公元前404年的希腊,此后密码大致经历了 古典密码、近代密码和现代密码三个阶段。         古典密码(公元前五世纪~19世纪末)代表性的是 滚桶密

    2024年02月05日
    浏览(59)
  • 密码学基本原理和发展——近代密码学

    目录 1 密码机通信模型 2 Enigma密码机构造 3 Enigma密码机加解密过程 3.1 加密过程 3.2 解密过程 4 Enigma密码机的安全性 5 Enigma密码机破解 5.1 波兰雷耶夫斯基破解 5.2 图灵破解        近代密码一般指20世纪初~20世纪70年代期间的密码技术。20 世纪初电报的出现第一次使远距离

    2024年02月06日
    浏览(54)
  • java 实现区块链的密码学

    java 实现区块链的密码学今天分享,首先区块链行业相关的密码学有几个思路,比如对称加解密、非对称加解密、数字签名算法、散列hash相关的SHA-256加解密、Merkle树相关算法等等。今天我们主要采用java语言分享非对称加密和数字签名。 1、相关jar等配置,配置JDK1.8版本加上下

    2024年02月11日
    浏览(58)
  • 区块链基础之密码学及安全技术

    1.2 密码学及安全技术 1.2.1 密码学知识 1.2.1.1 Hash函数 Hash(哈希) 哈希函数是一类数学函数,可以在有限合理的时间内,将任意长度的消息压缩为 固定长度的输出值,并且是不可逆的。其输出值称为哈希值,也称为散列值。 哈希算法的应用: 消息认证:确保收到的消息和发送

    2024年02月11日
    浏览(44)
  • 【密码学】量子安全的密码学算法以及原理介绍

    (1)“代数格密码套件”(CRYSTALS)包含两个密码原语Kyber和Dilithium。Kyber是一种抗适应性选择密文攻击(IND-CCA2)安全密钥封装机制,Dilithium是一种高度不可伪造性(EUF-CMA)安全数字签名算法。两种密码都是为了应对量子计算机的攻击,并且在操作过程中只需更改几个参数即

    2024年02月11日
    浏览(64)
  • 区块链密码学:基础知识、应用与未来发展

    区块链技术,作为一种分布式、去中心化的数据管理方式,密码学在其安全性和可靠性方面发挥着至关重要的作用。本文将详细介绍区块链密码学的基础知识、应用以及未来发展趋势。 区块链密码学是区块链技术的核心组成部分,用于确保交易的安全性、隐私性和可验证性。

    2024年02月05日
    浏览(46)
  • 【网络与信息安全学报】区块链密码学隐私保护技术综述——CCF T2

    区块链密码学隐私保护技术综述 Survey on blockchain privacy protection techniques in cryptography Abstract 近年来,数据隐私问题日益明显,如何在区块链中实现有效的隐私保护是研究热点。针对区块链在隐私保护上的研究现状与发展态势,阐述了区块链在交易地址、预言机以及智能合约上

    2024年02月03日
    浏览(66)
  • RACE IPEMD:构建安全基石的密码学原理与实践

    title: RACE IPEMD:构建安全基石的密码学原理与实践 date: 2024/4/16 16:53:56 updated: 2024/4/16 16:53:56 tags: IPEMD 哈希算法 SHA-1 SHA-2/3 消息摘要 数字签名 安全分析 在当今信息爆炸的时代,数据安全和隐私保护变得尤为重要。密码学作为信息安全领域的重要支柱,扮演着保护数据、通信和

    2024年04月16日
    浏览(34)
  • 《现代密码学》学习笔记——第三章 分组密码 [二] AES

    版本 密钥长度 分组长度 迭代轮数 AES-128 4 4 10 AES-192 6 4 12 AES-256 8 4 14 (1)字节代换(SubByte) (2)行移位(ShiftRow) (3)列混合(MixColumn) (4)密钥加(AddRoundKey) 1.字节代换   字节代换是非线性变换,独立地对状态的每个字节进行。代换表(S-Box)是可逆的。   将

    2024年02月05日
    浏览(97)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包