【51CTO.com快译】自从2009年诞生以来,区块链技术已被证明是一种强大的、具有颠覆性的技术,其应用已经远远超越了加密货币的领域。而区块链技术的应用越来越多,越来越多的企业选择区块链技术作为他们的软件应用程序。
什么是区块链技术?
区块链是共享开放数据库上的分布式记录,由称为节点的计算机网络维护,并通过加密技术和加密的共识协议进行保护。
区块链是由什么组成的?
区块链由一系列按时间顺序排列的区块组成,这些区块根据每个区块的创建时间而定。区块其中包含:
(1)数据,也称为“有效载荷”。
(2)标记块创建的时间戳。
(3)标识哈希值。
(4)前一个块的哈希值。
有效载荷可以是任何数据,例如:
- 交易清单,如分布式分类账。
- 代码,就像智能合约一样。
- 库存和库存清单。
- 音乐文件。
- 文本或文档。
- 图像。
- 敏感信息,如健康数据或个人身份证明。
- 几乎任何其他东西。
哈希值是一串具有预定长度的数字,作为区块中的数据的标识符或指纹。当区块中的所有数据被输入到加密哈希函数(CHF)时,就创建了每个区块的哈希值。即使数据被更改了一个字符,也会产生不同的哈希值。
同样,如果区块中的任何数据发生了变化,即使是很小的变化,哈希值也会发生变化,因为每个区块都必须包含以前的哈希值,所以接下来的所有区块也会发生变化。
此外,加密哈希函数(CHF)具有单向计算的特点:将输入代入加密哈希函数中可以很容易地验证输入是否正确,但不能进行反向计算,即在只有已知输出的情况下验证输入(虽然这在理论上是可行的,但在实际操作中是不可行的) 。
通过这种方式,每个区块都依赖并链接到之前的区块以及之后的区块。这创建了一个高度安全的系统,这也是区块链经常被描述为“防篡改”、“不可变”和“不可破坏”的一部分原因。
区块链是如何创建的?
如何在区块链中创建区块是由节点认可的一组协议决定的。这组协议称为共识协议。
有许多不同类型的共识协议,但最广泛使用的两种协议是工作量证明(PoW)和权益证明(PoS)。无论使用什么协议,所有区块链都是分布式的,这意味着所有节点都拥有区块链的相同副本。这就创建了一个所有节点都同意和引用的“单一真相来源”。
区块链可以是无权限的(公共的),这意味着任何人都可以创建区块并访问区块链;或者它可以是受许可的(私有的),这意味着只有系统中允许的节点才能对区块链做出贡献。对于希望从区块链技术中获益、但不希望外部人员访问该链的企业和其他封闭网络来说,许可区块链可能是一个更好的选择。
区块链的节点可以通过使用公钥(PK)和私钥(又称秘钥(SK))加密来验证交易和所有权。公钥(PK)是一个公开的地址,而秘钥(SK)是私有的,只有所有者知道。例如,在加密货币应用程序中,进行交易的用户使用公钥加密信息并将其发送给接收方。然后使用秘钥(SK)解密数据,这样就完成了交易。
区块链技术的好处是什么?
许多应用程序可以使用区块链技术构建,区块链对本地、外包和近岸软件开发的需求正在增长。使用区块链技术的好处包括:
- 去中心化,允许点对点(P2P)交易,无需通过第三方。
- 消除了对个人的信任,因为区块链机制中存在信任。换句话说,即使交易双方互不认识,也可以进行交易。
- 安全与防范欺诈。
- 自动执行合同。
- 透明度,所有参与成员共享相同的数据。
- 跟踪有形或无形商品。
当软件开发公司考虑使用区块链技术时,他们应该评估项目是否能从这些优势中获益。他们还应该考虑是否允许或不允许的区块链更适合项目。
定制软件开发公司使用区块链技术的11种方式
(1)加密货币软件和区块链开发
名为“中本聪”的人士或组织在2008年创建了区块链作为比特币的基础技术。虽然不同的加密货币有不同的协议,但区块链是所有加密货币的底层技术。
就加密货币而言,区块链中携带的数据是加密货币硬币交易的分类账。例如,一行数据可以声明A向B发送了100个比特币。
每一行数据都由充当数字签名的公钥(PK)和秘钥(SK)进行验证。数字签名(例如哈希值)会根据数据不同的变化,并且是单向计算的。这样,A不能复制B的签名,反之亦然,确保所有交易都是合法的。
当某人(A)想要向另一人(B)的钱包发送加密货币时,他们向所有节点发送一个请求,要求他们的交易被记录在一个区块中完成。这些节点被称为“矿工”。矿工通过以下方式验证交易:
- 通过公钥(PK)检查签名,验证交易确实来自A。
- 使用公钥(PK)解锁B的地址。
- 检查A是否有未用完的加密货币。
矿工选择在一个区块中包含哪些交易,然后他们必须解决一个密码难题(通常是通过由数千个专门的计算机服务器组成的大规模“农场”),这样在本质上是找到将产生所需哈希输出的输入(只能通过猜测找到)。
一旦矿工找到了正确的输入,他们就完成了工作量证明(PoW)。作为奖励,就得获得加密货币。然后该区块被分发,并由其他节点验证,最终添加到区块链中。矿工也可以通过交易费用获取加密货币。
区块链解决了双重消费的问题,即当一个人复制了一种数字货币并将其消费两次时发生的问题。区块链如何帮助使双重消费成为不可能?假设A想向B和C的钱包同时发送一个比特币,这两个交易都将发送到所有节点进行验证。一旦一个交易被验证,该交易将被记录在一个区块上。然而,通过相同的方法进行的第二次交易将被拒绝,因为加密货币已经被记录在区块链中。一旦解决了双重消费问题,人们就可以使用各种加密货币,而无需担心欺诈。
虽然加密货币软件和区块链的开发密切相关,但在不同的行业和运营中还有许多其他应用。
(2)智能合约
智能合约的有效载荷是用代码编写的合约,一旦输入需求得到满足,就可以自动执行。
描述智能合约的一个常见比喻是自动售货机:当从自动售货机购买一瓶汽水时,需要为所选商品输入正确的金额。一旦塞入现金或在信用卡输入了正确的金额,自动售货机就会给出一瓶汽水。与自动售货机一样,智能合约是自动的,只要满足输入要求。它们也是独立的,因为交易的执行不需要第三方证明,例如通过收银员来核实金额。
从历史上看,双方通过第三方(如律师或银行)达成协议。他们还依赖于第三方(例如法官)在条款未被满足时执行或维护这些合同。智能合约不需要第三方,因为合约会自动独立执行。一旦放入区块链,合同就无法更改。智能合同也比传统合同更具成本效益,执行速度更快。
其中一个例子就是航班保险。如果你购买了一份保单,该保单规定航班取消时将为你报销机票费用,并且该合约已签署并存储在区块链上,那么智能合约可以在航班取消时自动报销。
任何行业领域或环境都可以采用智能合约,并从自动、独立和立即执行已商定的合约中获益。
(3)分布式应用程序(Dapps)
分布式应用程序(Dapps)是运行在去中心化网络上的应用程序。它们与传统网络应用的不同之处在于,后端代码并不运行在一个中央服务器上,而是分布在一个由点对点(P2P)计算机组成的网络上。然而,就像Web应用程序一样,前端代码和用户界面可以用任何代码编写。
以太坊是第一个使用分布式应用程序(Dapps)的区块链平台,大部分的分布式应用程序(Dapps)的开发仍然集中在那里(尽管现在有其他平台,如EOS、Polkadot和Near)。在智能合约的支持下,以太坊允许开发人员在其虚拟机(EVM)上编程和运行不可变和自治的应用程序。
(4)供应链管理和物流
区块链技术在供应链管理和物流方面可以提供很多东西。在这些场景中,经过许可的区块链是理想的,因为企业希望所有参与节点都是已知和可信的。经过许可的区块链还允许更高级别的隐私——例如,如果参与的企业担心透露他们的价格或成本,信息可以保密,而发货或接收的货物数量等细节可以共享。
作为数字账本的区块链可以跟踪库存,记录以下数据:
- 生产日期。
- 装运/送货日期。
- 有效期。
- 所有权。
- 库存。
- 位置。
可以跟踪药品、农产品或邮件等商品,因为分类帐中都记录着与这些商品相关的每一笔交易。
制造商也可以通过区块链分享他们的库存清单。这将增加透明度,并允许企业根据库存量做出更快、更准确的决定。
区块链还可以用于记录产品订单、银行贷款和发货。例如,如果零售商向供应商下了订单,该订单将被记录在区块链上。然后,供应商可能会向银行申请贷款,以便生产这些产品。银行可以看到区块链上的订单证明,并批准贷款,这也将被记录在链上。一旦供应商运输产品,产品也会进入区块链。
如果使用智能合约,这些系统也可以实现自动化。
(5)个人身份安全和管理
验证身份的能力对于接受服务、拥有财产、在市场上买卖以及许多其他日常活动(例如看病或开车)都是至关重要的。那些在必要时无法证明自己身份的人将被排除在系统之外,并被禁止从事某些活动,其中包括禁止购买酒类和投票等。
随着人们的生活越来越多地转移到网上,个人身份变得越来越脆弱:身份盗窃和个人账户被黑客入侵构成了现实和严重的安全威胁。关于谁拥有个人数据并从中受益的讨论也越来越多,例如许多企业都在买卖和滥用个人数据。换句话说,个人数据是有价值的,但个人却很少能从这些价值中获得回报。
区块链技术有潜力提供安全和分散的身份识别,与政府组织或银行等中央实体分离。它还可以创建人们可以完全拥有其数据的系统,并从数据中获得经济利益。
其中一个例子是在区块链上存储个人健康数据。患者可以允许研究人员使用部分数据,研究人员可以使用智能合约,通过将加密货币发送到患者的电子钱包来“购买”这些数据。而患者可以使用这些加密货币支付与健康相关的费用或服务。
(6)国际转账
尽管Square、Venmo、Mercado Pago和Ant Group等新的金融科技应用程序使p2p买卖和借贷变得更加容易,但国际转账仍然需要花费大量时间和金钱。目前的银行采用集中式系统,这意味着数据存储在中央数据库而不是分布式数据库中,每家银行可能遵循不同的规则和规定。大多数国际转帐费用高昂,可能需要数小时或数天才能完成。
像RippleNet和IBM World Wire这样的公司正试图利用区块链技术来改变现状。金融机构可以加入他们的区块链网络,并通过他们自己的共识构建协议,使用加密货币进行交易。
例如,如果A想给居住在日本的B发送100美元,A所在的银行会将这些美元转换成加密货币,然后将交易提交给网络中的节点进行验证。一旦完成,B所在的银行将收到这些加密货币,然后B可以将这些加密货币转换成想要的任何一种货币。一旦完成,整个交易将存储在区块链上,无法更改或销毁。
RippleNet和IBM World Wire都宣称他们的交易是实时发生的,降低了成本,而且非常安全。其基本信念是,具有价值的东西(如加密货币)应该能够像PDF或电子表格一样轻松地共享和传输。
(7)投票
像Follow My Vote这样的公司正在使用区块链技术创建一个新的投票系统,该系统将解决与安全、欺诈、身份、腐败和无法访问实体投票站有关的问题。
当前投票制度面临的一个问题是对持有和计票实体的信任。作为一个去中心化的数据库,在区块链上跟踪投票将意味着投票不会被一个集中的实体存储。作为一个透明和共享的数据库,区块链将允许每个人查看和计票。
这将使某些类型的投票欺诈不可能发生,因为每一票将与一个身份证相关联,无法复制。此外,作为一项数字技术,区块链允许人们在他们的个人设备上投票,消除了排队等候或运输问题。
(8)非不可替代令牌(NFT)的销售
不可替代令牌(NFT)是唯一的、不能被其他东西复制或替换的事物。例如,比特币是可替代的,因为任何一个比特币与其他比特币是一样的,如果被替代,它们的价值是相等的。然而,一幅画是不可替代的,因为它只能被完全不同的画取代,可能有不同的属性或不同的价值。
以下是一些目前的不可替代令牌(NFT)的例子:
- 数字艺术
- 文章
- 音乐
- 游戏项目
- 域名
- 微博
- gif
不可替代令牌(NFT)赋予内容创建者拥有和控制其内容的权力。他们可以确定产品的稀缺性,以及权利和许可。他们还可以获得版税。
和分布式应用程序(Dapps)一样,大多数不可替代令牌(NFT)都是以太坊区块链的一部分,但其他区块链可以并正在实现自己版本的不可替代令牌(NFT)。
不可替代令牌(NFT)是一个不断增长且利润丰厚的市场。根据《福布斯》在本月早些时候的报道,不可替代令牌(NFT) 在今年7月的全球销售额超过12亿美元,其中大部分来自区块链网络游戏的需求。
将区块链用于不可替代令牌(NFT)销售正在彻底改变人们对价值的概念化方式,同时也为所有类型的内容创造者和企业家提供更多的安全性和控制权。
(9)安全发送医疗信息 (PHI)
目前用于跟踪、维护和访问个人健康信息的系统存在许多缺陷和效率低下。首先,病人的健康数据并没有存储在一个集中的位置,每个人的医疗记录分散在许多不同的医疗服务提供者中,这使得获取病人健康历史的全貌变得困难。还可能存在安全漏洞的问题,因为每个实体都负责设计和实现自己的安全策略和过程。
区块链技术可以解决这些问题。区块链可以存储医生会诊记录、处方、核磁共振成像、手术过程和任何其他与健康相关的数据。不同的医疗保健组织可以通过公钥(PK)将患者数据发送到其他组织。然后,患者也可以使用自己的秘钥(SK)访问这些信息,并在需要时授予采用者的访问权限。
(10)房地产销售
区块链技术可以通过多种方式影响房地产的买卖方式:
- 智能合同可以取代传统合同,无需第三方参与(如律师和房地产代理)。
- Property Club和The Bee Token等新平台正在颠覆房屋租赁、购买和出售的方式。
- 卖方可以将其资产实现代币化,允许将资产分割成更小的部分,供中小投资者投资。
- 买家或租户可以用加密货币购买房地产。
区块链技术有可能提供更高的清算机会和投资机会,并改变现有的租赁和财产共享系统的方式。
(11)物联网应用
区块链技术允许智能设备在一个安全的分布式网络上相互交互,这可能对物联网的发展产生深远的影响。区块链的分布式和去中心化特性将允许智能设备比以前更有效地相互集成和通信。
例如,Chronicled结合了物联网和区块链服务于制药和食品行业,而智能集装箱和传感器提供任何特定货物的实时信息。区块链技术随后被用于记录和跟踪这些信息,由于每个节点都有一份分类账的副本,他们可以很容易地引用来解决任何纠纷。
原文11 Ways a Software Development Company Can Use Blockchain Technology,作者:Peter Navarro
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】