首页 > 其他分享 >比特币详解

比特币详解

时间:2024-09-03 19:55:22浏览次数:12  
标签:方案 比特 PoW 代币 证明 详解 使用

1. 比特币的由来

        自 2008 年中本聪引入比特币以来,比特币已经在全球范围内掀起了广泛讨论。无论褒贬如保,它是目前世界上最成功的数字货币,针对它的投资已有数十亿美元。截至 2020 年 10 月,比特币的市值约为 2121 亿美元。

注意:

        2013 年 12 月 5 日,中国人民银行等五部委发布《关于防范比特币风险的通知》(以下简称《通知》),明确了比特币的性质,认为比特币不是由货币当局发行,不具有法偿性与强制性等货币属性,并不是真正意义的货币。从性质上看,比特币是一种特定的虚拟商品,不具有与货币等同的法律地位,不能且不应作为货币在市场上流通使用。《通知》明确禁止金融机构提出比特币交易服务。

        2017 年 9 月 4日,中国人民银行等七部门发布《关于防范代币发行融资风险的公告》(以下简称《公告》)。《公告》指出,近期,国内通过发行代币的形式包括首次代币发行(Initial Coin Offering,ICO) 进行融资的活动大量涌现,投机炒作盛行,涉嫌从事非法金融活动,严重扰乱了经济金融秩序。《公告》紧急叫停了 ICO 活动。

        2018 年 4 月 23 日,所有 ICO 和比特币交易平台退出中国市场。

        综上所述,中国政府虽然没有明确禁止比特币以虚拟商品的身份从事的活动,但是法律也没有明确保护比特币交易的相应条款。比特币就好像网络游戏中的装备一样,官方并不限制玩家之间的装备交易。如果玩家众多,那么装备就容易被炒作卖出高价;如果游戏关服,那么装备将一文不值。目前,“比特币” 这款游戏的中国区就形同关服状态。在这种状态下,中国公民交易比特币,就好像是在私服买卖网络游戏装备,如果发生欺炸交易或其他重大利益受损事件,是无法维权的,因此在中国交易比特币存在较大风险。

         比特币的用户和投资者数量众多,比特币交易活跃(中国等部分国家除外),与比特币相关的每日新闻增多,这些都证明了其流行程度。有很多初创公司都提供比特币的在线交易,现在它已在芝加哥商业交易秘(Chicage Mercantile Exchange,CME) 以比特币期货的形式交易。

 1.1 比特币背后的理论基础

        比特币的发明者中本聪的名字被认为是化名,因为他的真实身份尚不清楚。比特币建立在密码学、数字现金和分布式计算领域数十年研究的基础之上。

        数十年来,数字货币一直属于活跃的研究领域。创建数字现金的早期建议可以追溯到 20 世纪 80 年代初。 1982 年,计算机科学家兼密码学家 David Chaum 提出了一种使用盲签名构建无法追踪的数字货币的方案。这项研究发表在研究论文 Blind Signatures for Untraceable Payments(<<不可追溯的支付的盲签名>>) 上。

        在这种方案中,银行将通过签署由用户提供给它的盲目和随机序列号来发行数字货币,用户可以使用由银行签名的数字代币作为货币。该方案的局恨性在于银行必须跟踪所有使用过的序列号。根据设计,这是一个中央系统,需要用户的信任。

        1988 年,David Chaum 和其他人提出了一种改进的版本,名为 E-cash,它不仅使用盲签名,而且还使用一些私人标识数据来制作消息,然后将其发送到银行。

        该方案可以检测到双重支付,但是不能阻止双重支付。如果在两个不同的位置使用了相同的代币,则将显示双重支付者的身份。电子现金只能表示固定金额。

        密码学家 Adam Back 现在是 Blockstream 的首席执行官,从事区块链开发,并于 1997 年推出了 HashCash。HashCash 算法最初是为了阻止垃圾邮件而提出的。HashCash 背后的思想是解决一个易于验证但相对难以计算的难题。即,对于单个用户和一封电子邮件而言,额外的计算工作可以忽略不计;但是对于发送大量垃圾邮件的人来说,这算是一种 “刁难”,因为运行垃圾邮件所需要的时间和资源将大增加。

        1988 年,曾为 Microsoft 工作的计算机工程师 Wei Dai 提出了 B-money 的概念,并提出了使用工作量证明创造金钱的想法。“工作量证明(Proof of Work,PoW)”  一词是在后搂的比特币中流行开来的,而在 Wei Dai 的 B-money 相关论文中,准确的说法是通过为先前未解决的计算问题求解,引入创造金钱的方案。在该论文中,将工作量证明称为先前未解决的计算问题的解(Solution To A Previously Unsolved Computational Problem)。这个概念非常类似于 PoW,在 PoW 中,创造金钱的方式就是广播先前未解决的计算问题的解。

        该系统的主要弱点是,具有较高计算能力的对手可能会在不使网络调整到适当难度级别的情况下产生未经请求的金钱。该系统缺少有关节点之间的共识机制的详细信息,也未解决一些安全问题,如 Sybil 攻击。

        在同一时期,计算机科学家 Nick Szabo 引入了 BitGold 的概念,该概念也是基于 PoW 共识机制,但除了网络难度级别是可调整的以外,还有与 B-money 相同的问题。

        伯克利国际计算机科学研究所(International Computer Science Institute,ICSI)的 Tomas Sander 和 Amnon Ta-Shma 在 1999 年的一篇名为 Auditable,Anonymous Electronic Cash (<<可审核的匿名电子现金>>)的研究论文中介绍了一种电子现金方案。该方案首次使用了默克树来表示代币和零知识证明来证明拥有代币。

         在此方案中,需要一个中央银行来记录所有已使用的序列号。该方案允许用户完全匿名。这只是一种理论设计,由于效率低下的证明机制而无法实现。

        2004 年,Hal Finney 提出了可重复使用的工作量证明(Reusable Proof of Work,RPoW),他是一位计算机科学家和开发人员,也是第一位从中本聪那里接收比特币的人。可重复使用的工作量证明使用 Adam Back 的 HashCash 方案作为创建金钱所花费的计算资源的证明。这也是一个中央系统,保留一个中央数据库来跟踪所有已使用过的 PoW 代币。这是一个在线系统,使用受信任的平台模块(Trusted Platform Module,TPM) 硬件可以实现的远程证明。

        上面提到的所有方案都是经过智能设计的,但从另一个方面来看,它们都是脆弱的,说得具体一点,就是所有方案都依赖于要求用户信任的中央服务器。

标签:方案,比特,PoW,代币,证明,详解,使用
From: https://blog.csdn.net/canglonghacker/article/details/141791745

相关文章

  • 客户端的 Cookie 详解
    0x01:Cookie简介Cookie,它的名字源于一种叫FortuneCookie的饼干(又叫“幸运签饼”),该饼干是一个新月形的薄脆饼干,里面包裹着寓意祝福或预言的签文小纸条,如下图所示:在计算机网络中,Cookie是一种由服务器发送到客户端(通常是浏览器)并保存在客户端的一串文本字符串。它通常保存......
  • Scrapy:Python网络爬虫框架详解
    网络爬虫作为获取互联网数据的重要手段之一,在数据挖掘和信息抽取领域发挥着重要作用。Scrapy是一个快速的、高层次的web抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,从联系跟踪、数据挖掘到历史存档等。Scrapy的主要特点异步处理:Scrapy基......
  • Geopandas:Python地理空间数据分析库详解
    Geopandas是一个开源项目,它扩展了Pandas库的功能,使得可以轻松地处理空间数据。Geopandas使得地理数据的分析和操作更加直观和高效,它在Pandas的基础上增加了对几何类型数据的支持,并且可以与Shapely库和Fiona库一起使用,用于空间数据的读取、处理和分析。Geopandas的主要特点......
  • PyTorch:Python深度学习框架使用详解
    PyTorch是一个开源的机器学习库,广泛用于计算机视觉和自然语言处理领域。它由Facebook的AI研究团队开发,因其动态计算图、易用性以及与Python的紧密集成而受到开发者的青睐。PyTorch的主要特点动态计算图:PyTorch的计算图在运行时构建,使得模型的修改和调试更加灵活。自动微分......
  • Dockerfile 详解
    Dockerfile是一个用于定义Docker镜像构建过程的文本文件。它包含了一系列的指令,这些指令描述了如何从基础镜像创建一个新的镜像。Docker使用这些指令自动化地构建镜像,并且可以确保创建出的镜像是一致的、可重复的。Dockerfile的常用指令FROM指定基础镜像。例如:FROMu......
  • Docker-compose 详解
    docker-compose是一个用于定义和运行多容器Docker应用程序的工具。它使用一个docker-compose.yml文件来配置应用程序的服务、网络和数据卷,并通过简单的命令来管理这些服务。以下是docker-compose的一些核心概念和常用命令:docker-compose.yml文件docker-compose.yml是一......
  • MySQL like用法详解
    MySQLLIKE语法LIKE运算符用于WHERE表达式中,以搜索匹配字段中的指定内容,语法如下:WHEREcolumnLIKEpatternWHEREcolumnNOTLIKEpattern在LIKE全面加上NOT运算符时,表示与LIKE相反的意思,即选择column不包含pattern的数据记录LIKE通常与通配符%一起使用,%表示通配pattern中出现的......
  • MySQL之mysqldump的使用详解
    一、mysqldump简介mysqldump 是 MySQL 自带的逻辑备份工具。它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。二、备份命令2.1命令格......
  • 【AI视频】Runway注册、基本设置、主界面详解
    博客主页:[小ᶻZ࿆]本文专栏:AI视频|Runway文章目录......
  • Java高级编程—Stream流(从0到1详解,附有代码+案例)
    文章目录Stream流26.1获取Stream流26.2Stream流中间方法26.3Stream流终结方法(一)26.4Stream流终结方法(二)Stream流相当于把数据源加载到一条流水线上,即在一条传输管道中对数据进行操作,26.1获取Stream流获取方式方法名说明单列集合defaultStreamstream()Col......