Bitcoin Forum

Local => 媒体 => Topic started by: allwelder on March 08, 2016, 05:05:24 AM



Title: 什么是智能合约
Post by: allwelder on March 08, 2016, 05:05:24 AM
【来源】
Blockchain.hk (http://blockchain.hk/smartcontract/)

http://blockchain.hk/wp-content/uploads/2016/03/1-508_BWahSNyq93ZPf1dipw-e1457411122997-750x410.jpeg

基于区块链的智能合约概念如此火爆,到底什么是智能合约、有什么用途、面临什么实际的问题?

智能合约被认为是使用区块链技术的又一个热门技术,在这个领域内,最著名的初创企业就属Ethereum和Eris Industries了,近期很多媒体也一直在报道相关的新闻。

智能合约其实并不是特别智能,也不是严格意义上的合约。

智能合约是什么

从用户角度来讲,智能合约通常被认为是一个自动担保账户,例如,当特定的条件满足时,程序就会释放和转移资金。

从技术角度来讲,智能合约被认为是网络服务器,只是这些服务器并不是使用IP地址架设在互联网上,而是架设在区块链上。从而可以在其上面运行特定的合约程序。

但是与网络服务器不同的是,所有人都可以看到智能合约,因为这些智能合约的代码和状态都在区块链上(假设区块链是公开的)。而且,与网络服务器不同的是,智能合约不依赖某个特定的硬件设备,事实上,智能合约的代码由所有参与挖矿的设备来执行(这也意味着进入单个合约的算力是有限的,尽管挖矿难度的自动调整会调节这种影响)。

智能合约是编程在区块链上的汇编语言。通常人们不会自己写字节码,但是会从更高级的语言来编译它,例如用Solidity,与Javascript类似的专用语言。这些字节码确实给区块链的功能性提供了指引,因此代码可以很容易与它进行交互,例如转移密码学货币和记录事件。

代码的执行是自动的:要么成功执行,或者所有的状态变化都撤消(包括从当前失败的合约中已经送或接收的信息。)这是很重要的,因为它避免了合约部分执行的情况(例如,在证券购买交易中,证券所有者已经转移发送了证券,但是密码学货币的支付转移却失败了)。在区块链环境中,这尤为重要,因为没有办法来撤消执行错误所带来的不好的后果(而且如果对手不配合的话,根本就没有办法逆转交易)。

智能合约的使用案例

证券登记和清算。合约状态包含了证券所有权的信息。如果登记的证券所有者注意到该合约中证券已经出售给了其他的参与者,其他参与者就会把密码学货币发送到担保账户,然后证券登记信息就会更新,货币就会转发给原来的证券持有者。取决于哪个信息先到达,证券或货币都会保管在一个担保账户中以避免双重使用,当交易取消或过时后,担保也将取消。

银行现有账户。区块链本身已经使用了密码学货币账户,因此这里不需要智能合约。然而,现实生活中的人们想说欧元或美元账户,与上面所讲到的证券登记账户类似。使用合约会存在合约对手风险,正如在现实世界中的任何银行一样。这种风险可以通过对手风险监管来转移,或者通过担保来消除这种风险。


衍生产品、博彩。假设对手同意某个在互联网能够访问的数据源,他们就可以对数据源的价值进行衍生合约或博彩。

预付款和再充值。合约可以和移动SIM卡、预支付电费卡等绑定,当收到密码学货币时,就可以进行充值。

智能合约面临的问题

智能合约目前还处在初级阶段,尚未有任何实质进展。关键问题是信任度的问题,这与影响区块链实施的问题类似:这些系统都设计成了无需信任的环境,这意味着无法改正出现的错误。例如,在区块链中,如果你将货币发送给某个地址,这个操作是无法撤销的。因此,如果你与欺诈者进行交易 – 或者你已经将货币发送到错误的地址中 – 那么金钱损失是无法挽回的。

智能合约能够转移欺诈对手的问题 – 事实上,这就是智能合约设计的原因之一:无论何时,合约都能能够可靠地监控合约中参与方的执行情况,参与方是无法进行欺骗的。

然而,问题并没有解决,只不过是出现在了新的层级:例如,合约可能有漏洞,能够转移证券,但却无法转移货币。

在现实生活中,这些事情可以通过中心化的系统来撤消。但是如果是去中心化的系统,则只能自己承担风险。

同样地,也有欺诈的问题:某人需要设计(编程)合约,在合约设计时就会需要确保没有欺诈的问题。至少参与者要确保:

-高层级(例如Solidity)的代码中需要充分描述合约参与方的目的
-代码中的字节码实际上相当于高层级的代码,需要在进入合约之前进行审核
-合约信息需要很好地理解,以避免出现乌龙指操作(例如,人们用错误的报价方式-例如USD/ERU而不是EUR/USD-这会导致严重损失。

在现实生活中,上述的这些问题原则上都可以在事后进行处理解决,如果需要的话,还可以通过法院,但是在无需信任的工作量证明区块链中这是不可能的:问题是为什么人们想要依赖一个工作量证明系统(背后的原理是浪费大量的能源来挖矿,这样的话攻击这个系统在经济上是不划算的)而不是使用一个中心化运行的公开账本和依赖中心化的权力机构 – 政府、法院等 – 来执行合约。

【参考阅读】

https://docs.erisindustries.com/explainers/smart_contracts/


Title: Re: 什么是智能合约
Post by: ... ... on March 08, 2016, 09:05:53 AM
智能合约需要用户自己编程合约

这对普通用户来说不是一项轻松的工作。


Title: Re: 什么是智能合约
Post by: Blind Legs Parker on March 09, 2016, 05:17:36 AM
目前是沒錯,不是開發人員就很難用到這個功能,但是說不定未來可以實施圖形界面讓一般用戶比較好用?


Title: Re: 什么是智能合约
Post by: allwelder on March 10, 2016, 06:58:26 AM
智能合约需要用户自己编程合约

这对普通用户来说不是一项轻松的工作。
是的,所以其实并不智能


Title: Re: 什么是智能合约
Post by: allwelder on March 10, 2016, 06:59:21 AM
目前是沒錯,不是開發人員就很難用到這個功能,但是說不定未來可以實施圖形界面讓一般用戶比較好用?
应该会有模块化的图形界面,用户只需要使用插入功能就搞定了。


Title: Re: 什么是智能合约
Post by: 7425504 on March 10, 2016, 01:02:11 PM
目前是沒錯,不是開發人員就很難用到這個功能,但是說不定未來可以實施圖形界面讓一般用戶比較好用?
应该会有模块化的图形界面,用户只需要使用插入功能就搞定了。
以太坊太高大上了,图形钱包也是在不久前才推出的。。


Title: Re: 什么是智能合约
Post by: 007eminem on March 10, 2016, 02:48:30 PM
区块链技术真的会改变世界吗?


Title: Re: 什么是智能合约
Post by: ... ... on March 11, 2016, 03:23:06 PM
随着交易的增多,区块所需要的储存空间会越来越多

这也是个问题,人们使用本地钱包会非常不方便


Title: Re: 什么是智能合约
Post by: NewBet on March 20, 2016, 10:25:50 AM
这篇文章看了很多次了,还是看不懂。什么智能合约的?


Title: Re: 什么是智能合约
Post by: kenboy on May 07, 2016, 05:20:32 PM
不需要人工干预的意思吗


Title: Re: 什么是智能合约
Post by: a7594li on May 24, 2016, 09:02:02 AM
不需要人工干预的意思吗
智能合约可以理解为必须执行的电子合同, 自动扣违约金的


Title: Re: 什么是智能合约
Post by: rccs4927032panyi@163.com on June 05, 2016, 10:05:49 AM
现在有很多很多的限制条件,智能合约需要区块链探索者好好研究啊


Title: Re: 什么是智能合约
Post by: rayaodi on June 06, 2016, 01:37:57 AM
感觉以后是个发展点


Title: Re: 什么是智能合约
Post by: yanlap on June 06, 2016, 04:56:54 AM
区块链技术真的会改变世界吗?

這是必須的 未來的重要技術


Title: Re: 什么是智能合约
Post by: Maryewr on June 07, 2016, 04:05:10 PM
只是零零散散的听说智能合约,没有系统的学习,不错,支持


Title: Re: 什么是智能合约
Post by: fanTeC on June 08, 2016, 02:27:52 AM
不是很理解


Title: Re: 什么是智能合约
Post by: wendty on June 08, 2016, 06:11:43 AM
智能合约是未来的突破点。


Title: Re: 什么是智能合约
Post by: ps99729729hai@163.com on June 08, 2016, 09:09:28 AM
最近炒得很火


Title: Re: 什么是智能合约
Post by: zeze0302 on June 09, 2016, 02:24:27 AM
【来源】
Blockchain.hk (http://blockchain.hk/smartcontract/)

http://blockchain.hk/wp-content/uploads/2016/03/1-508_BWahSNyq93ZPf1dipw-e1457411122997-750x410.jpeg

基于区块链的智能合约概念如此火爆,到底什么是智能合约、有什么用途、面临什么实际的问题?

智能合约被认为是使用区块链技术的又一个热门技术,在这个领域内,最著名的初创企业就属Ethereum和Eris Industries了,近期很多媒体也一直在报道相关的新闻。

智能合约其实并不是特别智能,也不是严格意义上的合约。

智能合约是什么

从用户角度来讲,智能合约通常被认为是一个自动担保账户,例如,当特定的条件满足时,程序就会释放和转移资金。

从技术角度来讲,智能合约被认为是网络服务器,只是这些服务器并不是使用IP地址架设在互联网上,而是架设在区块链上。从而可以在其上面运行特定的合约程序。

但是与网络服务器不同的是,所有人都可以看到智能合约,因为这些智能合约的代码和状态都在区块链上(假设区块链是公开的)。而且,与网络服务器不同的是,智能合约不依赖某个特定的硬件设备,事实上,智能合约的代码由所有参与挖矿的设备来执行(这也意味着进入单个合约的算力是有限的,尽管挖矿难度的自动调整会调节这种影响)。

智能合约是编程在区块链上的汇编语言。通常人们不会自己写字节码,但是会从更高级的语言来编译它,例如用Solidity,与Javascript类似的专用语言。这些字节码确实给区块链的功能性提供了指引,因此代码可以很容易与它进行交互,例如转移密码学货币和记录事件。

代码的执行是自动的:要么成功执行,或者所有的状态变化都撤消(包括从当前失败的合约中已经送或接收的信息。)这是很重要的,因为它避免了合约部分执行的情况(例如,在证券购买交易中,证券所有者已经转移发送了证券,但是密码学货币的支付转移却失败了)。在区块链环境中,这尤为重要,因为没有办法来撤消执行错误所带来的不好的后果(而且如果对手不配合的话,根本就没有办法逆转交易)。

智能合约的使用案例

证券登记和清算。合约状态包含了证券所有权的信息。如果登记的证券所有者注意到该合约中证券已经出售给了其他的参与者,其他参与者就会把密码学货币发送到担保账户,然后证券登记信息就会更新,货币就会转发给原来的证券持有者。取决于哪个信息先到达,证券或货币都会保管在一个担保账户中以避免双重使用,当交易取消或过时后,担保也将取消。

银行现有账户。区块链本身已经使用了密码学货币账户,因此这里不需要智能合约。然而,现实生活中的人们想说欧元或美元账户,与上面所讲到的证券登记账户类似。使用合约会存在合约对手风险,正如在现实世界中的任何银行一样。这种风险可以通过对手风险监管来转移,或者通过担保来消除这种风险。


衍生产品、博彩。假设对手同意某个在互联网能够访问的数据源,他们就可以对数据源的价值进行衍生合约或博彩。

预付款和再充值。合约可以和移动SIM卡、预支付电费卡等绑定,当收到密码学货币时,就可以进行充值。

智能合约面临的问题

智能合约目前还处在初级阶段,尚未有任何实质进展。关键问题是信任度的问题,这与影响区块链实施的问题类似:这些系统都设计成了无需信任的环境,这意味着无法改正出现的错误。例如,在区块链中,如果你将货币发送给某个地址,这个操作是无法撤销的。因此,如果你与欺诈者进行交易 – 或者你已经将货币发送到错误的地址中 – 那么金钱损失是无法挽回的。

智能合约能够转移欺诈对手的问题 – 事实上,这就是智能合约设计的原因之一:无论何时,合约都能能够可靠地监控合约中参与方的执行情况,参与方是无法进行欺骗的。

然而,问题并没有解决,只不过是出现在了新的层级:例如,合约可能有漏洞,能够转移证券,但却无法转移货币。

在现实生活中,这些事情可以通过中心化的系统来撤消。但是如果是去中心化的系统,则只能自己承担风险。

同样地,也有欺诈的问题:某人需要设计(编程)合约,在合约设计时就会需要确保没有欺诈的问题。至少参与者要确保:

-高层级(例如Solidity)的代码中需要充分描述合约参与方的目的
-代码中的字节码实际上相当于高层级的代码,需要在进入合约之前进行审核
-合约信息需要很好地理解,以避免出现乌龙指操作(例如,人们用错误的报价方式-例如USD/ERU而不是EUR/USD-这会导致严重损失。

在现实生活中,上述的这些问题原则上都可以在事后进行处理解决,如果需要的话,还可以通过法院,但是在无需信任的工作量证明区块链中这是不可能的:问题是为什么人们想要依赖一个工作量证明系统(背后的原理是浪费大量的能源来挖矿,这样的话攻击这个系统在经济上是不划算的)而不是使用一个中心化运行的公开账本和依赖中心化的权力机构 – 政府、法院等 – 来执行合约。

【参考阅读】

https://docs.erisindustries.com/explainers/smart_contracts/






没怎么看懂。。。


Title: Re: 什么是智能合约
Post by: runningm520 on June 09, 2016, 03:50:21 AM
看来不是我一个人没看懂


Title: Re: 什么是智能合约
Post by: baitanjzcop4282 on June 09, 2016, 10:45:37 AM
没有具体的概念,可以理解为可复制、共享的账本~~


Title: Re: 什么是智能合约
Post by: MargareTT on June 10, 2016, 07:21:15 AM
智能合约是未来的突破点。
突破点,现在已经实现了,看以、LISk等等


Title: Re: 什么是智能合约
Post by: khjpo on June 10, 2016, 10:47:02 AM
如果结合具体实例的话,可能会更好理解点


Title: Re: 什么是智能合约
Post by: Kimbooly on June 11, 2016, 02:46:48 PM
智能合约是未来的突破点。
突破点,现在已经实现了,看以、LISk等等
不是吧,目前以太、LIsk这些还处在画大饼阶段吧,真正突破的东西还没出现吧。


Title: Re: 什么是智能合约
Post by: zcxvp on June 12, 2016, 03:34:41 AM
现在主打的就是只能合约,区块链