zoukankan      html  css  js  c++  java
  • 关于区块链

    最近看了一本关于区块链的书,主要是从区块链的起源和原理以及区块链的应用上对区块链进行了介绍,看完后整理记录一下一些关于区块链相关概念的笔记:
     
    一、区块链四大特色:(P102)
    1.去中心化;
    2.去信任;
    3.集体维护;
    4.可靠的数据库;
     
    二、区块链发展遇到的问题和最后解决方案:
    1.凭什么帮你记账--记账最快的,能得到奖励,也就是提成(例如比特币的挖矿);
    2.分叉问题听谁的--增加记账规则的复杂度;
    3.双花的问题--6次确认后不可逆转(确认时间较长,不存在同时完成确认的情况)
     
    三、区块链的核心概念:
    1.区块--区块头三组元数据,索引自父区块哈希值的数据;挖矿难度、Nonce、时间戳;merkle树根;
    2.哈希算法--是区块链中保证交易信息不被篡改的单项密码机制。两个特点:
    1)加密过程不可逆;
    2)输入的明文与输出的散列数据一一对应;
    3.公钥和私钥
    1)信息发送者:用私钥对信息进行签名,使用信息接收方的公钥对信息加密;
    2)信息接收方:用信息发送者的公钥验证信息发送者的身份,使用私钥对加密信息解密;
    4.时间戳;
    5.merkle树结构--区块链利用merkle树的数据结构存放所有叶子节点的值,并以此为基础生成一个统一的哈希值;
     
    四、区块链的模型架构:(区块链的基础架构分6层)
    1.数据层--主要描述区块链技术的物理形式;
    2.网络层--主要实现区块链网络中节点之间的信息交流;
    3.共识层--能让高度分散的节点在去中心化的系统中高效的针对区块数据的有效性达成共识。区块链中比较常用的共识机制主要有工作量证明、权益证明和股份授权证明;
    4.激励层--主要功能是提供一定的激励措施,鼓励节点参与区块链的安全验证工作;
    5.合约层--主要是指各种脚本代码、算法机制以及智能合约等;
    6.应用层--封装区块链的各种应用场景和案例;
     
    五、区块链的基本类型:
    1.公有链--任何人都可读取、任何人都能发送交易且交易能获得有效确认、任何人都能参与共识过程的区块链;
    2.私有链--指其写入权限仅在一个组织手里的区块链,目的是对读取权限或者对外开放权限进行限制;
    3.联盟链--指其共识过程收到预选节点控制的区块链;
     
    六、共识机制:(p119)
    1.工作量证明;
    2.权益证明;
    3.股份授权证明;
    4.投注共识;
    5.瑞波共识机制;
    6.Pool验证池;
    7.实用拜占庭容错;
    8.授权拜占庭容错;
    9.帕克索斯算法;
     
    七、智能合约三大条件:
    1.必须有货币参与;
    2.资产必须数字化;
    3.资产必须联网且绝对信任某个数据库;
  • 相关阅读:
    LeetCode: Binary Tree Zigzag Level Order Traversal
    LeetCode: Binary Tree Level Order Traversal II
    LeetCode: Climbing Stairs
    LeetCode: Binary Tree Inorder Traversal
    windows下利用xdebug和WinCacheGrind优化PHP代码(转)
    15个你未知的 Chrome 浏览器杀手级应用(转)
    【转】PHP技巧汇总:提高PHP性能的53个技巧
    21个实用PHP代码
    PHP魔术函数集锦
    介绍9个很有发展潜力的PHP开源项目
  • 原文地址:https://www.cnblogs.com/JHblogs/p/8529659.html
Copyright © 2011-2022 走看看