区块链基础知识(上):区块链基本原理、加密哈希、公钥加密

这篇具有很好参考价值的文章主要介绍了区块链基础知识(上):区块链基本原理、加密哈希、公钥加密。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

基本原理

加密哈希:

公钥加密:

希望有人向你发送只有你才能打开的加密文档/消息时使用 PKC

希望向其他人发送加密文档/消息并证明它确实由你发送时使用 PKC

使用 PKC 和加密哈希对文档/消息进行数字签名

交易哈希链使用数字签名转让数字资产所有权;每个交易记录都保留有对哈希链中上一个交易的加密反向链接

Merkle 树:


基本原理

区块链的基本原理理解起来并不复杂。首先来看三个基本概念:

  • 交易(Transaction):一次对账本的操作,导致账本状态的一次改变,如添加一条转账记录;

  • 区块(Block):记录一段时间内发生的所有交易和状态结果等,是对当前账本状态的一次共识;

  • 链(Chain):由区块按照发生顺序串联而成,是整个账本状态变化的日志记录。

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

想象一下你和一群爱借钱的朋友。每个人都有一本账本,上面记录着所有的交易和账户余额。这个账本是分布在每个人手里的副本,而不是交给某个人拿着账本。

每当有人想要进行一次交易,比如转账给其他人一定数量的金币,他们会把这个交易写在自己的账本上,并通知其他人。其他人会验证这个交易是否有效,比如检查发送人是否有足够的金币进行转账。如果交易被验证通过,它就会被添加到每个人的账本上,表示账本的状态发生了变化。

为了确保每个人的账本都保持一致,我们约定一些规则。首先,每个人在记录交易时必须按照相同的顺序进行,就像是按照时间顺序排队一样。其次,每个人会把自己已验证的交易打包成一个“区块”,并把这个区块连接到之前的区块上,形成一个链条。

现在,每个人都有了相同的账本副本,每个区块都记录了之前的区块的信息。这样,任何人都可以通过检查每个区块的信息来验证整个账本的有效性。如果有人试图篡改账本的某个区块,那么所有人都会注意到,因为区块的哈希值会发生变化,从而破坏了整个账本的连续性

这个共享账本游戏的关键在于共识。当有人想要添加一个新的区块时,其他人会一起参与确认这个区块的有效性,并达成共识。只有在达成共识后,新的区块才会被添加到每个人的账本上。

这就是区块链系统的运作原理。通过分布式的账本副本、按照特定的规则记录交易和形成区块链,区块链系统实现了一个安全、透明和去中心化的数据记录方式。

加密哈希:

加密哈希的作用是创建一个唯一的指纹或标识,用于表示输入数据。无论输入数据有多大或多小,哈希函数都会生成相同长度的哈希值。这意味着即使输入数据发生微小的改变,生成的哈希值也会完全不同。

加密哈希有几个重要的特性。首先,它是单向的,意味着无法从哈希值还原出原始数据。这使得哈希值成为一种安全的方式来存储密码或其他敏感信息,因为即使黑客获得了哈希值,他们也无法轻松地将其转换回原始数据。

其次,加密哈希是不可逆的。这意味着无法通过观察哈希值来推断出输入数据的内容。哈希函数的设计使得即使输入数据发生微小的变化,其生成的哈希值也会有很大的差异。

最后,加密哈希应该是唯一的。这意味着不同的输入数据应该生成不同的哈希值。即使两个输入数据只有一个字节的差异,它们生成的哈希值也应该完全不同。

以下是使用 SHA-256 算法对各种长度的字符串进行哈希处理

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

有时,哈希值会进行双重哈希处理。也就是说,通过应用第二轮 SHA-256 算法

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

公钥加密:

希望有人向你发送只有你才能打开的加密文档/消息时使用 PKC

首先,我们来看一下公钥和私钥。公钥是可以被分享给其他人的密钥,而私钥是保密的,只有密钥的所有者知道。这两个密钥是通过数学算法生成的,它们之间有一个特殊的关系。

假设Alice想要向你发送一个加密的消息。你首先生成一对公钥和私钥,并将公钥发送给Alice。Alice使用你的公钥来加密她想要发送的消息。

现在,即使消息被加密,只有你拥有与公钥配对的私钥,才能解密消息。这是因为私钥是唯一能够解密使用公钥加密的消息的密钥。

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

希望向其他人发送加密文档/消息并证明它确实由你发送时使用 PKC

当你希望向其他人发送加密文档或消息,并且希望能够证明这些文档或消息确实是由你发送的时候,你可以使用公钥加密和数字签名这两个方法。

使用公钥加密时,你会生成一对密钥:公钥和私钥。你将公钥分享给其他人,而私钥只有你自己能够访问。其他人可以使用你的公钥来加密他们想要发送给你的文档或消息。一旦文档或消息被加密,只有你拥有的私钥才能解密它们,这样确保了只有你能够读取原始内容。

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

使用 PKC 和加密哈希对文档/消息进行数字签名

  1. 生成密钥对:首先,你需要生成一对密钥:公钥和私钥。通常,你会使用一个密钥生成算法来生成这对密钥。公钥可以与其他人分享,而私钥必须保持机密,只有你自己能够访问。

  2. 哈希处理:对于要进行数字签名的文档或消息,你需要使用加密哈希算法对其进行哈希处理。加密哈希算法会将文档或消息转换为一个固定长度的哈希值。常用的加密哈希算法包括SHA-256和SHA-512等。

  3. 私钥加密:使用你的私钥对哈希值进行加密。这个加密操作会生成一个数字签名,这个签名是唯一与你的私钥相关联的加密值。

  4. 发送签名和文档/消息:将数字签名和原始文档或消息一起发送给接收方。确保这些信息在传输过程中是安全的,以防止篡改。

  5. 公钥解密:接收方使用你的公钥对数字签名进行解密。解密操作将得到解密后的哈希值。

  6. 哈希验证:接收方使用相同的加密哈希算法对接收到的文档或消息进行哈希处理,得到一个新的哈希值。

  7. 比较哈希值:接收方将解密后的哈希值与新生成的哈希值进行比较。如果两个哈希值匹配,那么说明文档或消息没有被篡改过,并且数字签名有效。
    区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

 使用 PKC 和加密哈希验证文档/消息

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

交易哈希链使用数字签名转让数字资产所有权;每个交易记录都保留有对哈希链中上一个交易的加密反向链接

交易哈希链是一种用于转让数字资产所有权的机制,它使用数字签名来验证交易的有效性,同时通过保留对上一个交易的加密反向链接来确保交易记录的完整性。

在交易哈希链中,每个交易都会被记录并与一个唯一的哈希值相关联。这个哈希值是通过对交易的内容进行加密哈希处理而生成的。这样做可以确保交易的完整性,因为即使交易的内容发生微小的更改,哈希值也会发生变化。

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链

Merkle 树

Merkle 树是一种生成 Merkle 根哈希的二叉哈希树;此数据结构可以有效添加叶节点,并计算新 Merkle 根,而无需完全重新计算

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密,区块链技术学习指南:从0入门到入魔,区块链文章来源地址https://www.toymoban.com/news/detail-838844.html

到了这里,关于区块链基础知识(上):区块链基本原理、加密哈希、公钥加密的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 区块链基础知识7-比特币挖矿原理/工作量证明

    在前面《区块链基础知识6-区块链记账原理》我们了解到记账是把交易记录、交易时间、账本序号、上一个Hash值等信息计算Hash打包的过程。 我们知道所有的计算和存贮是需要消耗计算机资源的,既然要付出成本,那节点为什么还要参与记账呢?在中本聪(比特币之父)的设

    2024年04月28日
    浏览(49)
  • 【明解STM32】中断系统理论基础知识篇之中断基本原理及NVIC

    目录 一、前言 二、基本原理概述 1、中断的作用 2、中断和异常 3、NVIC中断控制器 4、中断的分类 三、中断管理机制 1、中断向量 2、中断优先级 3、中断嵌套 四、中断处理流程 五、总结         中断是什么?举个例子来说,当我们正在工作时,突然电话响了,这时你会把

    2024年02月05日
    浏览(47)
  • 【基础知识】什么是哈希冲突?

    哈希表(Hash Table)是一种数据结构,它可以快速地在大量数据中查找、插入和删除时数据。哈希表通过使用哈希函数将键(Key)映射到一个位置,然后在该位置存储或查找数据。 哈希函数的作用是,将键转换为一个整数,这个整数通常称为哈希值(Hash Value)。哈希表的范围通

    2024年02月06日
    浏览(38)
  • Shiro-05-shiro 基础知识补充密码学+哈希散列

    密码术是隐藏或混淆数据的过程,因此窥探眼睛无法理解它。 Shiro的加密目标是简化JDK的加密支持并使之可用。 需要特别注意的是,密码通常不是特定于主题的,因此Shiro API的其中一个领域不是特定于主题的。 即使未使用“主题”,您也可以在任何地方使用Shiro的加密支持。

    2024年02月21日
    浏览(49)
  • 区块链基础知识01

    区块链:区块链技术是一种高级数据库机制,允许在企业网络中透明地共享信息。区块链数据库将数据存储在区块中,而数据库则一起链接到一个链条中。数据在时间上是一致的,在没有网络共识的情况下,不能删除或修改链条。 即:首尾相连的数据结构,区块头中存放着前

    2024年03月15日
    浏览(42)
  • 区块链基础知识

    中文书名:区块链基础知识25讲 英文书名:Blockchain Basics A Non-Technical Introduction in 25 Steps 作者: [英]丹尼尔·德雷舍(Daniel Drescher) 翻译: 马丹 王扶桑 张初阳 出版社: 人民邮电出版社 区块链在不同的语境下,可能会有不同的含义。“区块链”可能的四种含义如下: 一种数

    2024年02月03日
    浏览(49)
  • [区块链]——基础知识

    《区块链技术发展现状与展望》一文给出如下定义: 狭义来讲, 区块链是一种按照时间顺序将数据区块以链条的方式组合成特定数据结构, 并以密码学方式保证的不可篡改和不可伪造的去中心化共享总账(Decentralized shared ledger),能够安全存储简单的、有先后关系的、能在系

    2023年04月09日
    浏览(34)
  • 区块链入门--1.基础知识

    目录 区块链基本概念 1、什么是区块 2、什么是区块链 3、什么是公链、联盟链和私链 4、什么是交易 5、什么是智能合约 Hyperledger Fabric 基础知识 1、什么是 Hyperledger Fabric 2、什么是联盟 3、什么是组织 4、什么是节点 5、什么是通道 6、什么是链码 Block  ,每个区块记录着上一

    2024年04月24日
    浏览(47)
  • 番外篇-区块链基础知识入门

    今天聊聊番外篇之Web3、区块链的基础知识~ Hash算法 将输入的数据映射为一个固定长度的字符串 字符串是64长度,16进制(2^4),4 * 64 = 256 【SHA256】hash演示:https://andersbrownworth.com/blockchain/hash 区块 记录数据的一个section 问题:“挖矿”是在做什么(计算随机数是多少) 演示:

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

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

    2024年02月05日
    浏览(46)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包