无论您是否相信区块链技术将改变世界,还是认为它只是昙花一现,但有一点是肯定的:如今,每个人都在思考关于区块链的技术和法律问题。人们经常想知道:比特币是“开源”的吗?但这个问题源于对三个独立概念的混淆:区块链、加密货币和开源软件。
什么是区块链?
虽然比特币是构建在区块链1上的最著名的产品,但它们并非同一事物。区块链是一个不断增长的记录列表,这些记录按顺序链接在一起。每个记录称为一个区块,每个记录除了包含关于其代表的交易的信息外,还包含前一个区块的加密哈希值。
如果您不熟悉哈希,以下是它的工作原理。“哈希”是一种以简短且独特的方式表示冗长信息的方法。例如,想想您的电话号码。它包含国家代码、地区或区号、交换码和号码。这些都是任意数字,用于标识电话网络上的位置。要给您打电话,没有人需要知道您的位置——他们只需要知道您的电话号码。
现在想象一下,您的电话号码的每个元素——国家代码、区号、交换码——都是由算法而不是任意数字集确定的。任何拥有您号码的人都能够联系到您,即使他们不知道您在哪里。如果有人想识别您,他们可以索取您的电话号码并检查其是否正确。但他们无法“解包”哈希值来找出答案。哈希值将复杂的信息集简化为一个数字。当然,真正的哈希值使用复杂的数学算法来执行此操作。您可能也使用过哈希值,只是您不知道而已,例如在访问 URL 的短版本时,例如使用 Bitly。
由于区块链中的每个区块都包含一个标识其前一个区块的哈希值,因此区块链中的区块链无法被破坏,并且任何有权访问该链的人都可以验证该链的完整性。即使区块包含加密或匿名信息,也可以通过检查哈希值是否按顺序排列来验证链的完整性。
因此,区块链可以促进商品、事件、交易、资产——当然还有数字货币——在连接的个人和群体网络中流动,所有这些都以一种任何有权访问该链的人都可以审计的方式进行。
因此,您现在应该理解的第一件事是,区块链远比比特币大。比特币只是可以使用区块链跟踪的一种交易——加密货币转移——的一个例子。您还应该理解区块链的另外两个特性:它是分布式的,并且在面对安全问题时具有鲁棒性。
“分布式”意味着区块链在网络上的多个位置同步,而不是由一个中央机构或位置维护和控制。区块链中的每个区块都包含通过网络与所有参与者共享的交易信息。区块链有时被称为“分布式账本”——就像每个人都可以使用的电子表格。
虽然没有系统是完全安全的,但区块链具有使其安全性比位于单个位置或受单个实体控制的电子交易更强大的特性。就像互联网本身一样,区块链使用多个节点来确保没有单点故障。由于网络中每个新区块都会生成唯一的哈希密钥,并且对区块的任何进一步更改也会改变区块的哈希值,因此该系统具有抗篡改性。从理论上讲,有可能入侵该系统,但需要控制网络 50% 以上的份额才能验证虚假交易。这是因为区块链系统被编程为当 51% 的用户承认交易有效时,才认为交易已验证。可以将此想象成维基百科:虽然任何人都可以更改链,但除非大多数用户确信更改有效,否则这些更改不会持久存在。
不同的区块链对权限、中心化和安全性采取不同的方法。分布式账本有两种类型:开放(或公共或无需许可)账本和许可账本。公共账本(如比特币)对网络上的每个人都可访问。公共账本中的每个参与者都可以访问每笔交易的副本,向链中写入新区块,并验证新交易。(例如,比特币使用化名来识别进行交易的各方,但任何人都可以访问化名信息。)许可账本更加中心化。一个例子是 Corda,这是一个开源区块链项目,专注于许可账本,在航空预订和智能合约等一系列垂直领域具有潜在应用。许可账本的创建者控制并识别参与者的角色,使参与者成为网络的一部分,并为参与者提供验证区块所需的加密密钥。这种模式已被各种区块链联盟采用,并在企业创建的区块链中很受欢迎。
以下是区块链技术的一些可能应用
- 选举和投票
- VotoSocial 是一个基于区块链技术的电子投票平台。有一个公共账本/数据更新日志,该平台是开源的,并且数据作为开放数据发布,以生成必要的信任,从而能够审计计票、源代码和独立数据分析。
- Follow My Vote 的目标是构建一个安全的在线投票平台,以提高选举的透明度。该软件具有区块链技术的安全性,并且是开源的,因此任何人都可以审计该软件的代码。
- 交通运输
- Arcade City 正在构建一个由当地司机合作社(称为公会)组成的全球网络。公会司机共同努力为其当地地区提供可靠的服务。此应用程序的骨干是区块链。
- 智能合约 的用途与纸质合同相同,但采用数字形式并存储在区块链内部——本质上是由相互约定的规则组成的计算机程序,这些规则有助于两个或多个当事方进行交互。
- Chainlink 是安全的区块链中间件,允许各种网络上的智能合约连接到它们成为 90% 用例有用所需的关键资源。
- 供应链开源合规性
- 基于区块链的软件部件账本 (SParts 项目) 通过跟踪供应商、他们的软件部件、使用的开源以及相应的合规性工件(例如,源代码、法律声明、开源物料清单、软件程序包数据交换数据、密码学数据等),在制造商及其供应商之间建立信任。这对于构建使用来自许多不同供应商(包括二级供应商)的软件的产品制造商尤其有用。该项目的软件根据 Apache 2.0 获得许可。
- 土地登记
这只是冰山一角。在任何必须可审计交易的应用中,区块链都可以提供一种手段来保持交易的安全性和每个人都可验证性。从这个意义上讲,交易几乎可以是任何东西——从投票到供应链中的一个步骤。当然,也可以跟踪货币交易。
什么是比特币?
比特币是一种加密货币,这是一种通过软件加密保护的货币。与主权国家发行和支持的货币(如美元、英镑或印度卢比)不同,比特币不由任何中央银行发行或管理。它们是受管理的,但只是以最基本的方式。任何货币只有因为经济学家所谓的稀缺性才具有价值。对于货币而言,这种稀缺性必须是人为施加的。毕竟,如果每个人都可以印钞,货币很快就会失去其价值。
事实上,比特币在加密货币中其稀缺性方法方面是不寻常的,因为它具有固定的供应量。当比特币被创建时,对比特币可能存在的数量设置了任意限制。随着对比特币的需求增加,价值也随之增加,直到最终其价格开始飙升并变得非常不稳定。其他加密货币不一定遵循相同的规则,而是通过例如将货币与现实世界中的有价值物品联系起来来创造稀缺性——类似于忠诚度计划积分或代金券。
比特币通过区块链技术实现。
如果您拥有比特币,它们会存储在只有您可以访问的钱包中。比特币钱包的工作方式有点像您的电子邮件。在设置电子邮件地址后,您需要软件(通常称为电子邮件客户端)才能发送或接收电子邮件。您可以将该软件下载到设备,也可以通过互联网访问电子邮件客户端。要访问您的电子邮件,您需要使用用户名(电子邮件 ID)和密码。类似地,比特币钱包使您可以发送或接收比特币。
要访问您的钱包,您需要两个加密密钥:公钥和私钥。公钥在分布式网络上对每个人都是已知的(就像您的电子邮件 ID),但您的私钥仅对您自己已知(就像密码)。当您使用私钥访问您的比特币钱包时,您可以与分布式网络上的任何人转移比特币。没有您的私钥,任何人都无法访问您的比特币钱包。因此,您进行的每笔交易都将以数字方式记录在您的比特币钱包中。
比特币钱包是一种数字钱包。还有其他类型的数字钱包,例如桌面钱包、云钱包和移动钱包。各种数字钱包都与比特币配合使用,例如 Breadwallet、Jaxx、Mycelium、Ledger Blue 和 Ledger Nano。

在上图中,用户 A、B、C 和 D 进入各种交易。但是,D 尝试转移的金额超过了其钱包中的金额。A、B 和 C 之间的转账已验证,但从 D 到 A 的转账未验证。这些交易由广大用户在一个称为挖矿的过程中进行验证。矿工会收到少量报酬以换取挖矿,这需要他们验证链。与当今大多数资金转移一样,钱包存储账本交易的结果,并且不发生物理转移。当 D 在此示例中尝试进行转账时,就好像 D 的银行帐户中资金不足一样,因此交易无法进行。主要区别在于,验证交易的是矿工,而不是银行。
但比特币只是一种加密货币,而加密货币只是区块链的一种应用。
区块链是开源的吗?
唯一可以恰当地称为“开源”的是开源软件。这不是迂腐;这是精确。 “源”指的是源代码,而开源许可模式取决于这样一个事实,即许多软件只能以一种形式(二进制形式)执行,但以另一种形式(源代码形式)编写。二进制文件不易被人修改,因此访问源代码对于更改软件至关重要。开源模型旨在确保二进制代码的用户可以访问他们正在使用的二进制文件的源代码,以便他们可以检查、理解、修复和改进该软件。世界上大多数其他事物都不具有这种性质——一种形式可读而另一种形式不可读的双重性质——因此将开源的概念强加于其他事物是尴尬的。
虽然术语“开源”经常用于描述其他事物——从瑜伽到生物信息学,再到犹太逾越节晚餐——但当应用于软件以外的更广泛领域时,该术语可能会产生误导。当人们说某物(软件除外)是“开源”时,他们通常指的是以下两种含义之一:要么它是公开可用的,要么它不受需支付版税的专利权要求的约束。因此,如果您阅读或听到某物是“开源”的,并且该物不是软件,则您需要提出更多问题。如今,人们经常说“比特币是开源的”或“区块链是开源的”。那么,它们是什么意思呢?
区块链是一种技术或生态系统,它与区块链软件不同。区块链是通过软件实现的,并且有各种软件项目已被编写出来以创建和管理区块链。从这个意义上讲,区块链就像一个数学公式,例如二次方程或将华氏温度转换为摄氏温度的公式。您可以编写软件来执行该功能,但其他人也可以。如果 100 位程序员各自编写了一个区块链软件程序,那么它们都将是不同的程序,可能以不同的语言编写,具有细微的或大的差异,但它们都将具有相同的核心功能。正如区块链与比特币的关系是从一般到具体一样,区块链与区块链软件的关系也是从一般到具体。
区块链软件主要由三个组件组成:密码学、分布式账本和去中心化系统。这些组件中的每一个都是使用软件实现的,并且它们中的每一个都可以是开源的或专有的。通常,社区开发的区块链软件项目在开源许可下获得许可。例如,以太坊在 GNU LGPLv3 下获得许可,比特币核心在 MIT 许可证下获得许可,而 Hyperledger Fabric 在 Apache 2.0 下获得许可。另一方面,也存在由各种公司开发和拥有的私有区块链项目。事实上,其中一些公司也已为其发明申请了专利。许多可用的数字钱包都在开源许可下获得许可。因此,当人们说“区块链是开源的”时,他们可能意味着区块链系统通常使用开源软件实现。
但是,区块链在更广泛的意义上是开放的吗?在某种程度上,是的。例如,开放定义 规定了开放数据和内容的原则,指出“开放数据和内容可以被任何人出于任何目的自由使用、修改和共享。”区块链是开放的,因为它可以被任何用户验证,并且任何中央政府机构都无法阻止对其的访问。因此,区块链具有开放的潜力,但每个区块链都不同。此外,区块链利用众包方式来验证交易。从这个意义上讲,它就像维基百科,社区共识决定了哪些信息被信任为准确的。区块链技术的这一方面与其说是开源,不如说是开放文化。
但这引出了一个问题,即区块链技术的价值是否在于其开放性。区块链之所以受欢迎,部分原因是它被认为是安全的。这提出了一个古老的问题:是通过模糊性还是开放性更容易实现安全性?一些安全专家表示,封闭标准更安全,因为它们将关键信息保密,防止坏人识别漏洞并获得对安全系统的后门访问权限。然而,其他人认为,开放标准最能促进安全性,因为任何潜在的漏洞都将受到那些致力于安全的人的广泛审查。正如他们在开源中所说,“如果有足够的眼球,所有错误都是肤浅的。”开放安全标准的支持者也怀疑,是否有足够的信息可以对黑帽黑客隐藏,以使技术真正安全。因此,许多安全专家赞成开放系统以最大限度地提高安全性,进而赞成区块链作为一种潜在的开放技术。
区块链是开放的,因为它们依赖于众包原则,这避免了权力集中在任何一个机构手中。在现代世界中我们进行的每笔交易中,我们都依赖并信任第三方中介来正确完成交易:银行处理付款转账,产权代理人检查和转移房地产产权,或审计师确保会计记录完整。区块链技术有可能在几乎每个业务中取代第三方中介。这就是区块链技术受到如此多关注的原因。
但自由是有代价的。比特币因其在非法活动中的使用而臭名昭著,而且政府将如何出于税收目的对待加密货币仍不清楚。例如,在 2013 年,美国政府关闭了丝绸之路网站,因为它允许用户使用比特币买卖麻醉品和其他非法商品。印度的一起勒索案件成为印度头条新闻,其中比特币被用于非法付款。在美国,加密货币被 IRS 指定为财产,而不是货币。计算和报告每笔加密交易的资本利得税的难度——目前大多数税务机关的实际要求——使得税务合规变得困难。
比特币的网站 说,“比特币是开源的;它的设计是公开的,没有人拥有或控制比特币,每个人都可以参与。”但这种说法可能是令人困惑的,如果不是误导性的。事实上,比特币是建立在开源软件之上的,其技术是共识驱动的。 2015 年,比特币的主要工程师之一分叉了该项目,创建了 Bitcoin XT,这是一种替代实现,它允许更大的可扩展性,但最终失去了支持。这就是开源软件的本质——最流行的解决方案将获得关注,而其他解决方案则被抛在后面,或者被希望创建新软件的其他人采用。因此,比特币经历了开源项目的成长之痛,并且仍然是一项由共识驱动的技术——如果你愿意,它是开放的。
虽然比特币作为一种合法的价值转移手段的长期命运仍有待观察,但区块链技术的潜力是巨大的。区块链可能不是真正的“开源”,但就像 2000 年代的开源软件一样,它是一种新的技术范式,正在迅速获得许多应用的关注。就像开源软件一样,它可能会“吞噬世界”,并且在未来几十年中,我们的许多日常活动可能会依赖于使用这种新范式。
1. “区块链”一词的正确词汇正在发展中。与许多新兴概念一样,它正在从两个词(“block chain”)迁移到一个组合词(“blockchain”)。最重要的是,它不是专有名词,因此不应大写。这看起来可能像是在吹毛求疵,但它很重要:区块链是一种通用技术,而不是单一产品或软件实现。因此,在本文中,我们指的是“区块链”。
4 条评论