区块链核心技术:拜占庭共识算法之PBFT

区块链核心技术:拜占庭共识算法之PBFT

PBFT是Practical Byzantine Fault Tolerance的缩写,意为实用拜占庭容错算法。该算法是Miguel Castro (卡斯特罗)和Barbara Liskov(利斯科夫)在1999年提出来的,解决了原始拜占庭容错算法效率不高的问题,将算法复杂度由指数级降低到多项式级,使得拜占庭容错算法在实际系统应用中变得可行。该论文发表在1999年的操作系统设计与实现国际会议上(OSDI99)。没错,这个Loskov就是提出著名的里氏替换原则(LSP)的人,2008年图灵奖得主。

摘要部分

OSDI99这篇论文描述了一种副本复制(replication)算法解决拜占庭容错问题。 READ MORE

如何正确使用HD Wallets

如何正确使用HD Wallets

HD Wallets:扩展性树型钱包(hierarchical deterministic wallets)

参考地址:https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

原理简介:

  1. 生成HD Wallets钱包的时候除了会生成主私钥(master private key)和主公钥(master public key),还会生成一个chain code

  2. 利用 master private key + chain code可以得到指定的子私钥(sub private key);

  3. 利用 master public key + chain code可以得到指定的子公钥(sub-public key);
    READ MORE

解决Ubuntu server中文乱码问题

解决Ubuntu server中文乱码问题

1}. 查看当前的locale设置,输入
locale -a
显示(不懂什么意思):

C
POSIC

2}. 用文本编辑器(我用的是vim)编辑/var/lib/locales/supported.d/local,如果文件不存在则新建。在文件中加入下面2行:

READ MORE

SSL/TLS 协议运行机制的概述

SSL/TLS 协议运行机制的概述

互联网的通信安全,建立在SSL/TLS协议之上。

本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运行过程,不涉及具体的实现细节。如果想了解这方面的内容,请参阅RFC文档

作用

不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。

  1. 窃听风险(eavesdropping):第三方可以获知通信内容。
  2. 篡改风险(tampering):第三方可以修改通信内容。
  3. 冒充风险(pretending):第三方可以冒充他人身份参与通信。

READ MORE