比特币

比特币系统的原理概述(入门级)

谁说胖子不能爱 提交于 2019-11-28 19:39:14
比特币系统 比特币系统 比特币私钥和地址 比特币钱包 神奇的账本——区块链 记账单比赛——挖矿 比特币网络 比特币私钥和地址 在比特币系统中:账号密码= 私钥 (取值范围为0~ 2 256 2 256 //--> )、账号= 地址 比特币系统会依赖外界的各种随机性,随机产生一个256位的二进制串作为私钥,并且私钥可以根据不同的编码方式有不同的表示。 私钥和地址之间是一一对应的,一个私钥只能对应一个地址。只要私钥确定,地址就是唯一确定的,这类似于现实世界中开了一张银行卡,账号和密码一一对应 比特币钱包 钱包的第一个功能 管理私钥——地址对:钱包可以根据用户给定的私钥或随机产生一个私钥,再根据特定的算法来产生对应的地址 钱包的第二个功能 管理账本:钱包并不一定需要联网,只需要在用户花钱或同步账本的时候,将钱包接入到比特币系统中,钱包会自动从其他拥有账本的钱包中导入账本 保存所有交易记录的钱包称为比特币网络中的全节点(保存了完整版的账本) 钱包的分类 钱包的安全 神奇的账本——区块链 比特币系统每十分钟中左右会生成一个账本包裹,该包裹中包含了本时间段内发生的所有交易记录,然后将其串联在账本链上。每个账本包裹称为一个区块,整条账本链称为区块链。 实际系统中的区块: 记账单比赛——挖矿 挖矿的主要工作就是准确记录该时间段内的所有交易记录,并将其打包,挂到区块链上。最后还要解答一个特殊的竞赛题

1.5 比特币架构详解

随声附和 提交于 2019-11-28 19:37:54
• 比特币前端 ○ 钱包 :钱包保存用户私钥,管理用户余额,提供比特币交易(支付,转账)功能 § 分类 □ 决定性钱包:决定性指私钥是否由种子生成 □ 非决定性钱包:直接保存私钥,私钥都保存在DB上面 ® 非决定性钱包不够安全 ® 管理不方便 □ 决定性钱包:所有私钥都由一个私钥种子通过单向的哈希算法生成 ® 备份方便,只要备份私钥种子,就可以一次性恢复所有的私钥 ® 分类 ◊ 普通决定性钱包:由私钥种子直接生成所有的私钥 ◊ 层级决定性钱包:由私钥种子生成父私钥,父私钥生成子私钥 § 部署场景分类 □ 移动钱包:运行在手机,移动终端的轻量级钱包。移动钱包不会下载整条区块链,采用“简化支付验证(SPV)”方法验证交易,也叫SPV钱包。 ® SPV验证:依靠网络上的可信任节点 查询所有区块的区块头,以及按照交易的确认数,再有就是能否在相应的区块中找到该笔交易来验证支付的真伪。 □ 桌面钱包 ® 分类 ◊ 厚钱包:下载整条区块链,进行完整交易 } bitcoinCore:提供完整钱包功能,包括签名,钱包加密,备份,密钥导入,导出等 } 厚钱包主要优势是安全,但有交易验证的开销,适合于安全性要求很高的场景 ◊ 薄钱包:不会下载整条区块链,而是采用SPV等方式来验证与用户相关支付交易 } 薄钱包主要优势是灵活性高,但是安全性相对较差,适合于小额支付场景 □ 互联网钱包 ®

比特币原理入门之五:神奇的账本——区块链

回眸只為那壹抹淺笑 提交于 2019-11-28 19:36:18
在上个文章中,我们认识了那个神奇的钱包。现在大家回忆一下,我们在最开始的故事中,还提到了一个神奇的东西,那就是那本账本对吗?在这个文章中,我们就来看看,这个神奇的账本。 账本的神奇之处 首先,我们回忆一下,这本账本的神奇之处在哪?对了,就是一、每家每户都有一本账本,二、每本账本上记录的交易都是一样的。那我们接下来就好好解读一下这两句话,来看看上面的这两点是如何做到的。在整个比特币的网络中,有一些节点叫做全节点,这些全节点保存了自2009年比特币系统产生以来所有的交易记录,这就是一本完整的账本。那现在如果你是刚加入到这个比特币网络这个新的世界中,你就需要有一个钱包,当然这个是从网上下载的,钱包一旦连上网,就会自动同步比特币网络上任意一个全节点上的交易记录的数据,也就是账本,这样的话,你的钱包中相当于也有了一本完整的账本了。我们之前也说过,我们如果仅仅作为普通的用户,可以根据自己的需要,选择同步一本完整的账本或者只同步一部分账本,这都是可以的。这样,我们就通过钱包的自动同步功能,其实说白了就是钱包从比特币网络下载数据,那就实现了随时随地都可以获取到账本。这些账本信息记录在每一个联网的钱包里。 账本长什么样? 好了,讲完账本的神奇之处,那我们来看看比特币的账本长什么样。我们先来想象一下现实生活中的账本。我们想象在一个单位里有一个资料室,里面存放了自单位开张以来所有的账目记录

最透彻的讲解《比特币白皮书》(一)

北战南征 提交于 2019-11-28 19:36:06
现在似乎比特币的热度已经过去,而在比特币、区块链流行的那段时间也是更多的作为一种投资手段被热议。 互联网已经普及,但是我们关于货币、金融、生产的认知还停留在资本论的时代,即使面对新兴的技术,也是在想,怎么才能大赚一笔。本文及本专栏并不是介绍如何暴富,而是想要借由这些新技术给大家展现一个新时代的缩影。 如果你也跟我一样看不懂很多介绍比特币的文章,那么这篇文章可能更适合你,因为我会和你一起站在一个小白的角度带着诸多疑问来了解这个技术 本文是基于中本聪的《比特币白皮书》来讲解的。先介绍一下中本聪,他是Bitcoin的创始人,2007年就致力于比特币的研究,而中本聪也可能并不是他的真名,也可能并不存在一个人是中本聪,而是一个团队。当然这些都不重要,更重要的是他的理论部分 互联网上的贸易,几乎都需要借助金融机构作为可资信赖的第三方来处理电子支付信息。虽然这类系统在绝大多数情况下都运作良好,但是这类系统仍然内生性地受制于“基于信用的模式”(trust based model)的弱点。 想想假如你在做生意,要给某个不熟悉的人A转一笔钱,那么你一定通过了第三方,可能是银行转账,可能是支付宝微信,也可能是双方签署了合同。 很少有人直接就把钱给对方了,因为你并不信任他。通过第三方,是因为我们信任银行,信任阿里巴巴和腾讯,信任合同的效力,归根结底可能是信任国家,信任现行的交易体系 但是信任是有很大成本的

用人话解释比特币原理(转载)

这一生的挚爱 提交于 2019-11-28 19:35:42
究竟是什么让一枚虚拟货币的汇率在3年间翻了25000倍,是什么力量让央行副行长“感兴趣”但“不承认”,抛开投机与商业欺诈比特币作为一种工具究竟有没有价值?欢迎收看今天的走进“伪”科学——用普通人也能理解的话解释比特币。   比特币大热,北京时间上周六下午五点多,比特币网络刚刚成交了有史以来最大的一笔交易——19 万比特币被抛向了市场,按照当时的价格 5000 左右计算,一个 10 亿人民币级的富翁就这样诞生了,你们随便感受下。   但是,这篇文章并不是教你如何投机的,本人也无意怂恿任何人进入比特币投机市场。请务必看准这几个大字再继续往下阅读:   比特币市场风险巨大,投机请异常谨慎!   好了,该打的预防针打了,接下来我们谈正事:这篇文章并不讨论比特币的商业逻辑,也不讨论它是不是骗局,而是将比特币的原理用通俗易懂、非极客也能听理解的语言进行解释,让大家来看看这个让央行副行长表示“有特点”而且“很有启发性”的电子货币究竟是个啥东西。因为考虑到要做到浅显易懂的原因,有些地方的解释并不十分严谨,有基础想要进一步研究的同学可以去看这篇比特币的原始论文《比特币:一种点对点的电子现金系统》。   下面,我们就开始走进比特币……   首先,从比特币的本质说起,比特币的本质其实就是一堆复杂算法所生成的特解。特解是指方程组所能得到无限个(其实比特币是有限个)解中的一组

如何查询一个比特币地址的所有交易?

[亡魂溺海] 提交于 2019-11-28 18:48:09
在比特币应用开发中,一个常见的问题就是,在知道比特币地址的情况下,如何查询这个地址上发生的所有交易?或者类似的说法,如何查询一个指定的比特币地址发生的所有交易? 本文将给出这一问题的三种解决方案。 1、将比特币交易数据存入数据库 由于比特币的数据存储结构,不可能直接利用比特币的原始API来查询指定地址的历史交易数据。因此最朴素(Naive)的第一种解决方案,就是将比特币区块链上的每一笔交易数据存到自己的数据库里,然后针对交易地址信息(例如Scriptpubkey、pubkey或者地址本身)建立索引,这样就可以在数据库上自由、高效地查询了。 2、利用第三方的服务 朴素的第一种方案需要自己解析比特币区块链数据,自己搭建数据库环境,可能你觉得有点麻烦。好在有很多第三方机构已经做了这件繁琐的事情,并且通过开放API的形式提供出来,你可以直接使用。 例如,你可以使用blockchain.info的api来实现这个功能: $ curl https://blockchain.info/rawaddr/$bitcoin_address 3、换一种比特币节点实现软件 如果你不愿意自己搞数据库,也不愿意使用第三方的开放API,还有第三种解决方案,就是换一种支持按比特币地址查询交易的节点实现软件,例如 btcd ,这是一个go语言实现的比特币节点软件,当你启动btcd时,只要使用 --addrindex

04_存储和使用比特币

我是研究僧i 提交于 2019-11-28 16:06:07
一、简单的本地存储    公共信息:记录在区块链上的内容(例如 比特币的识别信息、币值等)    私密信息:即本人的私钥   1、存储和管理私钥的三个目标     可获取性;安全性;便利性(不能做到同时满足,根据具体应用情形,作出权衡)   2、几种管理比特的方法     比特币钱包软件:管理你比特币和私钥信息并方便使用的应用软件       比特币钱包就是一个简单的接口,告诉你前面包里有多少比特币,当你使用比特币的时候,他会处理关于密钥管理的一切技术细节,比如使用密钥和生成新的地址。     编码解码(encoding keys):Base58 编码和二维码       使用和接受比特币需要你和对方交换地址----比特币送达的地址。目前  两种主流的方式将地址加密:字符串和QR(QuickResponse)       为了给地址赋予一个字符串,把密钥的字节从二进制字符转换成base58码。Base58就是用一个包含58个字符的字符集来编码,被称为base58记号法(去掉了比较容易混淆的字符:0和o)。       QR码就是二维码,好处就是用手机拍张照片,然后钱包就会把QR码转换成代表比特币地址的字节。     虚荣地址:将地址转换成一些人能够识别的字符(Satoshi Bones,收款地址中就含有“骨头”(bones)),如下所示2-6为字符

本体研究院为什么说“跨链”是硬核技术?和其它跨链相比,本体跨链优点何在?

给你一囗甜甜゛ 提交于 2019-11-28 12:46:33
原创 | 本体社区成员@我的世界 原文 | https://m.lcyoufu.com/#/articleDetail?articleid=338956&inviter=N5QP&VNK=11942d30 --------------------------- 昨天本体研究院发布了一个科普小视频,在介绍时说,很多小伙伴对跨链和分片很感兴趣,本体将推出一系列小视频为大家介绍这些能够改变生活方式的硬核技术及未来将应用的场景。 文中提到了“硬核”两个字,还特别指出“能够改变生活方式”,跨链和分片的技术实现了,真的对我们的生活方式有那么大的影响吗? 带着这个疑问,我又开始了新的一天的学习之旅。 粗浅的理解跨链,就是资产交换,比如拿本体ONT换比特币BTC,也就是把资产从一条链拿到另一条链,广义的理解是把信息从一条链拿到另一条链。区块链是分布式记账的一种方式,一条区块链便代表了一个独立的账本,两种账本之间无法沟通,价值也无法流动,由此跨链技术就显得分外重要。 目前主流的跨链方式有三种: 其一:跨链原子交换,两个网络实现资产的互换,不通过中介。比如你有1000个以太坊,我有10个比特币,我们之间可以实行交换,这样我就有了你的以太坊,你就有了我的比特币。但是交换完成后你还是要用比特币的网络来操作这10个比特币,这种实际是完成了币的所有权的转换。 其二:资产的转移,这种方式重在资产的位置

2019年以太坊能涨到多少

会有一股神秘感。 提交于 2019-11-28 08:01:25
昨天比特币在9700美元附近止跌反弹,价格最高涨至10218.2美元后慢慢回落。今日凌晨,虽然走势上行再度突破10200美元,但也让多头动能耗尽,进入到回调阶段,走势继续向10000美元形成压迫。目前比特币的价格10091美元。 自从比特币价格突然暴涨,让很多人都大赚了一笔之后,虚拟币市场就开始变得热闹起来,现在已经有很多的新兴货币逐渐崛起,那么在2019年除了比特币之外,还有哪些货币是值得投资者关注的呢? 以太币(ETH)是以太坊(Ethereum)的一种数字代币,被视为“比特币2.0版”,采用与比特币不同的区块链技术“以太坊”(Ethereum),开发者们需要支付以太币(ETH)来支撑应用的运行。和其他数字货币一样,可以在 领域王国 进行买卖。 莱特币有个有趣的称号——辣条,具体原因不得而知。莱特币出现后很多人认为莱特币的算法比比特币要优秀,更夸口其将会取代比特币成为虚拟货币的领头羊。对此,小编不做评价,但莱特币的火爆程度可见一斑。 瑞波币是Ripple网络的基础货币,和比特币一样都是基于数学和密码学的数字货币,但是与比特币没有真正的用途不同,XRP在Ripple系统中有主要桥梁货币和有保障安全的功能,其中保障安全的功能是不可或缺的,这要求参与这个协议的网关都必须持有少量XRP。 凯特币(KateCoin)简称KTC,是一种虚拟的可以全球通用的P2P形式的数字货币

区块链认知

早过忘川 提交于 2019-11-28 01:15:28
什么是区块链 区块链是一种分布式数据库。 从本质上来说,区块链是利用分布式技术和共识算法重新构造的一种信任机制。可以把区块链简单理解为一个由所有参与者公共维护的交易账本,账本信息的公开使得所有参与者可以一起来校验交易和记账的正确性,使得账本具有防止恶意篡改的能力,成为所有参与者可以信任的载体。现在,区块链概念和技术被运用到更加广泛的互联网金融领域,人们觉得这可能成为未来一些行业内信息安全存储的主要技术手段。 区块链和比特币的关系 区块链技术是比特币的底层技术,在早期并没有太多人注意到比特币的底层技术。但是当比特币在没有任何中心化机构运营和管理的情况下,在多年里非常稳定的运行,并且没有出现过任何问题。所以很多人注意到,该底层技术技术也许有很大的机制,而且不仅仅可以在比特币中使用,也许可以在许多领域都能够应用这种技术。于是把比特币技术抽象提取出来,称之为区块链技术,或者分布式账本技术。 解决什么问题 区块链最重要的是解决了 信用问题 。 在过去,两个互不认识和信任的人要达成协作是难的,必须要依靠第三方。比如支付行为,在过去任何一种转账,必须要有银行或者支付宝这样的机构存在。但是通过区块链技术,比特币是人类第一次实现在没有任何中介机构参与的情况下,完成双方可以互信的转账行为。这是区块链的重大突破 金融服务 主要是降低交易成本,减少跨组织交易风险等。该领域的区块链应用将最快成熟起来