区块链---练习题

问题1:为什么要有stateRoot?

stateRoot是用于记录状态树根节点的哈希值,stateRoot方便节点间状态的互相验证,保证在交易的每个区块的所有节点的状态是一致的。

问题2:nonce值有什么用?

区块中的nonce值:用于挖矿,决定挖矿的难度
交易中的nonce值:

  1. 确认交易顺序
  2. 防止双花
  3. 撤销pending中的交易
  4. 确定生成的合约地址

问题3:Hyperledger Fabric的特点,和Composer的关系?

Hyperledger Fabric的特点:

  1. 面向企业的分布式账本平台、引入权限管理,设计上支持可插拔,可扩展,是首个面向联盟链的开源项目
  2. 基于go语言实现的
  3. 是私有的,而且是被许可的,也就是参与该组织的成员需要通过注册之后才能够参与该网络
  4. 提供了创建通道的能力,允许一组参与者创建一个单独的共同维护的交易账本
    与Composer的关系:
  5. Composer是一个协同工具,用以创建区块链的业务网络,加速智能合约及其跨分布式账本部署的发展
  6. Composer是基于Fabric来实现的,在Fabric的基础上实现了一系列的接口,加快Fabric项目的开发和部署的一个官方工具。

问题4:联盟链智能合约 和 中心账本的区别?

  1. 联盟链智能合约是去中心化与中心化的结合:联盟链是针对某个特定的群体的成员和第三方,内部指定多个预选节点为记账人,每个块的生成由所有的预选节点所决定,而中心账本则是有第三方关系交易,这个第三方必须具有公平可靠的特点,同时所有的交易记录都是记录在这第三方中的数据中,容易发生篡改或者丢失
  2. 智能合约具有事件驱动,自动执行等特点,而中心化账本则出错难以溯源,大额交易不可靠等现象。

你可能感兴趣的:(区块链)