区块链比特币开源
无论您是相信区块链技术已准备好改变世界还是在转瞬即逝,都可以肯定的是:关于区块链的技术和法律问题如今已浮现在每个人的脑海。 人们常常想知道:比特币是“开源的”吗? 但是这个问题源于对三个独立概念的困惑:区块链,加密货币和开源软件。
什么是区块链?
尽管比特币是建立在区块链1上的最著名的产品,但它们不是一回事。 区块链是不断增长的记录列表,这些记录按顺序链接在一起。 每个记录都称为一个块,并且每个记录除包含有关它表示的事务的信息外,还包含前一个块的加密哈希。
如果您不熟悉哈希,请按以下步骤操作。 “哈希”是一种以简短而独特的方式表示冗长信息的方法。 例如,考虑您的电话号码。 它包含一个国家代码,一个地区或地区代码,一个交易所和一个号码。 这些中的每一个都是标识电话网络上位置的任意数字。 要通过电话给您打电话,您无需知道您的位置,只需知道您的电话号码即可。
现在想象一下,电话号码的每个元素(国家代码,区号,交换)是由算法而不是由任意数字决定的。 知道您电话号码的任何人都可以与您联系,即使他们不知道您在哪里。 如果有人想要识别您的身份,他们可以询问您的电话号码并检查是否正确。 但是他们无法“解包”哈希以找出答案。 哈希将一组复杂的信息减少为一个数字。 当然,真正的散列使用复杂的数学算法来实现。 当访问简短的URL版本( 例如,使用Bitly)时,您可能还不知道使用了哈希。
由于区块链中的每个区块都包含一个标识其之前的哈希值,因此区块链中的区块链不能被破坏,并且有权访问该链的任何人都可以验证该区块的完整性。 即使该块包含加密或匿名信息,也可以通过检查所有哈希是否按顺序排列来验证链的完整性。
因此,区块链可以促进货物,事件,交易,资产(当然还有数字货币)在个人和团体的互联网络中的流动,所有方式都可以由可访问该链的任何人进行审计。
因此,您现在应该了解的第一件事是,区块链比比特币大得多。 比特币只是一种交易的例子-加密货币的转移-可以通过区块链进行跟踪。 您还应该了解区块链的另外两种质量:面对安全问题,它是分布式的且健壮的。
“分布式”是指区块链跨网络上的多个位置同步,而不是由一个中央机构或位置进行维护和控制。 区块链中的每个区块都包含通过网络与所有参与者共享的交易信息。 区块链有时称为“分布式分类帐”,就像每个人都可以使用的电子表格一样。
尽管没有系统是完全安全的,但区块链具有的功能使其安全性比驻留在单个位置或在单个实体控制下的电子交易更强大。 就像互联网本身一样,区块链使用多个节点来确保没有单点故障。 由于网络中的每个新块都会生成唯一的哈希密钥,并且对该块的任何进一步更改也会改变该块的哈希,因此系统可以防止篡改。 从理论上讲,有可能入侵该系统,但人们需要控制超过50%的网络以验证虚假交易。 那是因为区块链系统被编程为当51%的用户确认交易有效时才考虑交易经过验证。 可以将其视为Wikipedia:尽管任何人都可以更改链,但是除非大多数用户确信更改是有效的,否则这些更改将不会持续。
不同的区块链对权限,集中化和安全性采取不同的方法。 分布式分类帐有两种类型:公开分类帐(或公共分类帐或未经许可的分类帐)和许可分类帐。 网络上的每个人都可以访问公共分类帐(如比特币)。 公共分类帐中的每个参与者都可以访问每笔交易的副本,将新区块写入链中,并验证新交易。 (例如,比特币使用假名来识别进行交易的各方,但是任何人都可以访问假名信息。)许可的分类帐更加集中。 一个示例是Corda ,这是一个开放源代码的区块链项目,它以许可的分类帐为中心,在航空公司的预订和智能合约等一系列垂直领域都有潜在的应用。 允许分类帐的创建者控制并标识参与者的角色,使参与者成为网络的一部分,并为参与者提供验证块所需的加密密钥。 该模型已被各种区块链财团采用,并在企业创建的区块链中很流行。
以下是区块链技术的一些可能应用:
选举与投票VotoSocial是基于区块链技术的电子投票平台。 有一个公共分类帐/数据更新日志,该平台是开放源代码,并且数据已作为开放数据发布,以生成必要的信任,从而可以对投票计数,源代码和独立的数据分析进行审核。 跟随My Vote的野心是建立一个安全的在线投票平台,该平台将提高选举透明度。 该软件具有区块链技术的安全性,并且是开源的,因此任何人都可以审核该软件的代码。运输Arcade City正在建立一个名为guilds的本地驾驶员合作社的全球网络。 公会司机共同为当地提供可靠的服务。 该应用程序的骨干是区块链。智能合约的作用与纸质合约相同,但以数字形式存在,并存储在区块链中—本质上,计算机程序包含共同商定的规则,可促进两个或多个参与者进行交互。 Chainlink是安全的区块链中间件,它允许各种网络上的智能合约与关键资源连接,以使它们对于90%的用例有用。供应链开源合规基于区块链的软件零件分类帐( SParts Projects )通过跟踪供应商,他们的软件零件,使用的开源以及相应的合规性工件(例如,源代码,法律声明,资料,软件包数据交换数据,加密数据等)。 这对于制造商利用许多不同供应商(包括次级供应商)的软件来制造产品的制造商特别有用。 该项目的软件已在Apache 2.0下获得许可。土地登记“ 瑞典测试土地登记的区块链技术 ” “ 乔治亚州共和国将与经济学家Hernando De Soto,BitFury一起在区块链上试点土地所有权 “ “ 印度国家使用区块链技术制止土地所有权欺诈 ”
这只是冰山一角。 在必须对交易进行审核的任何应用中,区块链都可以提供一种方法,以确保每个人的交易安全和可验证。 从这种意义上讲,交易几乎可以是任何事情-从投票到供应链中的环节。 当然,也可以跟踪金钱交易。
什么是比特币?
比特币是一种加密货币,是一种通过软件加密保护的货币。 与主权国家发行和支持的货币(如美元,英镑或印度卢比)不同,比特币不由任何中央银行发行或管理。 它们只能通过最基本的方式进行管理。 任何一种货币都有价值,仅仅是因为经济学家称之为稀缺性。 对于一种货币,这种稀缺性必须人为施加。 毕竟,如果每个人都可以印钱,钱将很快失去其价值。
实际上,比特币在其稀缺性解决方案中是不寻常的,因为它有固定的供应量。 创建比特币时,对可能存在的比特币数量设置了任意限制。 随着对比特币需求的增加,价值增加,直到最终其价格开始飙升并变得非常不稳定。 其他加密货币不一定遵循相同的规则,并通过例如将货币与现实世界中的有价物品联系起来而造成稀缺,这类似于忠诚度计划积分或股票。
比特币通过区块链技术实现。
如果您拥有比特币,则将它们存储在只有您才能访问的钱包中。 比特币钱包的工作方式类似于您的电子邮件。 设置电子邮件地址后,您需要通常称为电子邮件客户端的软件,该软件使您能够发送或接收电子邮件。 您可以将该软件下载到设备上,也可以通过Internet访问电子邮件客户端。 要访问您的电子邮件,您需要使用用户名(电子邮件ID)和密码。 同样,比特币钱包使您能够发送或接收比特币。
要访问您的钱包,您需要两个加密密钥:公共密钥和私有密钥。 分布式网络上的每个人都知道公用密钥(例如您的电子邮件ID),但是私有密钥只有您自己知道(例如密码)。 使用私钥访问比特币钱包时,您可以通过分布式网络与任何人转让比特币。 没有您的私钥,没有人可以访问您的比特币钱包。 因此,您进行的每笔交易都会以数字方式记录在您的比特币钱包中。
比特币钱包是一种数字钱包。 还有其他类型的数字钱包,例如台式机钱包,云钱包和移动钱包。 各种数字钱包都可以与比特币一起使用,例如Breadwallet,Jaxx,Mycelium,Ledger Blue和Ledger Nano。
在上图中,用户A,B,C和D进行了各种交易。 但是,D尝试转移的金额超过了D钱包中的金额。 A,B和C之间的传输经过验证,但从D到A的传输未经验证。 整个交易都通过称为“挖掘”的过程来验证。 矿工获得少量以换取采矿,这要求他们验证链条 。 像当今大多数汇款一样,钱包存储分类帐交易的结果,并且没有进行实物转账。 在此示例中,当D尝试进行转帐时,就好像D的银行帐户中的资金不足,因此该交易无效。 主要区别在于,矿工而非银行验证交易。
但是比特币只是一种加密货币,而加密货币只是区块链的一种应用。
区块链是开源的吗?
唯一被正确称为“开源”的是开源软件。 这不是学究; 这是精度。 “源代码”是指源代码,开放源代码许可模型的事实是,许多软件只能以一种形式(二进制形式)执行,而只能以另一种形式(源代码形式)执行。 二进制文件不能轻易被人更改,因此访问源代码对于更改软件至关重要。 开源模型旨在确保二进制代码的用户可以访问他们正在使用的二进制代码的源代码,以便他们可以检查,理解,修复和改进该软件。 世界上大多数其他事物都不具备这种质量-一种双重性,一种形式可读,另一种形式不可读-因此将开源概念强加于其他事物是尴尬的。
尽管“开源”一词经常被用来描述其他事物,从瑜伽到生物信息学再到餐饮者,但该术语在比软件更广泛地应用时可能会产生误导。 当人们说某种东西(软件以外的东西)是“开源的”时,它们通常是指以下两种情况之一:它可以公开获得,也可以不受专利权保护。 因此,如果您阅读或听到的东西是“开源的”,而那不是软件,则您需要提出更多的问题。 如今,人们经常说“比特币是开源的”或“区块链是开源的”。 那么,它们是什么意思呢?
区块链是一种技术或生态系统,它与区块链软件不同。 区块链通过软件实现,并且已经编写了各种软件项目来创建和管理区块链。 从这个意义上讲,区块链就像一个数学公式,例如二次方程或将华氏温度转换为摄氏度的公式。 您可以编写软件来执行该功能,但其他许多软件也可以。 如果100位程序员各自编写了一个区块链软件程序,那么它们全都是不同的程序,也许是用不同的语言编写的,会有细微的变化或较大的变化,但是它们都具有相同的核心功能。 正如区块链与比特币的关系是从一般到特定的关系一样,区块链与区块链软件的关系也是从一般到特定的关系。
区块链软件主要由三部分组成:加密,分布式账本和去中心化系统。 这些组件中的每一个都使用软件来实现,并且它们可以是开源的也可以是专有的。 通常,社区开发的区块链软件项目是根据开源许可证获得许可的。 例如,以太坊是根据GNU LGPLv3许可的,比特币核心是根据MIT许可的许可,而Hyperledger Fabric则是基于Apache 2.0的许可的。 另一方面,有私有的区块链项目,由各个公司开发和拥有。 实际上,其中一些公司也已为其发明申请了专利。 许多可用的数字钱包都是在开源许可证下获得许可的。 因此,当人们说“区块链是开源的”时,他们可能意味着区块链系统通常是用开源软件实现的。
但是区块链在更一般的意义上开放吗? 从某种意义上说是这样。 例如, 开放定义列出了开放数据和内容的原则,说“开放数据和内容可以被任何人出于任何目的自由使用,修改和共享”。 区块链是开放的,可以被任何用户验证,并且任何中央政府机构都不能阻止对它的访问。 因此,区块链具有开放的潜力,但是每一个都不相同。 此外,区块链利用众包方式验证交易。 从这种意义上讲,就像Wikipedia,社区共识控制着哪些信息是准确的。 区块链技术的这一方面不是开源,而是开放文化。
但这引出了一个问题,因为区块链技术是开放的,因此它是否有价值。 区块链之所以受欢迎,部分原因是它被视为安全的。 这就提出了一个古老的问题:通过模糊性或开放性更容易实现安全性吗? 一些安全专家说,封闭标准更安全,因为它们保留了不良行为者的关键信息,这些不良行为者可能会发现弱点并获得对安全系统的后门访问权。 但是,其他人则认为开放标准可以最好地促进安全性,因为任何潜在的漏洞都将受到那些致力于安全性工作的人员的广泛审查。 正如他们在开放源代码中所说的那样:“只要有足够的眼球,所有的bug都是浅表。 开放安全标准的支持者也怀疑黑帽黑客是否可以隐藏足够的信息以使技术真正安全。 因此,许多安全专家倾向于使用开放系统来最大程度地提高安全性,而反过来又倾向于将区块链作为一种潜在的开放技术。
区块链在某种程度上是开放的,因为它们依赖于众包原则,这避免了权力集中在任何一个机构中。 在现代世界中进行的每笔交易中,我们都依赖并信任第三方中介机构来正确完成交易:处理付款转账的银行,检查和转让房地产所有权的产权代理人或确保审计师确定会计记录完整。 区块链技术具有取代几乎所有业务中的第三方中介的潜力。 这就是为什么区块链技术获得如此多关注的原因。
但是自由有其代价。 比特币因其在非法活动中的使用而臭名昭著,目前仍不清楚政府如何出于税收目的对待加密货币。 例如,,美国政府关闭了“丝绸之路”网站,以允许用户使用比特币买卖毒品和其他非法商品。 勒索案在印度成为头条新闻,印度使用比特币进行非法付款。 在美国, 国税局将加密货币指定为财产,而不是货币。 每次加密交易都难以计算和报告资本利得税(大多数税务部门目前实际上是这样的要求), 使税收合规变得很困难 。
比特币的网站说:“比特币是开源的;它的设计是公开的,没有人拥有或控制比特币,每个人都可以参与。” 但是,这种说法即使不引起误解,也可能令人困惑。 实际上,比特币是建立在开源软件之上的,其技术是共识驱动的。 ,一位比特币的主要工程师分叉了该项目,以创建比特币XT ,这是一种替代实现,可实现更大的可扩展性,但最终失去了支持。 这就是开放源代码软件的本质-最受欢迎的解决方案将受到青睐,而其他解决方案则被希望创建新软件的其他人抛在后面或被他们所采用。 因此,比特币经历了开源项目不断发展的痛苦,并且仍然是一种由共识驱动的技术-如果可以的话,开放。
虽然比特币作为转移价值的合法手段的长期命运还有待观察,但区块链技术的潜力是巨大的。 区块链可能不是真正的“开源”,但就像2000年代的开源软件一样,它是一种新技术范例,正在Swift吸引着许多应用。 像开源软件一样,它可能会“吞噬整个世界”,并且在未来几十年中,我们的许多日常活动可能都依赖于使用这种新范例。
1.正在开发“ blockchain”一词的正确词典。 像许多新兴概念一样,它正在从两个词(“区块链”)迁移到一个portmanteau(“区块链”)。 最重要的是,它不是专有名词,因此没有大写。 这可能看起来像是一个小问题,但很重要:区块链是一种通用技术,而不是单个产品或软件实现。 因此,在本文中,我们指的是“区块链”。
翻译自: /article/18/7/bitcoin-blockchain-and-open-source
区块链比特币开源