114股票(www.114gp.com)权威提供股票怎么玩,股票开户,股票入门知识,股票行情,股票软件下载和股票分析等知名财经股票网.

Zcash 基础知识普及帖,Zcash 技术分析Zcash

2019-12-19 08:52:27 Zcash 阅读()
导读:   Zcash 团队 成员包罗多个 libsnark 开辟职员(不是局部)

   Zcash 团队 成员包罗多个 libsnark 开辟职员(不是局部)。修正以下:

   区块嘉奖分 2 个阶段:

  

挖矿硬件

   ZCash 中含有 2 种地点,完成 bitcoin 和 ZCash 的兼容。

    Addresses : z_getnewaddress, z_listaddresses

   矿工挖矿的嘉奖不克不及间接发送给通明资金地点,只能发送给私有资金地点,然后才气够 发送给通明资金地点。

   天生证实参考函数 perform_joinsplit:

   1、 libsnark 撑持 4 种言语:"R1CS"、"BACS"、"USCS"、"TBCS",zcash 利用了"R1CS"。

   格局:

   署名参考函数 sign_send_raw_transaction。

   3、 libsnark 撑持 2 个库:gadgetlib1、gadgetlib2,zcash 利用了 gadgetlib1,gadgetlib1 是底层 库,撑持一切的 R1CS 预处置特性。

   z_sendmany "fromaddress" [{"address":... ,"amount":...},...]

   1、 Solo 挖矿

   通明资金发送到通明资金地点,能够挪用 bitcoin 的 RPC 号令发送买卖,触及到私有资 金、地点,只能用 zcash 的 RPC 号令了,今朝是 z_sendmany 号令。

   零常识证实白皮书:

   详细天生历程看 z_getnewaddress 函数。

  

挖矿东西

  

难度调解

   1、 通明资金地点 taddr 类 bitcoin 地点,保留在 UTXOs 中,长度为 34 位。 号令./src/zcash-cli getnewaddress 能够天生新的 taddr 地点。 比方: msFgKsVAia4aFB1qFGX7iJ3XjMZv6c26Ab

   前 4 年(区块 0~840000)发生的区块嘉奖的 20%归 zcash 公司(总量的 10%),80%归 矿工。4 年后的区块嘉奖局部归矿工。

   (1) stratum 和谈

  

零常识证实

   ZCash 被称为零币,与‘灵’同音,欠好听,且有归零的觉得,同一称为 Z 币。ZCash 主链 的币叫 ZEC,同等于BTC,测试链的币称为 TAZ。

   号令 z_listaddresses 获得节点钱包中的 zaddr 列表。

   1、ZCash 今朝是由公司开辟的,公司具有绝对的话语权,后续公司会建立基金会,ZCash 的 开辟交给基金会促进。假如ZCash 社区与公司、基金会呈现定见不合,而代码是开源的, 能够硬分叉。 好比:有人对开创人嘉奖分歧意,曾经发起去掉开创人嘉奖。

  

CoinBase 庇护

    Accounting: z_getbalance, z_gettotalbalance

   延用 bitcoin 的买卖方法,仅仅打署名便可。

  

块嘉奖

  

创立新块

   块 10000 的嘉奖是 6.250625,跟着高度线性递增,增长幅度是 0.000625 币,块 19999 的嘉奖是 12.5 币。

  

庇护隐私手艺比力

   1、 达世币(暗黑币更名叫达世币) DASH 接纳的混币 CoinJoin 的计划,把一些买卖混淆在一同,增长追踪的难度。 CoinJoin 参考 DASH 币白皮书

   ZCash 私有资金买卖时,不单单依托零常识证实,并且对买卖打署名,接纳了 ed25519 算法。

   chacha20-poly1305 算法:

   2、 私有资金地点 zaddr 保留在 notes 工具中,长度为 96 位,前 2 位为标识表记标帜,主链地点前 2 位是zc,spendingkey 的前 2 位是SK,测试链的地点前 2 位是tn。 notes 工具是加密的,解密才气检察,用的是 chacha20-poly1305 算法。 号令./src/zcash-cli z_getnewaddress 能够天生新的 zaddr 地点。 比方: tngBSug9xvpqudziMc3QbfReHG6BeufHDbv4vEZDmnYqSpRbqu5USZqBTXENQGdUbYMkxqHbb9j3 RmEr7Lza8q7hbTQxZnM

   ZCash的挖矿算法是 EquiHash,实际根据是广义诞辰悖论,今朝有 2 个完成:BasicSolve、 OptimisedSolve,BasicSolve 次要用于测试用例,如今用的 OptimisedSolve 是优化后的,但依 然存在优化空间。

  

挖矿算法

   渐渐开端挖矿阶段也分 2 个阶段:

   (2) cpu 挖矿

   当 zcash 买卖触及到私有资金时,利用零常识证实天生证实(函数 r1cs_ppzksnark_prover),保留到类 JSDescription 的 proof 中,校验买卖时校考证实(函数 r1cs_ppzksnark_verifier_strong_IC)。

  


买卖

   前 20000 个块的嘉奖总量是 125000 币,相称于 10000 个块嘉奖是 12.5 个币的总量。产 生 10000 个块需求的工夫约莫是 17.3 天,迟缓挖矿的工夫周(20000 个块)约莫是 34.7 天。

   开创人嘉奖地点接纳 2/3 多重署名 FOUNDERS_REWARD_SCRIPT。

   今朝市场上有 3 种庇护隐私的币,别离是达世币 DASH、门罗币 XMR、Z 币 ZCash。

   Zcash 修正后的 libsnark:。

   2、 通明资金发送到通明地点、私有地点

   ZCash 是 bitcoin 的分支,保存了 bitcoin 原本的形式,基于比特币 0.11.2 版代码修正的。 ZCash 钱包资金分 2 种:通明资金、私有资金,通明资金相似比特币资金;私有资金增强了 隐私性,触及到私有资金的买卖是失密不成查的,通明资金与通明资金的买卖是公然可查的。

    Keys : z_exportkey, z_importkey, z_exportwallet, z_importwallet

   EquiHash 算法需求高内存,最优算法每一个挖矿线程需求 1G 内存,长工夫内 ZCash 利用 EquiHash 计较处理计划,保留到区块头的 nSolution,领受区块时校验。 BasicSolve 完成: 完成:

   在~/.zcash-params 目次下。z9-proving.key 大要 900M,z9-verifying.key 约莫 14K。使 用./zcutil/fetch-params.sh 能够下载这 2 个文件。

   1、 渐渐开端挖矿阶段

   每发生一个区块都需求从头计较难度,难度计较基于前 17 个块(42.5 分钟),前 17 个区块的难度是牢固的(powLimit),从第 18 个区块开端调解难度,最大值是 powLimit。

   具体信息参考白皮书第 10 页。

   区块巨细是 2M。

   ZCash每一个挖矿线程都有本人的地点、计数器,每一个线程挖出来的新块的块嘉奖的地点 是差别的,做矿池的需求留意,改成一个地点。

   在 ZCash

   从块 20000 开端,嘉奖是 12.5 个币,嘉奖根据每 840000 个块(每 4 年)减半,计较块 嘉奖时块高度削减 10000,即 940000 块是第一次减半,每隔 840000 个块减半,以此类推。

  

   2、 矿池

   今朝 ZCash 仅撑持 linux 体系(保举 ubuntu),不撑持 Windows、MAC,且只撑持号令行, 没有图形界面(zcash 团队没人善于 GUI)。

   blake2b 算法:

   地点 taddr 完成了原本的 bitcoin 的功用,zaddr 完成了 zcash 的功用。

   ZCash 今朝仅撑持 CPU 挖矿,GPU 的挖矿东西在研发中,还没有有人公然。 ZCash撑持 2 种挖矿方法:solo、矿池。

   2、 门罗币 XMR XMR 接纳了环署名,署名者操纵本人的私钥和环成员的公钥停止署名,考证者 只能肯定该署名来自环中的某个成员,但没法肯定署名者的实在身份。 参考文档

   本文由ZCash喜好者-龙少撰写。如需转载请标明作者和滥觞。

滥觞:
 

   把 equihash 算法做了些修正,承受矿池下发的难度来计较。

  

地点

  

   ZCash 总量是 2100 万个币,每隔 2.5 分钟出一个块,天天 576 个块。

   (2) 块 10000~19999

   EquiHash 白皮书讲了 2 点:

  

开创人嘉奖

   具体信息参考文档 。

   3、 Z 币ZCash的买卖接纳了零常识证实,躲藏买卖信息。 这 3 种手艺比拟较来看,ZCash 的隐私庇护性更好。

   每笔买卖需求天生证实,触及到找零、矿工费的处置,最初再署名发送。 买卖中的通明地点、私有地点的输入、输出是差别的构造,触及到私有地点的 接纳了新 增的构造(JSInput、JSOutput), 触及到的私有地点的数据需求先 署名解密剖析数据。

   2、 libsnark 撑持 3 种椭圆曲线:"edwards"、"bn128"、"alt_bn128",zcash 利用了"alt_bn128"。

  

风险

   接纳了 cpp-ethereum 的 stratum 的完成,V2 版,做了些修正,移除 eth 协 议中的号令。

  

买卖署名

   ZCash 保存了 bitcoin 的 API、RPC,触及到通明资金、地点的能够利用 bitcoin 的接口, 触及到私有资金、地点的只能用ZCash 新增的接口。

   Zcash 开辟者 str4d 做了个矿池和挖矿东西,矿池地点:,挖矿东西 地点:。 zcash-miner 是 zcash 的分支,次要增加了 stratum 和谈、cpu 挖矿。

   libsnark 看了看,晓得怎样用的,但具体的也没看懂。

   2、ZCash 的参谋包罗:前任比特币中心开辟职员 Gavin、eth 开创人 Vitalik Buterin,zcash 的 开展会遭到这 2 小我私家的影响。 好比:区块巨细 2M 源于 bitcoin classic。 参考 Github:

   1、 通明资金发送到通明地点

   通明资金发送到通明地点,仍然延用 bitcoin 的方法,发送到私有地点的需求机关证实, 对全部买卖署名发送。

    Operation: z_getoperationresult, z_getoperationstatus, z_listoperationids  Payment : z_listreceivedbyaddress, z_sendmany

   Zcash 利用了 SCIPR 尝试室的零常识证实库 libsnark,在此根底上做了修正。

   ZCash 买卖的零常识证实、署名需求的公钥、密钥利用 ed25519 算法天生的,具体参考 函数 crypto_sign_keypair。

  

 

   为了赐顾帮衬在开端阶段不懂挖矿的,ZCash 接纳了渐渐开端挖矿机制,前 20000 个块的奖 励比力少,线程递增到 12.5 个币。

  

API 和 RPC

   创立区块时,机关 2 个输出,别离给矿工、开创人,当播送区块后,其他节点承受区块 时,查验区块有用性,当高度小于 840000 时,查验能否有对开创人的 20%的输出。

   币成熟期是 100。

   1、 GPU 比 CPU 快 4 倍,

   SCIPR 尝试室的 libsnark:。

   参考函数BitcoinMiner() 。

   ZCash有 2 个参数文件,包罗了证实、考证 key,别离是: z9-proving.key、z9-verifying.key,

   具体计较历程参考 GetNextWorkRequired 函数。

  

 

   零常识证实是在不走漏信息的状况下,天生证实,考证者经由过程考证证实肯定能否准确。

   法式启动初始化时(AppInit2), 读取这 2 个文件中的证实、考证 key,天生证实时需求 证实 key,考证证实时需求考证 key。

   2、 ASIC 能否能够完成

   参考 commit:

   参考文件 standaloneminer.cpp。

   ZCash利用了开源加密库 libsodium(),ZCash 利用 了此中的 chacha20-poly1305、blake2b、ed25519 算法。

   taddr 能够发送买卖给 taddr、zaddr,zaddr 能够发送买卖给 taddr、zaddr。taddr 与 taddr 的买卖是通明可查的,触及到 zddr 的买卖就失密了。

   ZCash 新增的接口包罗查询余额、天生地点、发送买卖等,以下:

   号令./src/zcash-cli zcrawkeygen 能够检察地点、key 等。

   2、 一般块嘉奖

   具体历程参考函数 z_sendmany:

   块 1 的嘉奖是 0.000625 币,跟着高度线性递增,增长幅度是 0.000625 币,块 9999 的嘉奖是 6.249375 币。

  

加密库

   不懂挖矿的矿工也没必要焦急,由于即便懂了,前 20000 个块的嘉奖很少,有 1个月的时 间搞定挖矿。

   (1) 前 10000 个块

   买卖分 3 种状况:

   3、 私有资金发送到通明地点、私有地点

   Bitcoin 是每隔 2016 个块调解难度,关于 zcash 的每一个块都要从头调解难度,有个会商, 参考:

  

参数文件

   ed25519 算法:

免责声明:本文系转载,版权归原作者所有;旨在传递信息,不代表本站的观点和立场。
这里放分享代码
公式频道
股票软件
配资资讯
财经频道
股票开户
理财频道
股票入门
技术分析
技术进阶
高手养成
配资平台