退休的神

指尖不一定可以改变世界,但可以改变生活


  • 首页

  • 归档

  • 标签

区块链挖矿算法清单

发表于 2018-02-28   |   分类于 区块链技术   |     |   阅读次数
在这里我会分享读论文心得和笔记,欢迎大家一同探讨

下面是区块链挖矿算法清单,里面涉及的论文后续会不定期阅读不稳定分享。

SHA-256


介绍:SHA代表安全散列算法,SHA-256是由NSA设计的SHA-2加密散列函数的成员。加密散列函数是对数字数据运行的数学运算,通过将所计算的“散列”与已知的散列值进行比较,人们可以确定数据的完整性。 单向散列可以从任意数据生成,但不能从散列生成数据。在比特币等多个区块链应用中的多个环节被使用。

论文:Optimizing SHA256 in Bitcoin Mining

应用:Bitcoin(BTC)、BitcoinCash(BCH)、Peercoin(PPC)、Zetacoin(ZET)、Universal(UNIT)、Deutsche eMark(DEM)、AUR-SHA(AUR)、DGB-SHA(DGB)

阅读全文 »

Hyperledger Fabric 容器部署以及chaincode测试(BYFN)

发表于 2017-11-18   |   分类于 区块链技术   |     |   阅读次数

准备工作

我是在Mac笔记本上完成的一下操作,其他平台类似。在部署fabric之前需要为电脑安装一下几个软件:

Docker 可以从小鲸鱼官网下载桌面版安装,很方面启动、停止、重启docker服务。安装并启动后可在控制台使用 docker --version 命令测试是否正常。此次安装还自动添加了一个docker的工具docker-compose,这个工具在fabric的部署中会用到,同样可以使用 docker-compose --version来检查是否安装正常。

目前fabric主要支持两种语言Go和NodeJS, 这两个语言的安装及配置可以参看Go programing language 和 Node.js

Hyperledger Fabric Samples是由官方给出的一个示例集合,包含好几个不同拓扑结构的fabric样例以及不同功能的chaincode源码,为我们学习的提供了很好的参考。获取方式

1
git clone -b master https://github.com/hyperledger/fabric-samples.git

最后一步准备工作是需要下载Fabric平台所需的binaries文件,包括cryptogen,configtxgen,configtxlator, 和peer这些工具不仅可以配合Samples使用,还可以提供很多方便强大的功能有机会在介绍,下载方式:

1
curl -sSL https://goo.gl/fMh2s3 | bash
阅读全文 »

hyperledger是什么

发表于 2017-07-18   |   分类于 区块链技术   |     |   阅读次数

HyperLedger

Hyperledger(超级账本)是一个为了促进跨行业发展的的开源区块链技术。由Linux基金会主导,汇集了金融、银行、物联网、供应链、制造和技术多个领域及行业。
Hyperledger 孵化并推广了一系列区块链技术,包括分布式账本框架,
智能合约引擎,客户端库,图形接口,使用程序库和示例应用程序。Hyperledger总体的策略是鼓励重用常见的模块并实现DLT组件的快速创新。
(官网:Hyperledger.org)

阅读全文 »

基于条件熵的聚类评估方法Homogeneity和Completeness

发表于 2017-04-07   |   分类于 数学   |     |   阅读次数

信息熵 (Entropy)

1948年香农(Claude Shannon)在“通信的数学原理”中提出了信息上的概念。实质上是使用比特(Bit)来度量信息量,在计算中一个字节是8个比特。信息量的比特数和所有可能情况的对数函数log有关,例如一个事情有32中情况那么他的信息熵为log32 = 5。

一般,由于不同情况的发生概率不相同的所以香农指出准确的信息量H的计算公式参考下面信息熵的定义。

信息熵的定义如下:
$$ H(X) = -\sum_{x\in{X}}P(x)logP(x) $$

阅读全文 »

比特币白皮书Calculations解读

发表于 2017-03-24   |   分类于 区块链技术   |     |   阅读次数

今天给别人分享比特币白皮书时才发现,第11小结Calculations部分当时并没有仔细理解消化,中间还有很多知识点值得仔细研究,虽然现在还是有几处没有吃透的地方,但先记录下来希望大家讨论解决。

首先先附上原文片段

We consider the scenario of an attacker trying to generate an alternate chain faster than the honest chain. Even if this is accomplished, it does not throw the system open to arbitrary changes, such as creating value out of thin air or taking money that never belonged to the attacker. Nodes are not going to accept an invalid transaction as payment, and honest nodes will never accept a block containing them. An attacker can only try to change one of his own transactions to take back money he recently spent.

The race between the honest chain and an attacker chain can be characterized as a Binomial Random Walk. The success event is the honest chain being extended by one block, increasing its lead by +1, and the failure event is the attacker’s chain being extended by one block, reducing the gap by -1.

The probability of an attacker catching up from a given deficit is analogous to a Gambler’s Ruin problem. Suppose a gambler with unlimited credit starts at a deficit and plays potentially an infinite number of trials to try to reach breakeven. We can calculate the probability he ever reaches breakeven, or that an attacker ever catches up with the honest chain, as follows [8]:

p = probability an honest node finds the next block

q = probability the attacker finds the next block

\(q_z\)= probability the attacker will ever catch up from z blocks behind

阅读全文 »

实现访问Bitcoin核心的JSON-RPC接口

发表于 2017-02-07   |   分类于 区块链技术   |     |   阅读次数

万事开头难啊,经历了几天的反复试错和各种尝试终于成功实现了JSON-RPC接口,获取Bitcoin的数据。可以开开心心的获取数据进行分析研究了,下面记录一下我的心路历程。

比特币开发者的 API

首先明确我的目是要获取Bitcoin区块链中的数据。一开始理所当然的想,会不会有第三方的接口可以直接调取,得到这些数据呢?这非常符合一个程序员的思维(其实就是懒)。于是我找到了 blockchain.info,果然里面提供了丰富的获取区块链数据的工具:

阅读全文 »

Bitcoin源码阅读笔记二

发表于 2017-01-11   |   分类于 区块链技术   |     |   阅读次数

bitcoinj core篇

AbstractBlockChain.java

弄懂这个抽象类实现的功能对源码的理解非常重要,因为他是bitcoinj主要使用的7大对象之一。AbstractBlockChain的实现需要BlockStore存储所有数据、SPVBlockStore存储在SPV模式下的轻量数据、Block是组成链的必要数据结构、连接Wallet帮助其接收交易数据和通知。AbstractBlockChain有两个子类:BlockChain是一个非常简单的子类,实现了简易的交易验证,帮助SPV模式下的节点高效率的校验header信息而不校验完成的信息,这一点对推广移动应用非常有价值。FullPrunedBlockChain联合FullPrunedBlockStore实现了对block的完整校验。

阅读全文 »

Bitcoinj源码阅读笔记一

发表于 2017-01-05   |   分类于 区块链技术   |     |   阅读次数

bitcoinj core篇

Monetary.java

这是一个接口类,实现此接口代表是一个货币,例如比特币。接口中包含int smallestUnitExponet()(最小分割单元,通常是8)、long getValue()、int sigum()。

Coin.java

这是一个实现了Monetary接口的final类。 定义了不同大小的比特币:ZERO、CENT、MILLICOIN、MICROCOIN、SATOSHI、FIFTY_COIN、NEGATIVE_SATOSHI。定义了价值的加减乘除运算方法。

阅读全文 »

加密货币第一课作业Scrooge Coin

发表于 2016-12-29   |   分类于 区块链技术   |     |   阅读次数

比特币和数字货币技术
https://www.coursera.org/learn/cryptocurrency/。

奴才币(ScroogeCoin)中奴才的指定实体将负责公布包含所有发生过的交易历史记录和仅曾账目(append-only ledger)。我们将需要实现奴才处理交易维护账簿的逻辑。奴才可以建立一个区块链,对于区块链奴才需要进行数字签名,因此,形成一系列都包含多笔交易的区块。奴才将会收到多笔交易,并验证交易合法性返回正确的交易。

阅读全文 »

Numerai和Polychain

发表于 2016-12-17   |   分类于 投资笔记   |     |   阅读次数

原文地址:http://avc.com/2016/12/numerai-and-polychain/
翻译:兔子精

Union Square Ventures(USV) 最近投资了两家对冲基金管理公司,你也许会猜想我们是不是开始远离VC投资业务了。但是其实不是,我们在寻找新方式去投资科技项目,比如AI,加密技术和区块链。

上星期公布了USV领投Polychain Capital新的一轮融资,这家公司是投资数字货币的新型基金。这段时间到处都在讨论数字货币。我们确实想通过投资数字货币直接投资到区块链协议中去,但VC投资的方式无法让我们投资到每一种货币中,所以我们认为这类基金会是比较好的投资标的。

阅读全文 »
12
Demontf

Demontf

码代码、码论文、学英语

14 日志
4 分类
9 标签
weibo CSDN github
友情链接
  • funqc
© 2015 - 2018 Demontf
由 Hexo 强力驱动
主题 - NexT.Mist