<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Blockchain on 涯余的博客</title><link>https://hangyan.github.io/tags/blockchain/</link><description>Recent content in Blockchain on 涯余的博客</description><generator>Hugo</generator><language>zh</language><managingEditor>hang.yan@hotmail.com (涯余)</managingEditor><webMaster>hang.yan@hotmail.com (涯余)</webMaster><lastBuildDate>Tue, 22 Aug 2017 00:00:00 +0000</lastBuildDate><atom:link href="https://hangyan.github.io/tags/blockchain/index.xml" rel="self" type="application/rss+xml"/><item><title>Namecoin</title><link>https://hangyan.github.io/post/2017-08-22-namecoin/</link><pubDate>Tue, 22 Aug 2017 00:00:00 +0000</pubDate><author>hang.yan@hotmail.com (涯余)</author><guid>https://hangyan.github.io/post/2017-08-22-namecoin/</guid><description>&lt;!-- toc --&gt;
&lt;p&gt;互联网到今日已经越来越趋向于中心化，用户的隐私安全以及大公司的行为也日渐引起担忧。去中心化网络是一个应对此问题的重要思想，blockchian,bitcoin,tor 等都是一些具体的技术探索，很多已经有了越来越大的影响力。Namecoin 也是其中的一个。&lt;/p&gt;
&lt;p&gt;Namecoin 想要解决的是目前 DNS 存在的一些问题。中央机构控制的 DNS 很容易因为各种原因受到干扰，用户的利益和隐私容易受到侵犯。Namecoin 借助于 bitcoin 的思想，构建了一个去中心化的 DNS 系统。&lt;/p&gt;
&lt;h1 id="zookos-triangle"&gt;Zooko&amp;rsquo;s triangle&lt;/h1&gt;
&lt;p&gt;&lt;img loading="lazy" src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Zooko%27s_Triangle.svg/440px-Zooko%27s_Triangle.svg.png"&gt;&lt;/p&gt;
&lt;p&gt;类似于分布式系统中的 CAP 理论。类似 DNS 这样的协议，我们期望它具有的三个特性很难满足: 安全,可读性好,去中心化。目前的最常用的 DNS 系统不满足去中心化。DNSSec 对现有的 DNS 做了一些安全性的增强，但仍然是中心化的。&lt;code&gt;.onion&lt;/code&gt;和&lt;code&gt;bitcoin&lt;/code&gt;是去中心化的和安全的，但是可读性很差等等。&lt;/p&gt;
&lt;p&gt;Namecoin 是满足上面要求的一个系统。（&lt;code&gt;Aaron Swartz&lt;/code&gt;曾经提出过这样的设计思路)&lt;/p&gt;
&lt;h1 id="namecoin"&gt;Namecoin&lt;/h1&gt;
&lt;p&gt;Namecoin 基于 BitCoin,本身就是在 Bitcoin 的代码上实现的(大概做了 400 多行改动)。挖矿的方式跟 bitcoin 一样，只是用的是不同的 block chain.二者的目的不同,bitcoin 主要还是为了成为一种货币系统，Namecoin 是为了成为一种命名系统。所以二者的关注点不同，blockchain 分开也是最合理的。二者有一些不同的规则：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;namecoin 要求名字的唯一性(域名)，而 bitcoin 不要求&lt;/li&gt;
&lt;li&gt;经济交易以及域名注册使用的货币大小不一样，block size 设的不一样更好&lt;/li&gt;
&lt;li&gt;通货膨胀对 bitcoin 的影响很大，namecoin 则不一样。&lt;/li&gt;
&lt;li&gt;namcoin 中，注册域名需要花钱,但这些货币会被销毁(0.01NMC).因为是去中心化的系统，没有收费的中央系统。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Namecoin 里的数据主要分为两种 domain name 和 NameID&lt;/p&gt;
&lt;h2 id="domain"&gt;Domain&lt;/h2&gt;
&lt;p&gt;Domain 的格式类似于:&lt;/p&gt;</description></item><item><title>Blockchain</title><link>https://hangyan.github.io/post/2017-08-12-blockchain/</link><pubDate>Sat, 12 Aug 2017 21:37:39 +0800</pubDate><author>hang.yan@hotmail.com (涯余)</author><guid>https://hangyan.github.io/post/2017-08-12-blockchain/</guid><description>&lt;!-- toc --&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e4%bb%8b%e7%bb%8d"&gt;介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e5%8c%ba%e5%9d%97%e7%bb%93%e6%9e%84"&gt;区块结构&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e5%a4%b4%e7%bb%93%e6%9e%84"&gt;头结构&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e5%8c%ba%e5%9d%97%e7%bb%93%e6%9e%84-1"&gt;区块结构&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e5%88%9b%e4%b8%96%e5%8c%ba%e5%9d%97"&gt;创世区块&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e5%88%86%e5%8f%89"&gt;分叉&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#proof-of-work%e5%b7%a5%e4%bd%9c%e9%87%8f%e8%af%81%e6%98%8e"&gt;Proof-of-work(工作量证明)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#%e9%82%ae%e4%bb%b6-header"&gt;邮件 Header&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#bitcoin"&gt;Bitcoin&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hangyan.github.io/post/2017-08-12-blockchain/#ref"&gt;REF&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- tocstop --&gt;
&lt;h1 id="介绍"&gt;介绍&lt;/h1&gt;
&lt;p&gt;区块链是由一串使用密码学方法产生的数据块组成的，每一个区块都包含了上一个区块的哈希值(hash),从创始区块(genesis block)开始连接到当前区块，形成块链(类似数据结构中的链表).每一个区块都确保按照时间顺序在上一个区块之后产生，否则前一个区块的哈希值是未知的。&lt;/p&gt;
&lt;p&gt;其优势在于:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;完全分布式的，无中心节点(单点故障)&lt;/li&gt;
&lt;li&gt;任何节点都可以创建交易。在经过一段时间的确认之后，就可以合理地确认该交易是否有效。&lt;/li&gt;
&lt;li&gt;修改交易记录的成本非常高&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;区块链也是比特币等技术的基础。它也是一种非常重要的新思想，促使人们对现有的网络,社会,经济等进行重新思考。&lt;/p&gt;
&lt;h1 id="区块结构"&gt;区块结构&lt;/h1&gt;
&lt;h2 id="头结构"&gt;头结构&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;大小(bytes)&lt;/th&gt;
&lt;th&gt;字段&lt;/th&gt;
&lt;th&gt;描述&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;版本&lt;/td&gt;
&lt;td&gt;版本号&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;父区块哈希值&lt;/td&gt;
&lt;td&gt;引用区块链中父区块的哈希值&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;merkle 根&lt;/td&gt;
&lt;td&gt;该区块交易的 merkle 树根的哈希值&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;时间戳&lt;/td&gt;
&lt;td&gt;该区块产生的近似时间(精确到秒的 unix 时间戳)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;难度目标&lt;/td&gt;
&lt;td&gt;该区块工作量证明算法的难度目标&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Nonce&lt;/td&gt;
&lt;td&gt;用于工作量证明算法的计数器&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="区块结构-1"&gt;区块结构&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;大小(bytes)&lt;/th&gt;
&lt;th&gt;字段&lt;/th&gt;
&lt;th&gt;描述&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;区块大小&lt;/td&gt;
&lt;td&gt;该字段之后的区块大小&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;80&lt;/td&gt;
&lt;td&gt;区块头&lt;/td&gt;
&lt;td&gt;区块头结构 (上面的大小之和)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1-9&lt;/td&gt;
&lt;td&gt;可变整交易计数器&lt;/td&gt;
&lt;td&gt;交易的数量&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;可变&lt;/td&gt;
&lt;td&gt;交易&lt;/td&gt;
&lt;td&gt;记录在区块里的交易信息&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="创世区块"&gt;创世区块&lt;/h2&gt;
&lt;p&gt;比特币区块链的第一个区块，创建于 2009 年，我们称之为创世区块。它是比特币区块链里所有区块的共同祖先，这意味着你从任一区块，循链向后回溯，最终都将到达创世区块。每一个节点都“知道”创世区块的哈希值、结构、被创建的时间和里面的一个交易。因此，每个节点都把该区块作为区块链的首区块，从而构建了一个安全的、可信的区块链的根。&lt;/p&gt;</description></item></channel></rss>