比特币使用C语言写的
1. 以太坊是什么
随着区块链技术的创新,一个新的平台诞生了,它就是以太坊。以太坊不像比特币那样只是一种加密货币,它还存在其它特征,使其成为了一个巨大的分布式计算机。
那么,到底什么是以太坊?
具体来说,以太坊(Ethereum)是一个可编程、可视化、更易用的区块链,它允许任何人编写智能合约和发行代币。就像比特币一样,以太坊是去中心化的,由全网共同记账,账本公开透明且不可窜改。
与比特币不同的是,以太坊是可编程的区块链,它提供了一套图灵完备的脚本语言,因此,开发人员可以直接用C语言等高级语言编程,转换成汇编语言,大大降低了区块链应用的开发难度。
为了更易理解,打个比方,以太坊就像是区块链里的Android,它是一个开发平台,让我们可以像基于Android Framework一样基于区块链技术写应用。它上面提供各种模块让用户来搭建应用,如果将搭建应用比作造房子,那么以太坊就提供了墙面、屋顶、地板等模块,用户只需像搭积木一样把房子搭起来,因此在以太坊上建立应用的成本和速度都大大改善。
事实上,在没有以太坊之前,写区块链应用是这样的:拷贝一份比特币代码,然后去改底层代码如加密算法,共识机制,网络协议等等(很多山寨币就是这样,改改就出来一个新币)。
至于以太坊如何运作?
与其它区块链一样,以太坊需要几千人在自己的计算机上运行一个软件,为该网络提供动力。网络中的每个节点(计算机)运行一个叫做以太坊虚拟机(EVM)的软件。如果将以太坊虚拟机想象成一个操作系统,它能理解并执行通过以太坊特定编程语言编写的软件,由以太坊虚拟机执行的软件/应用程序被称为“智能合约”。
不过,在这台计算机上操作并不是免费的,需要支付该网络自带的加密货币,叫做以太币(Ether)。以太币与比特币大致相同,除了一点,即以太币可以为在以太坊上执行智能合约而付费。
回到以太坊的发展史,以太坊的概念首次在2013至2014年间由程序员Vitalik Buterin受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”,在2014年通过ICO众筹开始得以发展。
截至2018年2月,以太币是市值第二高的加密货币,仅次于比特币。
对于许多程序工程师和投资人而言,2015年7月30号这一天是一个大日子,经过18个月的酝酿期后,以太坊区块链平台终于正式诞生了,当天在位于布鲁克林的办公室上午11:45左右,当以太坊区块链产生第一个创世区块,随即有很多狂热的矿工在后头想要赢得第一个区块,也就是以太坊专属电子货币,以太币的所有权。当时整个办公室掌声雷动,那一天天气很糟糕,纽约一带下了大雷雨,每个人的智能手机不时传来嘈杂的洪水警告讯号。
根据该公司网站资料的说明,以太坊是一个去中心化的应用平台,以智能合约为例,设计师可以完全排除死机被监控,被诈骗或者是被第三方横加干预的可能,跟比特币一样,以太坊利用以太币吸引参加者,建立验证交易平台的网络架构,维持网络架构的运作,并且以共识决定哪些是真正发生过存在的事件,但是以太坊和比特币也有所不同,以太坊提供一些功能强大的工具,让投入开发的人创造出去,具有去中心化的软件服务,使用范围可以从线上 游戏 横跨到股票交易。
以太坊的构想源自于2013年,当时才19岁的俄裔加拿大人为例,维塔利克布特林,他当时跟比特币的核心开发者争论,区块链网络架构需要有更稳固的手稿语言才能发展其他的应用软件,不过他的想法没有被采纳,促成了他打定主意要开发一套符合自己理念的区块链网络架构共识,这家公司可以说是他跨出的第一步,在以太坊区块链上推出了应用软件,如果我们把时间往回倒转几年,就会发现一个很有趣的对照。
有位大师托瓦兹推出Linux作业系统的举动,正如布特林推出以太坊一样如出一辙。共识系统公司的联合创始人约瑟夫鲁宾谈到区块链以太坊的兴起时表示,我愈发觉得走上街头去贴海报诉求是很浪费时间的一件事,倒不如一起合作,在这个失衡的 社会 的经济体制带来要比较实际得改变。
跟许多创业者一样,鲁宾提出的愿望也很有企图心,他不只想要创立一家了不起的公司,也想借机克服这个世界上难解的问题。这个公司的应用程序会对十多个其他领域的产业带来震撼力十足的效果,他们的计划包括分布式的三重记账会计体系,针对原本广受好评,但是后来却因为集中管控儿而遭受争议的reddit论坛推出分布式的新版本,自动执行的文件格式进行管理,系统现在叫智能合约,涵盖商务 体育 和 娱乐 领域的预测市场、公开竞标的能源市场、足以和苹果电脑分庭抗礼的一整套可以供大规模协作集体创造,实现无管理阶层公司之共同管理机制的商务工具。
以太坊Ethereum由V神(Vitalik Buterin)在2014年创办,它是一个区块链底层系统,类似于互联网的操作系统,基于它开发的DAPP(去中心化应用)类似于基于互联网操作系统开发的软件APP。
它的出现主要是弥补比特币的不足,比特币只能实现点对点的电子现金交易系统,但是区块链技术在其他场景的应用却无法实现。如果每用于一个场景,就搭建一个底层基础系统,再进行开发,太耗时间和精力,成本也很高。为此,以太坊就建了一个底层系统供开发者使用,开发者只需要在其基础上开发自己的DAPP应用就可以了。去年5月数据显示,全球就已有200多个以太坊应用。
此外,以太坊也是区块链比较优秀的公链之一。不过,它的交易速度太慢令众多开发者诟病,以太坊开发者正在不断尝试研发分片技术对此现象进行改变。
以太坊的本质是一个可编程可视化而且操作简单的区块链,允许任何人编写智能合约和发行代币(这也是为什么市面上各类空气币、传销币如此之多的一个原因之一)。和比特币一样,以太坊也是去中心化的,全网共同记录以太坊的所有情况,而且公开透明不可篡改。
那你想问,以太坊和比特币的不同之处在哪?通俗地讲,你可以把以太坊理解成为能够编程的区块链,它提供了一套图灵完备的脚本语言,后续的开发人员可以直接在这个基础上进行c语言等语言编程,之后转变成汇编语言,由此降低了区块链的应用的开发难度。就好像安卓系统上,准备好了api和接口,用户直接开发app就可以这样的逻辑。从以太坊诞生之初到现在,以太坊上已经诞生了几百个应用,俄罗斯政府甚至也与以太坊基金会合作。
希望我的回答能够帮助你!
在基础层面上,以太坊是基于区块链技术的软件平台。该平台允许构建和部署分散式应用程序。以太坊里的“以太”是什么?对Ethereum感兴趣的人们经常会问“以太是什么?”
了解以太是非常重要的,因为它是以太坊功能的基础。就像所有机器使用某种燃料一样,区块链也是如此。以太坊使用以太网,这是一种独特的代码,可用作支付运行应用程序或程序的方式。就像老虎机需要硬币(或者现在的预付卡)来运行硬币一样,客户必须使用乙醚作为付款才能在以太坊运行他们所要求的操作。
大家其他人的答案真的都是太麻烦了
讲得太复杂了
以太坊
简单来说就是这么一个结论:
以太坊等于 BTC+智能合约+合同自由+通缩资产+使用价值
这个结论其实不难理解的
官方定义更加诡诈:
开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机
以太坊简单来说就是这么一个结论:
以太坊等于 BTC+智能合约+合同自由+通缩资产+使用价值
我给大家简单地来说说吧
首先先来看下面这个视频:也就是以太坊创始人V神的视频 特别好的解释
以太坊简单来说就是这么一个结论:
以太坊等于 BTC+智能合约+合同自由+通缩资产+使用价值
官方定义更加诡诈:
以太坊是一个可编程,可视化的区块链平台。其操作功能非常多,计算汇总各类数据等等。
以太坊是区块链技术的一个质的飞跃!就好比http是互联网底层支撑技术而以太坊就是可以基于以太坊智能合约做各种生态dapp
以太坊是什么?
以太坊是互联网新时代的基础:
内建货币与支付。
用户拥有个人数据主权,且不会被各类应用监听或窃取数据。
人人都有权使用开放金融系统。
基于中立且开源的基础架构,不受任何组织或个人控制。
以太坊的创建以太坊主网于 2015 年上线,是世界领先的可编程区块链。
和其它区块链一样,以太坊也拥有原生加密货币,叫作 Ether (ETH)。 ETH 是一种数字货币, 和比特币有许多相同的功能。 它是一种纯数字货币,可以即时发送给世界上任何地方的任何人。 ETH 的供应不受任何政府或组织控制,它是去中心化且具稀缺性的。 全世界的人们都在使用 ETH 进行支付,或将其作为价值存储和抵押品。
但与其它区块链不同的是,以太坊可以做更多的工作。 以太坊是可编程的,开发者可以用它来构建不同于以往的应用程序。
以太坊的作用这些去中心化的应用程序(或称“dapps”)基于加密货币与区块链技术, 因而值得信任,也就是说 dapps 一旦被“上传”到以太坊,它们将始终按照编好的程序运行。 这些应用程序可以控制数字资产,以便创造新的金融应用; 同时还是去中心化的,这意味着没有任何单一实体或个人可以控制它们。
目前,全世界有成千上万名开发者正在以太坊上构建应用程序、发明新的应用程序,其中有许多现在已经可以使用:
1.加密货币钱包:让你可以使用 ETH 或其他数字资产进行低成本的即时支付
2.金融应用程序:让你可以借贷、投资数字资产
3.去中心化市场:让你可以交易数字资产,甚至就现实世界事件的“预测”进行交易
4. 游戏 :你可以拥有 游戏 内的资产,甚至可以由此获得现实收益以及更多。
以太坊社区以太坊社区是世界上最大最活跃的区块链社区。它包括核心协议开发者、加密经济研究员、密码朋克、挖矿组织、ETH 持有者、应用开发者、普通用户、无政府主义者、财富 500 强公司。
没有公司或中心化的组织能够控制以太坊。 一直以来,以太坊由多元化的全球性社区贡献者来协同进行维护和改善,社区成员耕耘于以太坊的方方面面,从核心协议到应用程序。
以太坊拥堵的元凶找到了,竟然是它!
2. 如何在windows平台下编译比特币bitcoin客户端
你要编译windows版的比特币程序,基本上有两种方法,一种是在linux平台
(推荐ubuntu 13.10)通过交叉编译的方法来编译.另外一种,就是直接在windows平台编译.
我想,你既然要在windows平台使用,我就详细介绍一下如何在windwows平台编译比特币程序.
我的平台:windows7
第一步:安装变编译环境QT和MINGW,msys
1、msys是一个在windows平台模拟shell的程序。
下载安装程序之后,通过安装管理程序,按安装以下内容:
From MinGW installation manager -> All packages -> MSYS
选中以下安装包
msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin
点 apply changes开始安装。他会自动下载安装好。
需要注意的是,确保不要安装msys-gcc和msys-w32api ,因为这两个包和我们的编译系统发生冲突。
很多人出现一些莫名其妙的问题,就是因为这两个包。
2、安装 MinGW-builds
下载并解压缩 i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z 到C盘根目录 C:\
注意我的目录结构。你尽量和我一样。
3、设置PATH环境变量,将C:\mingw32\bin;添加到第一个。
4、在命令行模式下输入 gc -v 会得到以下内容
c:\gcc -v
Using built-in specs.
COLLECT_GCC=c:\mingw32\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.8.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.8.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw482/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev3, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/lib -L/c/mingw482/prerequisites/i686-zlib-static/lib -L/c/mingw482/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.8.2 (i686-posix-dwarf-rev3, Built by MinGW-W64 project)
至此,你的开发环境已经搭建好了,很简单吧
3. 离线生成的比特币地址是如何避免冲突的
BTC的地址生成过程如下,完整的可以查一下比特币中文维基:
比特币地址的生成过程
(说明: 有些数字以"0x"开头,意思是此数字使用十六进制表示法。"0x"本身没有任何含义,它是C语言流传下来的,约定俗成的写法,比如0xA就是十进制的10。另外,1个字节 = 8位二进制 = 2位十六进制)。
第一步,随机选取一个32字节的数、大小介于1 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141之间,作为私钥。
第二步,使用椭圆曲线加密算法(ECDSA-secp256k1)计算私钥所对应的非压缩公钥。 (共65字节, 1字节 0x04, 32字节为x坐标,32字节为y坐标)关于公钥压缩、非压缩的问题另文说明。
第三步,计算公钥的 SHA-256 哈希值
第四步,取上一步结果,计算 RIPEMD-160 哈希值
第五步,取上一步结果,前面加入地址版本号(比特币主网版本号“0x00”)
00
第六步,取上一步结果,计算 SHA-256 哈希值
第七步,取上一步结果,再计算一下 SHA-256 哈希值(哈哈)
第八步,取上一步结果的前4个字节(8位十六进制)
D61967F6
第九步,把这4个字节加在第五步的结果后面,作为校验(这就是比特币地址的16进制形态)。
00D61967F6
第十步,用base58表示法变换一下地址(这就是最常见的比特币地址形态)。
4. 比特币谁发明的
比特币(BitCoin)的概念最初由中本聪在2009年提出,根据中本聪的思路设计发布的开源软件以及建构其上的P2P网络。比特币是一种P2P形式的数字货币。点对点的传输意味着一个去中心化的支付系统。
与大多数货币不同,比特币不依靠特定货币机构发行,它依据特定算法,通过大量的计算产生,比特币经济使用整个P2P网络中众多节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学的设计来确保货币流通各个环节安全性。P2P的去中心化特性与算法本身可以确保无法通过大量制造比特币来人为操控币值。基于密码学的设计可以使比特币只能被真实的拥有者转移或支付。这同样确保了货币所有权与流通交易的匿名性。比特币与其他虚拟货币最大的不同,是其总数量非常有限,具有极强的稀缺性。该货币系统曾在4年内只有不超过1050万个,之后的总数量将被永久限制在2100万个。
比特币可以用来兑现,可以兑换成大多数国家的货币。使用者可以用比特币购买一些虚拟物品,比如网络 游戏 当中的衣服、帽子、装备等,只要有人接受,也可以使用比特币购买现实生活当中的物品。[1][2]
西维吉尼亚州民主党参议员乔·曼钦(Joe Manchin)2014年2月26日向美国联邦政府多个监管部门发出公开信,希望有关机构能够就比特币鼓励非法活动和扰乱金融秩序的现状予以重视,并要求能尽快采取行动,以全面封杀该电子货币。[3]
2017年1月24日中午12:00起,中国三大比特币平台正式开始收取交易费。[4]
中文名
比特币
外文名
Bitcoin
种类
电子货币
流通平台
网络
概念创始人
中本聪
发展历程 听语音
2008年爆发全球金融危机,当时有人用“中本聪”的化名发表了一篇论文,描述了比特币的模式。
共2张
比特币
和法定货币相比,比特币没有一个集中的发行方,而是由网络节点的计算生成,谁都有可能参与制造比特币,而且可以全世界流通,可以在任意一台接入互联网的电脑上买卖,不管身处何方,任何人都可以挖掘、购买、出售或收取比特币,并且在交易过程中外人无法辨认用户身份信息。[2]2009年,不受央行和任何金融机构控制的比特币诞生。[2]比特币是一种“电子货币”,由计算机生成的一串串复杂代码组成,新比特币通过预设的程序制造,随着比特币总量的增加,新币制造的速度减慢,直到2014年达到2100万个的总量上限,被挖出的比特币总量已经超过1200万个。[2]
每当比特币进入主流媒体的视野时,主流媒体总会请一些主流经济学家分析一下比特币。早先,这些分析总是集中在比特币是不是骗局。而现如今的分析总是集中在比特币能否成为未来的主流货币。而这其中争论的焦点又往往集中在比特币的通缩特性上。[5]
不少比特币玩家是被比特币的不能随意增发所吸引的。和比特币玩家的态度截然相反,经济学家们对比特币2100万固定总量的态度两极分化。[6]
凯恩斯学派的经济学家们认为政府应该积极调控货币总量,用货币政策的松紧来为经济适时的加油或者刹车。因此,他们认为比特币固定总量货币牺牲了可调控性,而且更糟糕的是将不可避免地导致通货紧缩,进而伤害整体经济。奥地利学派经济学家们的观点却截然相反,他们认为政府对货币的干预越少越好,货币总量的固定导致的通缩并没什么大不了的,甚至是 社会 进步的标志。
比特币网络通过“挖矿”来生成新的比特币。所谓“挖矿”实质上是用计算机解决一项复杂的数学问题,来保证比特币网络分布式记账系统的一致性。比特币网络会自动调整数学问题的难度,让整个网络约每10分钟得到一个合格答案。随后比特币网络会新生成一定量的比特币作为赏金,奖励获得答案的人。
2009年比特币诞生的时候,每笔赏金是50个比特币。诞生10分钟后,第一批50个比特币生成了,而此时的货币总量就是50。随后比特币就以约每10分钟50个的速度增长。当总量达到1050万时(2100万的50%),赏金减半为25个。当总量达到1575万(新产出525万,即1050的50%)时,赏金再减半为12.5个。[7]
首先,根据其设计原理,比特币的总量会持续增长,直至100多年后达到2100万的那一天。但比特币货币总量后期增长的速度会非常缓慢。事实上,87.5%的比特币都将在头12年内被“挖”出来。所以从货币总量上看,比特币并不会达到固定量,其货币总量实质上是会不断膨胀的,尽管速度越来越慢。因此看起来比特币似乎是通胀货币才对。
然而判断处于通货紧缩还是膨胀,并不依据货币总量是减少还是增多,而是看整体物价水平是下跌还是上涨。整体物价上升即为通货膨胀,反之则为通货紧缩。长期看来,比特币的发行机制决定了它的货币总量增长速度将远低于 社会 财富的增长速度。
凯恩斯学派的经济学家们认为,物价持续下跌会让人们倾向于推迟消费,因为同样一块钱明天就能买到更多的东西。消费意愿的降低又进一步导致了需求萎缩、商品滞销,使物价变得更低,步入“通缩螺旋”的恶性循环。同样,通缩货币哪怕不存入银行本身也能升值(购买力越来越强),人们的投资意愿也会升高, 社会 生产也会陷入低迷。[5]因此比特币是一种具备通缩倾向的货币。比特币经济体中,以比特币定价的商品价格将会持续下跌。[1]
比特币是一种网络虚拟货币,数量有限,但是可以用来套现:可以兑换成大多数国家的货币。你可以使用比特币购买一些虚拟的物品,比如网络 游戏 当中的衣服、帽子、装备等,只要有人接受,你也可以使用比特币购买现实生活当中的物品。[1][1]
2014年9月9日,美国电商巨头eBay宣布,该公司旗下支付处理子公司Braintree将开始接受比特币支付。该公司已与比特币交易平台Coinbase达成合作,开始接受这种相对较新的支付手段。
虽然eBay市场交易平台和PayPal业务还不接受比特币支付,但旅行房屋租赁社区Airbnb和租车服务Uber等Braintree客户将可开始接受这种虚拟货币。Braintree的主要业务是面向企业提供支付处理软件,该公司在去年被eBay以大约8亿美元的价格收购。
2017年1月22日晚间,火币网、比特币中国与OKCoin币行相继在各自官网发布公告称,为进一步抑制投机,防止价格剧烈波动,各平台将于2017年1月24日中午12:00起开始收取交易服务费,服务费按成交金额的0.2%固定费率收取,且主动成交和被动成交费率一致。[4]5月5日,OKCoin币行网的最新数据显示,比特币的价格刚刚再度刷新 历史 ,截止发稿前最高触及9222点高位。[8]
创始人物 听语音
2008年11月1日,一个自称中本聪(Satoshi Nakamoto)的人在一个隐秘的密码学评论组上贴出了一篇研讨陈述,陈述了他对电子货币的新设想——比特币就此面世,比特币的首笔交易完成。比特币用揭露散布总账摆脱了第三方机构的制约,中本聪称之为“区域链”。用户乐于奉献出CPU的运算能力,运转一个特别的软件来做一名“挖矿工”,这会构成一个网络共同来保持“区域链”。这个过程中,他们也会生成新货币。买卖也在这个网络上延伸,运转这个软件的电脑真相破解不可逆暗码难题,这些难题包含好几个买卖数据。第一个处理难题的“矿工”会得到50比特币奖赏,相关买卖区域加入链条。跟着“矿工”数量的添加,每个迷题的艰难程度也随之进步,这使每个买卖区的比特币生产率保持约在10分钟一枚。
京都大学数学教授望月新一
2009年,中本聪设计出了一种数字货币,即比特币,风风火火的比特币市场起了又落,而其创始人“中本聪”的身份一直都是个谜,关于“比特币之父”的传闻牵涉到从美国国家安全局到金融专家,也给比特币罩上了神秘光环。
据外媒报道称,计算机科学家TedNelson周日在网络上发布视频称,他已经确定出,比特币的创始人是京都大学数学教授望月新一(ShinichiMochizuki)。比特币的创始人一直以来使用的都是中本聪(SatoshiNakamoto)的假名,互联网领域也对其真实身份展开了大量推测。纳尔逊发布视频称,他已确定望月新一就是比特币的真正创始人。[9]
望月新一2013年因为证明ABC猜想而名声大噪。他高中时就读于菲利普埃克塞特学院,后者是美国最具声望的高中之一,仅仅两年后就毕业。望月新一16岁进入美国普林斯顿大学,22岁时以博士身份离校,33岁就成为正教授,这么年轻就获得正教授职称在学术界极为罕见。这个数学界的巨星可能已经攻破了该领域最为重要的难题之一。
中本聪本人在互联网上留下的个人资料很少,尤其是近几年几乎完全销声匿迹,因此其身世也变成了一个迷。2014年3月7日,当比特币创始人多利安·P·中本聪被找到的新闻传出后,迅速成为互联网上最吸引人的消息。
与外界揣测其可能是个虚构的名字不同,“中本聪”是个真实的名字,他是一名64岁的日裔美国人,他喜欢收集火车模型,曾供职大企业和美国军方,从事机密工作。在过去的40年中,中本聪从不在生活中用他的真名。根据美国洛杉矶地方法院1973年的档案,在他23岁从加州州立理工大学毕业时,将自己的名字改为了多利安·普伦蒂斯·中本聪(DorianPrenticeSatoshiNakamoto)。从那时起,他不再使用“聪”这个名字,而用多利安·中本S(DorianS.Nakamoto)作为签名。[9]
产生原理 听语音
从比特币的本质说起,比特币的本质其实就是一堆复杂算法所生成的特解。特解是指方程组所能得到无限个(其实比特币是有限个)解中的一组。而每一个特解都能解开方程并且是唯一的。[10]以人民币来比喻的话,比特币就是人民币的序列号,你知道了某张钞票上的序列号,你就拥有了这张钞票。而挖矿的过程就是通过庞大的计算量不断的去寻求这个方程组的特解,这个方程组被设计成了只有 2100 万个特解,所以比特币的上限就是 2100 万。[10]
疯狂涨势
要挖掘比特币可以下载专用的比特币运算工具,然后注册各种合作网站,把注册来的用户名和密码填入计算程序中,再点击运算就正式开始。[11]完成Bitcoin客户端安装后,可以直接获得一个Bitcoin地址,当别人付钱的时候,只需要自己把地址贴给别人,就能通过同样的客户端进行付款。在安装好比特币客户端后,它将会分配一个私有密钥和一个公开密钥。需要备份你包含私有密钥的钱包数据,才能保证财产不丢失。如果不幸完全格式化硬盘,个人的比特币将会完全丢失。
货币特征 听语音
去中心化:比特币是第一种分布式的虚拟货币,整个网络由用户构成,没有中央银行。去中心化是比特币安全与自由的保证 。
全世界流通:比特币可以在任意一台接入互联网的电脑上管理。不管身处何方,任何人都可以挖掘、购买、出售或收取比特币。
专属所有权:操控比特币需要私钥,它可以被隔离保存在任何存储介质。除了用户自己之外无人可以获取。
低交易费用:可以免费汇出比特币,但最终对每笔交易将收取约1比特分的交易费以确保交易更快执行。
无隐藏成本:作为由A到B的支付手段,比特币没有繁琐的额度与手续限制。知道对方比特币地址就可以进行支付。
跨平台挖掘:用户可以在众多平台上发掘不同硬件的计算能力。
优点
完全去处中心化,没有发行机构,也就不可能操纵发行数量。其发行与流通,是通过开源的p2p算法实现。
匿名、免税、免监管。
健壮性。比特币完全依赖p2p网络,无发行中心,所以外部无法关闭它。比特币价格可能波动、崩盘,多国政府可能宣布它非法,但比特币和比特币庞大的p2p网络不会消失。
无国界、跨境。跨国汇款,会经过层层外汇管制机构,而且交易记录会被多方记录在案。但如果用比特币交易,直接输入数字地址,点一下鼠标,等待p2p网络确认交易后,大量资金就过去了。不经过任何管控机构,也不会留下任何跨境交易记录。
山寨者难于生存。由于比特币算法是完全开源的,谁都可以下载到源码,修改些参数,重新编译下,就能创造一种新的p2p货币。但这些山寨货币很脆弱,极易遭到51%攻击。任何个人或组织,只要控制一种p2p货币网络51%的运算能力,就可以随意操纵交易、币值,这会对p2p货币构成毁灭性打击。很多山寨币,就是死在了这一环节上。而比特币网络已经足够健壮,想要控制比特币网络51%的运算力,所需要的cpu/gpu数量将是一个天文数字。
缺点
交易平台的脆弱性。比特币网络很健壮,但比特币交易平台很脆弱。交易平台通常是一个网站,而网站会遭到黑客攻击,或者遭到主管部门的关闭。
交易确认时间长。比特币钱包初次安装时,会消耗大量时间下载 历史 交易数据块。而比特币交易时,为了确认数据准确性,会消耗一些时间,与p2p网络进行交互,得到全网确认后,交易才算完成。
价格波动极大。由于大量炒家介入,导致比特币兑换现金的价格如过山车一般起伏。使得比特币更适合投机,而不是匿名交易。
大众对原理不理解,以及传统金融从业人员的抵制。活跃网民了解p2p网络的原理,知道比特币无法人为操纵和控制。但大众并不理解,很多人甚至无法分清比特币和Q币的区别。“没有发行者”是比特币的优点,但在传统金融从业人员看来,“没有发行者”的货币毫无价值。[12]
货币交易 听语音
购买方法
用户可以买到比特币,同时还可以使用计算机依照算法进行大量的运算来“开采”比特币。在用户“开采”比特币时,需要用电脑搜寻64位的数字就行,然后通过反复解谜密与其他淘金者相互竞争,为比特币网络提供所需的数字,如果用户的电脑成功地创造出一组数字,那么就将会获得25个比特币。
由于比特币系统采用了分散化编程,所以在每10分钟内只能获得25个比特币,而到2140年,流通的比特币上限将会达到2100万。换句话说,比特币系统是能够实现自给自足的,通过编码来抵御通胀,并防止他人对这些代码进行破坏。
交易方式
比特币是类似电子邮件的电子现金,交易双方需要类似电子邮箱的“比特币钱包”和类似电邮地址的“比特币地址”。和收发电子邮件一样,汇款方通过电脑或智能手机,按收款方地址将比特币直接付给对方。下列表格,列出了免费下载比特币钱包和地址的部分网站。
比特币地址是大约33位长的、由字母和数字构成的一串字符,总是由1或者3开头,例如""。比特币软件可以自动生成地址,生成地址时也不需要联网交换信息,可以离线进行[2]。可用的比特币地址超过2个。形象地说,全世界约有2粒沙, 如果每一粒沙中有一个地球,那么比特币地址总数远远超过所有这些“地球”上的所有的沙子的数量。
比特币地址和私钥是成对出现的,他们的关系就像银行卡号和密码。比特币地址就像银行卡号一样用来记录你在该地址上存有多少比特币。你可以随意的生成比特币地址来存放比特币。每个比特币地址在生成时,都会有一个相对应的该地址的私钥被生成出来。这个私钥可以证明你对该地址上的比特币具有所有权。我们可以简单的把比特币地址理解成为银行卡号,该地址的私钥理解成为所对应银行卡号的密码。只有你在知道银行密码的情况下才能使用银行卡号上的钱。所以,在使用比特币钱包时请保存好你的地址和私钥。
比特币的交易数据被打包到一个“数据块”或“区块”(block)中后,交易就算初步确认了。当区块链接到前一个区块之后,交易会得到进一步的确认。在连续得到6个区块确认之后,这笔交易基本上就不可逆转地得到确认了。比特币对等网络将所有的交易 历史 都储存在“区块链”(blockchain)中。区块链在持续延长,而且新区块一旦加入到区块链中,就不会再被移走。区块链实际上是一群分散的用户端节点,并由所有参与者组成的分布式数据库,是对所有比特币交易 历史 的记录 。 中本聪预计,当数据量增大之后,用户端希望这些数据并不全部储存自己的节点中。为了实现这一目标,他采用引入散列函数机制。这样用户端将能够自动剔除掉那些自己永远用不到的部分,比方说极为早期的一些比特币交易记录。
消费方式
许多面向 科技 玩家的网站,已经开始接受比特币交易。包括Mtgox,BTCChina之类的网站,以及淘宝某些商店,甚至能接受比特币兑换美元、欧元等服务。毫无疑问,比特币已经成为真正的流通货币,而非腾讯Q币那样的虚拟货币。国外已经有专门的比特币第三方支付公司,类似国内的支付宝,可以提供API接口服务。
可以用钱来买比特币,也可以当采矿者,“开采”它们用电脑搜寻64位的数字就行。通过用电脑反复解密,与其他的淘金者竞争,为比特币网络提供所需的数字。如果电脑能够成功地创造出一组数字,就会获得25个比特币。比特币是分散化的,需要在每个单位计算时间内创造固定数量比特币是每10分钟内可获得25个比特币。到2140年,流通的比特币上限将达到2100万。换句话说,比特币体制是可以自给自足的,译成编码可抵御通胀,防止他人搞破坏。
支付案例
在被投资者疯狂追逐的同时,比特币已经在现实中被个别商家接受。北京一家餐馆开启了比特币支付。这家位于朝阳大悦城的餐馆称,该店从2013年11月底开始接受比特币支付。消费者在用餐结束时,把一定数量的比特币转账到该店账户,即可完成支付,整个过程类似于银行转账。该餐馆曾以0.13个比特币结算了一笔650元的餐费。[13]
2014年1月,Overstock开始接受比特币,成为首家接受比特币的大型网络零售商。[14]
比特币是由中本聪创造的,(几乎可以肯定)是一个化名,迄今为止,还没有人能够确切地将比特币与一个真实的人或一群人联系起来。中本聪于2011年从互联网上消失,几乎没有留下他们可能是谁的线索。多年来,许多人都公开宣称自己是Satoshi,但都没有以无可争议的事实支持这一说法。
在一个早期的比特币论坛上,Satoshi说他们在2007年开始研究比特币,比第一个区块被开采早了两年。2009年1月3日,比特币区块链的第一个区块——创世纪区块被开采。中本聪是创世纪区块的开采者,收到了第一批投入流通的50枚比特币。然而,第一个方块的奖励是无法支付的,因为在代码中创世纪方块的表达方式有点奇怪。BitMEX研究发表了一份对比特币早期开采的分析,并得出结论认为“有人”开采了70万枚比特币。尽管许多人认为这是Satoshi,但官方仍未证实。
人们只能想象,如果他们的身份被曝光,中本聪会获得什么样的名声,更不用说他们将收集的巨额财富了(尽管佐藤似乎没有花掉他们应该开采的任何硬币)。随着时间的推移,已经有很多人声称自己是Satoshi,而其他人则被强加了这种说法。
虚假索赔
声称自己是Satoshi的最著名的例子之一是克雷格·赖特,澳大利亚学者。早在2015年,莱特就多次试图向公众展示他是比特币发明者的无可争议的证据,但直到今天他都没有成功。事实上,他的“证据”被证明是伪造的。
为什么Satoshi必须匿名
中本聪,世界上第一个分散货币的创造者,可以说应该保持匿名,因为他们创造的本质。在创建了一个没有失败中心点的协议之后,中本聪可能已经意识到,保持匿名可能会消除比特币可能存在的最后一个失败中心点:创建它的人。去除可能与比特币的出现相关联的单一身份,就去除了任何可能影响比特币社区的政治、规则或决策的单一面孔。
不管Satoshi是谁,他们无疑是我们这个时代的天才。比特币协议在所有合适的地方提供了经济激励,为拜占庭将军的问题提供了一个特殊的解决方案。中本聪运用密码学、数学、博弈论和经济学的概念,创造了一种设计精美的——也是世界上第一种——数字稀缺资产——比特币。
比特币的发明者是一位日本人,名叫中本聪,在2009年1月3日,世界上第一批比特币诞生, 数字货币也正式诞生,数字货币直到2013年年底价格才飞速上涨,从前期的10美元左右一下涨高到九百多美元,在2016年,比特币热度才真正起来,价格一路飙升,被称为“数字黄金”。 比特币为什么这么值钱呢?
1、挖矿难度大,比特币挖矿需要进行特定的运算,运算时间成本很高,前期的物质投入也非常大。
2、比特币带有货币属性以及被市场信任,比特币的加密算法难以破解,保证了其唯一性。
3、比特币交易市场透明度高,市场价格都是公开透明的,在虚拟数字货中流通和交易方便快捷。
4、有一些国家的认可,国家对比特币,数字货币出台的一些政策无疑都会刺激比特币价格上涨。
物以稀为贵,比特币比较稀有,目前比较币的开采难度很高,供求关系的影响,市场上供不应求的局面等等,这些无疑对价格上涨产生了很大作用。对于在交易平台购买比特币赚取差价的朋友需要谨慎。
比特币是一种P2P形式的数字货币。点对点的传输意味着一个去中心化的支付系统。在2009年由日本人中本聪提出比特币这一概念,比特币从始发到现在价格已经高的难以想象,比特币为什么那么值钱了?
下面来简单的说说。
比特币挖矿机通过运行一种特殊的程序,运行结束后就可以获得类似任务奖励的比特币。现在比特币的产量是很低的,每天大约产出3600个新币,数量有限;比特币挖矿价格高,自从比特币火热后,专业挖矿机从价格低的一万元左右,现在价格贵的超过三十万,前期设备投入就需要很大财力;挖矿时间长,比特币挖矿就是经过特定的复杂运算,消耗额时间非常长;比特币挖矿机消耗大,除了有自身的损耗以外,还会消耗大量用电,特币全球挖矿机日耗电量可达1.88亿千瓦时,相当于中国日发电量的百分之一。比特币数量目前还在不断增加,有机构评估,在2019年比特币挖矿耗电量将会超过美国的耗电量。
比特币的价格一直都是媒体比较关系的,这里提醒大家,比特币价格涨的快,下落也会很快,风险高,想要购买比特币赚钱的朋友一定要谨慎加入。
沉寂多日的比特币借“勒索”病毒卷土重来,并开启似曾相识的暴走模式。这种被称作“数字黄金”的虚拟货币,8年间暴涨300万倍,连中国大妈都进场了。有人认为这是一个击鼓传花式的 游戏 ,有人坚信比特币会成为稀缺资产,更有人说它会是在 历史 长河中闪光的一个节点,而多数人不求甚解,只是惊叹于又一轮的财富大爆发。
爱必投认为究竟是谁创造了比特币?关于比特币的发明者一直没有定论,普遍的说法是日本人“中本聪”(Satoshi Nakamoto)。2009年1月3日,世界上第一批比特币被“挖”出,这种由一个代号为“中本聪”的人设计的数字货币正式诞生,而自那一刻起已有15个人先后被怀疑是“中本聪”。2014年美国权威媒体揭露,本名为“中本聪”的日裔美国物理学家,就是传说的“比特币之父”,但这位老教授坚决否认。图为罕见现身的中本聪被媒体围攻,不断遮挡镜头,并否认与比特币存在任何联系。
2016年5月,澳大利亚工程师、企业家克雷格·怀特(Craig Wright)公开表明他就是比特币的创造者——中本聪。但仅过了几天,怀特本人就“投降”了,发表道歉信称“拿不出关键证据”证明自己。尽管中本聪被提名为2016年诺贝尔经济学奖候选人,但他的真实面纱还未被完全揭开。图片:BBC (来自:腾讯图片)
而跟比特币扯上关系后,克雷格·怀特就被警方盯住了。图为澳大利亚联邦警方与税务人员搜查了怀特的住所与办公地点,后者的比特币相关业务存在税务方面问题。据媒体报道,神秘人物“中本聪”手握100多万个比特币,按照目前每个15000元人民币来算,他的身价超过150亿人民币。而按照最初的严格设计,比特币的总量被限制在2100万枚,目前已有1400万枚左右被开采出来。图片:路透社
中本聪,不知他真身
5. 比特币如何算出来的
要想了解bitcoin的技术原理,首先需要了解两个重要的密码技术: HASH码:将一个长字符串转换成固定长度的字符串,并且其转换不可逆,即不太可能从HASH码猜出原字符串。bitcoin协议里使用的主要是SHA256。
公钥体系:对应一个公钥和私钥,在应用中自己保留私钥,并公开公钥。当甲向乙传递信息时,可使用甲的私钥加密信息,乙可用甲的公钥进行解密,这样可确保第三方无法冒充甲发送信息;同时,甲向乙传递信息时,用乙的公钥加密后发给乙,乙再用自己的私钥进行解密,这样可确保第三者无法偷听两人之间的通信。最常见的公钥体系为RSA,但bitcoin协议里使用的是lliptic Curve Digital Signature Algorithm。 和现金、银行账户的区别? bitcoin为电子货币,单位为BTC。在这篇文章里也用来指代整个bitcoin系统。 和在银行开立账户一样,bitcoin里的对应概念为地址。每个人都可以有1个或若干个bitcoin地址,该地址用来付账和收钱。每个地址都是一串以1开头的字符串,比如我有两个bitcoin账户,和。一个bitcoin账户由一对公钥和私钥唯一确定,要保存账户,只需要保存好私钥文件即可。 和银行账户不一样的地方在于,银行会保存所有的交易记录和维护各个账户的账面余额,而bitcoin的交易记录则由整个P2P网络通过事先约定的协议共同维护。 我的账户地址里到底有多少钱? 虽然使用bitcoin的软件可以看到当前账户的余额,但和银行不一样,并没有一个地方维护每个地址的账面余额。它只能通过所有历史交易记录去实时推算账户余额。 我如何付账? 当我从地址A向对方的地址B付账时,付账额为e,此时双方将向各个网络节点公告交易信息,告诉地址A向地址B付账,付账额为e。为了防止有第三方伪造该交易信息,该交易信息将使用地址A的私钥进行加密,此时接受到该交易信息的网络节点可以使用地址A的公钥进行验证该交易信息的确由A发出。当然交易软件会帮我们做这些事情,我们只需要在软件中输入相关参数即可。 网络节点后收到交易信息后会做什么? 这个是整个bitcoin系统里最重要的部分,需要详细阐述。为了简单起见,这里只使用目前已经实现的bitcoin协议,在当前版本中,每个网络节点都会通过同步保存所有的交易信息。 历史上发生过的所有交易信息分为两类,一类为"验证过"的交易信息,即已经被验证过的交易信息,它保存在一连串的“blocks”里面。每个"block"的信息为前一个"bock"的ID(每个block的ID为该block的HASH码的HASH码)和新增的交易信息(参见一个实际的block)。另外一类指那些还"未验证"的交易信息,上面刚刚付账的交易信息就属于此类。 当一个网络节点接收到新的未验证的交易信息之后(可能不止一条),由于该节点保存了历史上所有的交易信息,它可以推算中在当时每个地址的账面余额,从而可以推算出该交易信息是否有效,即付款的账户里是否有足够余额。在剔除掉无效的交易信息后,它首先取出最后一个"block"的ID,然后将这些未验证的交易信息和该ID组合在一起,再加上一个验证码,形成一个新的“block”。 上面构建一个新的block需要大量的计算工作,因为它需要计算验证码,使得上面的组合成为一个block,即该block的HASH码的HASH码的前若干位为1。目前需要前13位为1(大致如此,不确定具体方式),此意味着如果通过枚举法生成block的话,平均枚举次数为16^13次。使用CPU资源生成block被称为“挖金矿”,因为生产该block将得到一定的奖励,该奖励信息已经被包含在这个block里面。 当一个网络节点生成一个新的block时,它将广播给其它的网络节点。但这个网络block并不一定会被网络接受,因为有可能有别的网络节点更早生产出了block,只有最早产生的那个block或者后续block最多的那个block有效,其余block不再作为下一个block的初始block。 对方如何确认支付成功? 当该笔支付信息分发到网络节点后,网络节点开始计算该交易是否有效(即账户余额是否足够支付),并试图生成包含该笔交易信息的blocks。当累计有6个blocks(1个直接blocks和5个后续blocks)包含该笔交易信息时,该交易信息被认为“验证过”,从而该交易被正式确认,对方可确认支付成功。 一个可能的问题为,我将地址A里面的余额都支付给地址B,同时又支付给地址C,如果只验证单比交易都是有效的。此时,我的作弊的方式为在真相大白之前产生6个仅包括B的block发给B,以及产生6个仅包含C的block发给C。由于我产生block所需要的CPU时间非常长,与全网络相比,我这样作弊成功的概率微乎其微。 网络节点生产block的动机是什么? 从上面描述可以看出,为了让交易信息有效,需要网络节点生成1个和5个后续block包含该交易信息,并且这样的block生成非常耗费CPU。那怎么样让其它网络节点尽快帮忙生产block呢?答案很简单,协议规定对生产出block的地址奖励BTC,以及交易双方承诺的手续费。目前生产出一个block的奖励为50BTC,未来每隔四年减半,比如2013年到2016年之间奖励为25BTC。 交易是匿名的吗? 是,也不是。所有BITCOIN的交易都是可见的,我们可以查到每个账户的所有交易记录,比如我的。但与银行货币体系不一样的地方在于,每个人的账户本身是匿名的,并且每个人可以开很多个账户。总的说来,所谓的匿名性没有宣称的那么好。 但bitcoin用来做黑市交易的还有一个好处,它无法冻结。即便警方追踪到了某个bitcoin地址,除非根据网络地址追踪到交易所使用的电脑,否则还是毫无办法。 如何保证bitcoin不贬值? 一般来说,在交易活动相当的情况下,货币的价值反比于货币的发行量。不像传统货币市场,央行可以决定货币发行量,bitcoin里没有一个中央的发行机构。只有通过生产block,才能获得一定数量的BTC货币。所以bitcoin货币新增量决定于: 1、生产block的速度:bitcoin的协议里规定了生产block的难度固定在平均2016个每两个星期,大约10分钟生产一个。CPU速度每18个月速度加倍的摩尔定律,并不会加快生产block的速度。 2、生产block的奖励数量:目前每生产一个block奖励50BTC,每四年减半,2013年开始奖励25BTC,2017年开始奖励额为12.5BTC。 综合上面两个因素,bitcoin货币发行速度并不由网络节点中任何单个节点所控制,其协议使得货币的存量是事先已知的,并且最高存量只有2100万BTC
6. 区块链技术入门,涉及哪些编程语言
Go语言
Go语言(Golang)是谷歌2009年推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂亏芦嫌性。谷歌首席软件工程师罗布派克(Rob Pike)说:“我们之所以开发Go,是因为过去10多年间软件开发的难度令人沮丧。”
除比特币是由C开发以外,目前最主流坊的客户端均有go语言开发,足以可见Go语言在整个哗岁区块链行业的地位。
C
C 进一步扩充销手和完善了 C 语言,是一种面向对象的程序设计语言。C 可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。C是一种使用十分广泛的计算机程序设计语言。它是一种通用程序设计语言,支持多重编程模式,例如过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计和设计模式等。
大多数的区块链企业都选择用C编写区块链的底层,最著名的有比特币、ripple等,主要体现的是强计算性。
Java
Java不同于一般的编译语言或解释型语言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。而区块链项目的开发,对Java有着明显的依赖性。
其他的还有Python、系统架构、以太坊、Linux、hyperledger、JavaScript等都会有涉及。
7. 比特币是什么请通俗的解释一下讲一下它的历史
说说我的理解:有个人发明了一个方程(算法?),这个方程有2100万个解,于是根据这个方程发展出一个游戏,就是谁找到了这个方程的一个解,就给这个人一个叫“比特币”的奖励品。于是很多人开始玩这个游戏(无聊?)。最开始,使用一般的CPU进行运算很快就能找出这个方程的一些解,比如说玩家A说我找到了解a1,于是A向所有参与游戏的人询问“你们找到a1这个解了吗?”于是所有人都带着a1这个解去验证,并查询自己是否已经计算过了a1,如果都没有人对“a1是这个方程的一个解”提出异议,并且没有人在A之前找到了a1,那么很幸运,A将获得一个比特币。当这个游戏参与的玩家越来越多,被找到的解也就越来越多,想要快速发现新的解就需要更强大的运算力,而解方程的过程涉及大量的浮点运算,传统CPU已经无法满足这种高精度的浮点运算,于是主要的运算任务交给了更擅长浮点运算的GPU进行(发展到后来就是专业挖矿机)。本来这是一堆极客玩的游戏,但是某些银行家发现了比特币的货币特性,于是开始用真实流通的货币去购买比特币,使比特币与金融货币挂钩,于是比特币逐渐得开始拥有货币的属性并拥有一定的价值(因为有人愿意用美元买比特币)。总结一个比特币是一个方程的2100万个解的其中一个,有人愿意用美元或是其他货币去兑换比特币,那么比特币是有价值的,如果没有人愿意拿货币兑换比特币了,比特币就毫无价值。