1. Blockchain transaction performance

    There are several key areas that will affect the performance of blockchain, includes p2p network communication, the efficiency of encryption and decryption, consensus mechanism, transaction verification mechanism and so on. ### Peer to Peer Network Commuication Normally, Peer to Peer network are mainly unstructed with no specific topology. If someone want to send a transaction to another person. The blockchain such as Bitcoin or Ethereum is peer to peer network. How will the transaction get to the rest of the blockchain community? Think of it like how gossip would spread. There are a bunch of people (nodes), and when one of them knows something, they tell it to the few others(8~128 nodes) that they are closed to (peer nodes). Then those people tell a few more people the message that was told to them, and then… Eventually everyone knows about the original information (transaction).

    2017/12/07 ethereum blockchain

  2. Git

    2017/11/20

  3. template page

    Content here

    2017/11/19 cate1 cate2

  4. 数据证书、CA、CA证书

    什么是数字证书

    2017/11/19 blockchain

  5. 以太坊之账户

    账户 以太坊,有两种账户类型:外部账户和合约账户。我们这里重点讲一下外部账户,以下会简称为账户。合约账户简称为合约, 在合约章节具体讨论。 账户内容与以太坊类似包括: nonce: 是一个计数器用于确保每笔交易只被处理一次 balance: 账户当前余额 codehash:the hash of account’s code , 合约代码hash. 默认为EmptySHA3 storageroot:state DB 存储空间

    2017/11/19 ethereum

  6. bcos之节点间通讯

    节点(node)只是一个词。在不同的系统有不同的意思,并不是所有的区块链乃至p2p网络里面提到的节点都是一个东西。 这里我们从p2p网络通讯到区块链,再到bcos区块链系统来看这个节点间通讯问题。 p2p的节点 什么是对等网络(P2P)技术?P2P技术属于覆盖层网络(Overlay Network)的范畴。好吧,覆盖层网络又是什么鬼?简单说来覆盖网络就是应用层网络,它是面向应用层的,不考虑或很少考虑网络层,物理层的问题。详细说来,覆盖网络是指建立在另一个网络上的网络。该网络中的结点可以看作通过虚拟或逻辑链路而连接起来的。虽然在底层有很多条物理链路,但是这些虚拟或逻辑链路都与路径一一对应。P2P网络之所以是覆盖网络,因为它运行在互联网的上层。覆盖网络允许对没有IP地址标识的目的主机路由信息,例如:Freenet 和DHT(分布式哈希表)可以路由信息到一个存储特定文件的结点,而这个结点的IP地址事先并不知道。后面会提到p2p的discover技术。 P2P网络有3种比较流行的组织结构,被应用在不同的P2P应用中。 (1)DHT结构    分布式哈希表(DHT)是一种功能强大的工具,它的提出引起了学术界一股研究DHT的热潮。虽然DHT具有各种各样的实现方式,但是具有共同的特征,即都是一个环行拓扑结构,在这个结构里每个节点具有一个唯一的节点标识(ID),节点ID是一个128位的哈希值。每个节点都在路由表里保存了其他前驱、后继节点的ID。通过这些路由信息,可以方便地找到其他节点。这种结构多用于文件共享和作为底层结构用于流媒体传输。 (2)树形结构 树形结构。在这种结构中,所有的节点都被组织在一棵树中,树根只有子节点,树叶只有父节点,其他节点既有子节点也有父节点。信息的流向沿着树枝流动。最初的树形结构多用于P2P流媒体直播。 (3)网状结构     网状结构所示,又叫无结构。顾名思义,这种结构中,所有的节点无规则地连在一起,没有稳定的关系,没有父子关系。网状结构为P2P提供了最大的容忍性、动态适应性,在流媒体直播和点播应用中取得了极大的成功。当网络变得很大时,常常会引入超级节点的概念,超级节点可以和任何一种以上结构结合起来组成新的结构,如KaZaA。    p2p网络具有很强的动态性。网络中的节点同时充当了客户机和服务器两种角色,并且网络节点可以任意的加入和退出。p2p网络的应用可以很好的解决C/S架构下应用的单点故障,易受攻击性和扩展性问题。    所以p2p网络上的节点是 区块链系统的节点    区块链是指这个分布式数据库的技术,包括这个区块链数据结构,底层的p2p网络,以及共识算法。所以,一般谈区块链就是区块链系统,它跟上面的p2p网络节点有类似的地方但是又不太一样。区块链是个分布式系统,系统里有很多节点,这些节点你可以单纯地理解为通过互联网相连的电脑或者服务器。根据区块链性质的不同,成为节点的方式也不同,以比特币这种区块链为例,比较早期,认为参与交易和挖矿,才算是节点。然而,在现在的比特币里,矿工,完全节点,轻量节点,甚至普通用户,在不同的语境下都可能被称为节点。

    2017/11/19 bcos p2p

  7. bcos之节点数据下载

    bcos节点入网以后,与peer端建立session,然后初始化BlockChainSync,并运行如下状态机,进行节点数据下载: NotSynced, ///< Initial chain sync has not started yet Idle, ///< Initial chain sync complete. Waiting for new packets Waiting, ///< Block downloading paused. Waiting for block queue to process blocks and free space Blocks, ///< Downloading blocks State, ///< Downloading state NewBlocks, ///< Downloading blocks learned from NewHashes packet

    2017/11/19 bcos p2p

  8. bcos之系统合约

    bcos的系统合约分为如下几部分。

    2017/11/19 bcos contract