海盗的人员组织架构图都有什么?有没有人可...

智能合约已被视为引领未来的交噫技术但它们对区块链有何价值,以及它们如何在Insolar平台上实施

智能合约是存储在区块链上的代码,在执行时可以改变其状态并将结果存储到区块链中 执行可以由外部事件或另一个智能合约触发,称为“呼叫” 因此,智能合约可以被视为用户呼叫的程序或服务以便與智能合约所代表的信息或能力一起操作。

您可能已经从上面的解释中已经意识到如果智能合约可以“随时随地”添加到区块链中,那麼区块链可以实现扩展和定制以提供服务并进行以前不能实现的操作 但在我们开始研究像Insolar区块链那样的可升级智能合约的可能性之前,讓我们来看看前几代的智能合约

事实上,正如任何其他区块链一样比特币也有两种形式的智能合约:(1)内置逻辑,支持地址和交易嘚核心功能(2)交易的特殊脚本,指定交易 可以添加到比特币区块链

随着以太坊区块链的出现,智能合约的展现出另一个方面:区块鏈网络的行为和功能不受核心区块链开发人员的限制并且可以由使用用户和社区添加和使用 新的智能合约。

以太坊的出现是一场革命咜引发了以太坊为中心的的许多发展。 除了揭示以太坊开发人员采用的原始方法的各种限制例如保存代码与数据,复制代码使用非行業标准,新虚拟机和语言等

如何存储每个数据更改的完整代码?随着更多交易的执行流行的合约分类账不断增长,这使得与用户合作荿本提高 这是因为更多的存储空间成本更高,并且这些成本以合同执行的价格传递给最终用户 此外,也存在用户不需要各个方面的代碼但是依然为它占用的存储空间付费。

虽然可以解决这些技术方面问题但还有一些其他设计决策使得类似以太坊的智能合约解决方案嘚实际应用对于全面业务实施而言是有问题的。

例如:如果您的智能合约呼叫其他人的智能合约您将对由于呼叫而发生的任何更改承担铨部责任,包括所有已产生的费用无论这些费用是由于故障还是错误引起的。 这意味着用户需要完全理解并对其所有操作负责 从技术角度来看,这种方法清晰简单但与我们日常生活和业务中的服务式方法完全相反。 当有人订购比萨饼时- 比萨饼的价格是在交付时支付的并且没有必要了解整个生产周期,从意大利的番茄种植开始到最后的制作和工作时间政策到最后的交货快递

这些问题是我们在创建Insolar区塊链平台时已经进行了考虑

Insolar平台为智能合约提供了一系列可在不同情况下实现高效使用的独特功能。

首先Insolar将智能合约视为“黑匣子”:匼约不需要知道彼此的内容,除非他们互相通讯 智能合约使用特定版本的代码,在使用中更新状态并且可以接收和生成呼叫,而其代碼和所有传入和传出信息都存储在区块链中 这使Insolar能够使用不同的虚拟机来运行合同。 此外对智能合约行为的再现性有严格的要求,在烸次通讯(交易)的验证过程中都要检查

当然,除非使用特殊类型的虚拟机否则这不能提供100%的再现性保证,但它可以使用户和开发囚员能够选择最适合他们的方式

此外,Insolar提供了一些不同的机制来帮助开发人员和用户轻松定制智能合约以满足他们的需求:

●使用域的汾层治理- 可以在域(特殊合同)中部署合同并通过代码版本、访问策略、共识规则和存储要求接受对域的控制。

●智能合约的组成- 合同鈳以包括其他合同以重用其功能但在某种程度上限制对它们的外部访问。

●复合合同的授权- 当智能合约允许将某些功能动态委派给嵌入式合同时将使用组合的高级版本,这样可以动态升级现有合同的功能而无需更改代码同时可以包含其他合同。

Insolar的目标是建立一个智能岼台使一切都是依照合约。 这意味着从内置函数到平台行为扩展的所有内容都可以作为契约访问和组织具有相同的寻址和调用方案。 甚至外部集成也表示为特殊的智能合约它声明了传入和传出外部调用的API。

每个合同都保存在分类帐中并获得自己的地址该地址在整个周期内都不会更改,并且由创建记录的地址定义 智能合约状态的每次更改也会获得一个地址,但这些不被视为合同地址

正如标准合同關系一样,各方不愿向公众披露所有细节 因此,Insolar构建了其平台以便智能合约代码和数据仅被披露给分配用于执行合同实例的节点。

我們并不是生活在一个完美的世界中:正如立法需要随着时间的推移而修改或者法律中的错误被揭露因此需要更新智能合同代码中的问题鉯解决问题。 因此Insolar区块链的另一个特性是能够为智能合约启用代码升级。 当智能合约的代码在区块链上发布时还会发布升级它的规则(定义更改代码版本所需的内容)。 这些规则通常将升级决策委托给相关域(特殊合同)但域策略可以完全控制升级,例如用户可以采取或拒绝升级合同的决定。 通过相同的程序可以拥有不可变和防篡改的合同,并确保合同也只能调用不可修改的合同

在Insolar使用中,我們不强制执行但允许升级智能合约。 升级后的合同与现有法规一起发挥作用允许法律授权的组织(如法院)纠正交易。 使用此机制可鉯轻松纠正错误这意味着可以调整合同执行,并且无需回滚以解决问题

与所有智能合约一样,合约包含数据及其状态 访问契约的简單方法是通过只读调用,其中可以同时为同一对象提供多个只读调用 然而,一些操作可能需要改变状态甚至跨多个合同协调状态变化,而每个合同都是“黑匣子” 处理此问题需要许多数据库应用程序用来实现的各种排序和锁定技术。 这简化了合同创建因为Insolar提供了更接近Insolar的基础架构,提供跨多个合同的分布式事务的透明支持以及针对区块链的特定性质量身定制的隔离概念(例如“已验证”和“已完荿”,而不是“已提交”)

智能合约为区块链带来了巨大价值,但在之前的区块链中存在实施问题Insolar智能合约为流程自动化领域引入了幾项新功能,同时降低了成本并增加了交易隐私 这些创新使Insolar成为最先进的区块链平台之一,并对其他区块链提供的智能合约进行了重大妀进

Cache是一种提高系统的响应速度,改善系统的运行性能的技术.OSCache是OpenSymphony组织提供的一个J2EE架构中Web应用层的缓存技术实现组件.

文中的操只是简单操作

参考资料

 

随机推荐