什么是智能合约

智能合约是区块链技术的核心,以太坊提供了Solidity语言来编写和部署这些自动执行的合约。智能合约具备透明性、简单性和不变性,广泛应用于金融应用程序。以太坊网络中的账户分为外部拥有的账户(EOA)和合约账户,后者不能自行实例化,只能响应接收到的交易。
摘要由CSDN通过智能技术生成

定义:

        智能合约是区块链开发领域存在的主要原因。

        以太坊在 2013 年的核心创新是允许开发人员编写称为智能合约的小代码块,这些代码可以部署到以太坊网络,独立于其创建者运行。在以太坊中,智能合约是用 Solidity 编写的,这是一种设计用于在以太坊虚拟机上运行的高级编程语言。

Introduction · GitBookhttps://cypherpunks-core.github.io/ethereumbook/

        智能合约是定义一组规则或“合约”的程序,当用户在区块链上调用时,它会自动执行编码规则。特别是,一旦部署了智能合约,它的功能总是相同的——它不能被不法分子修改或控制。

        因此,智能合约是运行金融应用程序的理想选择——它们可以作为独立参与者以有保证的、可重复的方式接收或发送加密货币。

特性:

  • 透明度:智能合约发布到区块链,任何有权访问区块链的人都可以读写。
  • 简单性:由于智能合约部署到区块链上的成本很高,并且包含指示金融交易流程的敏感逻辑,因此它们往往比大多数代码库更小更简单。
  • 不变性:一旦部署了智能合约,它(通常)就不能被修改,并且无论何时调用都保证其功能相同!这使得智能合约可以作为可靠、受信任的第三方运行——因为没有个人控制智能合约,它可以充当金融中介、值得信赖的自动化做市商,或者通过保证公正性而发挥更多作用。

        部署后,这些智能合约表现为完全透明但可以包含复杂逻辑的独立参与者。因此,在以太坊上拥有账户的不仅是人类用户,还有两种类型的账户:

  • 由人类用户管理的外部拥有的帐户(EOA)。
  • 由其底层智能合约代码管理的合约账户。

两个账户地址

  1. 账户地址EOA:address 相当于身份证号,代表着合法性唯一性(一般20字节,160bit)

      2.合约地址:部署在以太坊合约的地址

        (可以比较) 合约地址 > 账户地址;

EOA 和合约账户有什么区别?

这两种类型的帐户可以做基本相同的事情!这两种账户类型都可以:

  • 接收或发送可替代代币(以太币)到任何账户
  • 接收或发送不可替代的代币(加密猫)到任何账户
  • 触发另一个合约账户——允许一个智能合约运行其他智能合约。
  • 生成新的智能合约——让智能合约充当合约工厂!

但是,合约账户有一些限制:

  • 合约账户不能自行实例化操作——它们只能响应他们收到的交易(通常来自 EOA)。
  • 合约账户完全由其代码控制,而 EOA 则由其关联的私钥控制。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值