自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HuZhenXing

Hire for aptitude and attitude, train for skill !

  • 博客(110)
  • 资源 (16)
  • 收藏
  • 关注

原创 PBFT协议的理解

PBFT协议文章目录PBFT协议系统模型系统特性PBFT算法简述PBFT详细阐述1. client发出Request2. pre-prepare阶段3. prepare阶段4. commit阶段CheckPoint(检查点)View Change(视图切换)PBFT协议讨论为什么PBFT协议中节点总数N>3fN>3fN>3f, 为什么pbft协议后两个阶段至少需要2f+12f...

2019-12-05 23:08:50 3544 2

原创 区块链匿名技术发展

摘要这篇报告主要汇报本学期对学术界就匿名币的匿名性方面的研究做一个概述,重点介绍学术界对区块链技术中匿名性技术的研究发展脉络。匿名性的研究,主要起源于比特币。比特币用户是化名的,但是没办法达到真正的匿名,随着对匿名性要求越来越高时,学者们开始研究为比特币增加匿名技术或者是创建一个全新的加密货币。这些匿名技术分别从最开始的混币服务到后来的零知识证明。下文会对这些加密学知识做一个大概的梳理。比特币...

2019-06-20 15:06:58 2456 2

原创 You don‘t have enough free space in /var/cache/apt/archives

在执行 sudo apt install 来安装一些包时候遇到过这个问题,网上查了很多资料,很多简单粗暴的解决方案如下:sudo apt autocleansudo apt autocleansudo apt autoremove docker system prune上述命令全部都试过了,不管用。由于本身空间很小,所以不管用,唯一的办法就是给var/cache/apt/archives 创建一个软链接。首先使用df -h 命令查看一下机器中存储使用情况:很明显,/目录下已经只剩 992

2021-04-28 15:15:55 6632 3

原创 C++ 引用踩的坑

我在ns3模拟器网络的基础上想实现一个简单的区块链系统,在这个区块链系统中,每两个邻居节点之间都会记录互相广播的交易哈希。于是每个节点都有两个 map 的存储,其结构为:std::map<IPV4Address, std::vector<std::string>> m_sendTxHash;std::map<IPV4Address, std::vector<std::string>> m_recvTxHash;这两个 map 的键是节点的 IP 地址,

2021-04-23 14:38:26 354

原创 tmux 命令总结

Tmux 命令总结新建名为test的会话tmux new -s test从外部命令行切换到testtmux attach -t testtmux模式下中从一个会话切换到另外一个会话tmux switch -t testtmux模式中列出所有会话ctrl+b, stmux模式分屏ctrl+b, % 垂直分割ctrl+b, " 水平分割tmux模式分屏切换ctrl+b, o 切换至下一个窗口ctrl+b, ; 切换至前一个窗口tmux查看输出

2020-12-21 14:27:48 326

原创 Windows10 和 Ubuntu系统下编译

Windows 10 下使用Visual Studio 2019编译Bitcoin目前Bitcon 官网上推荐用VS2017或者VS2019进行编译,本文用VS2019进行编译,这里是官方编译文档从github官网下载bitcoin源代码。git clone https://github.com/bitcoin/bitcoin.git我编译的是比特币0.19版本,在进行编译前,先切换到0.19版本,你也可以选择自己编译其他版本。cd bitcoingit checkout 0.19

2020-08-18 18:20:10 662

原创 SSH 远程登录

远程登录方法:ssh 用户名@ip地址 -p 端口号例子: ssh [email protected] -p 22 , 然后输入密码。将本地的文件拷贝到远程:scp -P 22 -r 本地文件路径 用户名@ip地址:远程目录scp -P 22 -r ./bitcoinSource/ [email protected]:/home/zxhu将远程文件拷贝到本地:scp -P 22 -r 用户名@ip地址:远程目录 本地文件路径 scp -P 22 -r [email protected]:/usr/loca

2020-07-05 15:51:55 942

原创 力扣——两数之和

两数之和来自力扣上面的一道简单题,我比较轻松的做出来了,按照道理,这道题目不应该放到博客上来,不过今天我做完这道题之后,我突然发现我在2年前,10个月前都做过这道题目,我比较好奇从2年前,再到10个月前,再到今天,我的做题水平是否真的有进步?我分别看了我2年前,10个月前以及今天的题解。2年前我做这道题目,我的题解如下:class Solution {public: string addBinary(string a, string b) { string rslt ="";

2020-06-23 01:10:40 931

原创 免费的区块链数据API网址

不需要申请API key的免费网站如下:http://cw.hubwiz.com/card/c/crypto-api-portal/1/1/2/(一个API大全网站,待验证)https://chain.api.btc.com/ (一分钟120次)https://blockchair.com/api/docs(一天最多1440次)https://tokenview.com/cn/api (...

2020-05-06 23:22:51 1666

原创 超级详解隔离见证(segregation witness)

隔离见证(segretation witness)起源隔离见证由比特币BIP141提出,将比特币区块中交易的数据结构稍加修改,以解决如下问题:transaction malleability 问题。SPV证明中传输交易的签名成为可选隔离见证。变相增加区块容量。这里提到了一个概念,transaction malleabiity(交易延展性),有必要介绍一些背景知识。在BIP141...

2020-04-20 22:08:03 5131 1

原创 c++11 thread学习笔记

C++11 线程学习笔记C++11 中创建线程的方式在c++11中有三种创建线程的方式:函数指针方式函数对象方式Lambda函数创建函数对象之前,首先需要引入线程的头文件, 如果你是在linux下VSCode中使用线程,需要在tasks.json文件的args属性中添加"-pthread".下面的例子展示了使用函数指针创建线程的方式:#include <iostream&...

2019-12-26 14:31:22 658

原创 Hyperledger 架构介绍资料

下列是对Hyperledger Fabric 架构设计高屋建瓴介绍,不会具体涉及细节,大佬直接略过即可. 刚开始接触的新手可以看看这些简介,然后再深入了解.区块链开源实现hyperledger fabric架构详解Hyperledger Fabric交易流程Fabric1.2版本新的特性Blockchain区块链架构设计之四:Fabric多通道和下一代账本设计...

2019-12-16 16:27:54 289

原创 C++ chrono 获取当前时间

代码#include <chrono>#include <ctime>#include <iostream>int main() { using namespace std; using namespace std::chrono; // 获取当前时间 system_clock::time_point now = system_clo...

2019-12-13 18:29:02 8735

原创 布隆过滤器

本来我指向弄到收藏夹的,但是CSDN的收藏夹不能收藏别的网站,没办法,我只能这样了.布隆过滤器写的比较好的一篇资料:https://zhuanlan.zhihu.com/p/43263751

2019-12-11 11:03:05 185

原创 BIP152介绍

Bitcoin BIP152-Compact Block摘要在比特币网络中传输压缩区块主要是为了节约带宽.动机从历史上看,比特币P2P协议对于区块转发的带宽利用效率并不高。即使邻居节点已经拿到了区块中的很多交易,在区块转发过程中每一笔交易都会被包含在转发的区块中.这导致了节点在接收区块的时候,出现接收带宽高峰,对于一些比其邻居节点更早收到区块的节点来说,这导致了它发送带宽高峰.当出现带宽高...

2019-12-10 13:39:59 797

转载 TCP 打洞和UDP打洞

为什么网上讲到的P2P打洞基本上都是基于UDP协议的打洞?难道TCP不可能打洞?还是TCP打洞难于实现?假设现在有内网客户端A和内网客户端B,有公网服务端S。如果A和B想要进行UDP通信,则必须穿透双方的NAT路由。假设为NAT-A和NAT-B。A发送数据包到公网S,B发送数据包到公网S,则S分别得到了A和B的公网IP,S也和A B 分别建立了会话,由S发到NAT-A的数据包会被NAT-...

2019-09-24 10:25:49 587

转载 Kademlia协议详情

来自知乎上的一篇文章,讲得比较清晰,链接如下:https://zhuanlan.zhihu.com/p/38425656

2019-09-23 19:20:04 382

转载 Symetric NAT和Restricted Cone NAT

The diffierence between Symetric NAT and Restricted Cone NATA symmetric NAT applies restrictions exactly the same way as a port restricted cone NAT but handles the NAT translation differently. All ty...

2019-09-20 16:19:48 1322

转载 NAT的几种类型

这是一篇找的比较好的对NAT介绍比较全面的文章,英文好的同学可以参考看看。AbstractAll types of NAT fall into two categories; Static NAT and Dynamic NAT. Static NAT is where administrators manually create and maintain the NAT mappings a...

2019-09-20 14:39:09 637

原创 Dash币中PrivateSend 的过程

钱包准备过程钱包首先将需要PrivateSend的UTXO中的value拆分,拆分成Private Send需要的面额. 具体来说,就是钱包往自己的地址进行转账,UTXO中的钱拆分成10.001, 1.00001, 0.100001,0.0100001, 0.00100001 五种面额. 例如,假如你的钱包有20个Dash, 钱包会拆分成1个10.0001和9.9999的Dash, 继续对剩...

2019-05-22 22:05:39 690

原创 Flalsh Lighting Network(闪电网络)

文章作者:白鱼闪电网络白话版很多人说闪电网络是比特币的未来,是趋势。但笔者始终觉得,如果不能理解底层的技术原理,就无以言对上层应用的深刻理解,更不足以谈对未来趋势的判断。接下来,我将在Aaron van Wirdum 编写的《闪电网络三部曲》的基础上,用更加通俗的语言介绍闪电网络。感谢Aaron van Wirdum绘制的交易结构图,这对我们理解闪电网络将会起到莫大的帮助。理解闪电网络主要...

2019-05-05 21:52:12 739

原创 Dash币资料

Dash学习资料github-达世币白皮书Dash英文白皮书达世币-中文帮助文档privateSend(匿名支付)Dash github 源代码PrivateSend on MYCRYPTOPEDIAPrivateSendDash 匿名性分析Battle of the Privacycoins: Why Dash Is Not Really...

2019-04-17 21:14:01 1944

原创 A Traceability Analysis of Monero’s Blockchain

AbstractMonero 以相比于Bitcoin而言更加具有匿名性,在本文中作者使用了3中启发式的方法对Monero 区块链中的交易进行分析,虽然Monero中使用了mix-in方式,实际上其中87%的交易地址仍然是可以被追踪的;再新的Monero版本中采用了RingCTs,但是启发式方法仍然有效。在这些可以被追踪的交易中,其中98%的交易中使用的mix-in地址都是最近新产生的output...

2019-04-10 10:06:21 793

原创 An Empirical Analysis of Traceability in the Monero Blockchain

AbstractThis paper empirically evaluate two weakness in Monero’s mixin sampling strategy.About 62% of transaction inputs with one or more mixins are vulnerable to cascade effect so that the real in...

2019-04-10 10:05:04 684

原创 EOS中基本的数据结构解析

本文用于记录对EOS源代码的阅读记录,对其相关内容从源代码中追踪问迹,希望从源代码入手,对其设计原理有一个深入的认识,也用于本人学习研究之用.如果对EOS不太了解, 还需要对EOS顶层的内容有一些了解.这里推荐EOS的白皮书进行了解学习.对任何区块链相关技术的学习,首先应该从其区块的结构开始学起,因此,本文首先从区块源代码入手开始了解.EOS区块链相关数据结构block headerbl...

2019-04-08 21:42:09 1447

原创 EOS中plugin之net_plugin

EOS中plugin之net_plugin这部分重点介绍EOS中的服务器端部分nodeos启动之后开启的另外一个重要的插件——net_plugin,这个插件主要负责服务器在网络中的接入、同步区块信息、断开等功能。对于这个插件,首先从其类的定义开始了解。class net_plugin : public appbase::plugin<net_plugin>{ public...

2019-04-08 20:16:53 616

原创 New Empirical Traceability Analysis of CryptoNote-Style Blockchains

发表于Financial Cryptography and Data Security 2019的一篇文章摘要在(PETS’18)会议提出对Monero 不可追踪性的cascade effect 攻击已被开发者使用两个方法规避,其中之一是增加币环形签名(Ring Signature)中mix-ins的个数,从 0.9.0版本中的3个增加到了0.12.0版本中的7个,同时增加了ring conf...

2019-04-08 16:56:56 529

原创 EOS中plugin之producer_plugin

EOS中plugin之producer_pluginEOS中的插件是非常重要的工具,其中大大小小总共有26个插件,其中比较重要的插件有chain_plugin、producer_plugin、http_plugin、net_plugin等四个插件。这四个插件在EOS服务器端启动后也开始启动进行工作。abstract_pluginEOS中所有插件继承于plugin类,而plugin类又继承于a...

2019-03-28 14:01:23 515

原创 An Empirical Analysis of Anonymity in Zcash

An Empirical Analysis of Anonymity in Zcash论文笔记详情请点击会议网址及资料Abstract这篇文章重点测试了Zcash的匿名程度,对Zcash各种情况下的交易的匿名性都进行了分析,主要涉及到Zcash中的transparent transactions以及与shield pool交互的隐私交易的匿名性分析. 文章得出结论: 虽然可以匿名的进行...

2019-03-13 22:59:53 1905

原创 股票买卖 题解

题目来源:http://bailian.openjudge.cn/practice/4121/解题思路假设股票数组为prices假设F[k][i]表示到第i天总共买卖k次时的最大利润,可以将其分为两种情况,即第i天发生了买卖和未发生买卖。假如第i天没有买卖股票,那么F[k][i] = F[k][i-1]假如第i天参与股票买卖,那么F[k][i] = max{prices[i] - pr...

2019-01-10 15:06:28 677

原创 昂贵的聘礼

昂贵的聘礼题目来源:http://bailian.openjudge.cn/practice/1062/解题思路:假设冒险家自身是第0号物品,可以将这道题目理解为经过一系列的物品的交换,花费最少的金币换得酋长的1号物品。-将其看作图论,建图的时候,每次遇到一个物品及其原价,可以设置0号物品到该物品的距离为该物品的价值。即表明冒险家直接购买物品需要花费的金币。对于某个物品的替代品,可...

2019-01-09 22:46:28 571

原创 背包问题总结

0-1背包问题设F[k][b]表示考虑前k个物品,总重量不超过b的情况下的可以装进背包的最大价值时多少?递推公式为:F[k][b] = max(F[k-1][b], F[k-1][b-weight[k]]+value[k]); b&amp;gt;=weight[k]F[k][b] = F[k-1][b];b&amp;lt;weight[k]初始化时,二维矩阵所有值初始化为0,F[k][0] = 0...

2018-12-14 16:36:52 221

原创 Checking an Alibi 测试数据集

题目来源http://bailian.openjudge.cn/practice/2394/解题思路这道题目就是计算从源点1到其他顶点之间的最短距离,使用Dijkstra算法即可实现,然后判断每头牛所在的点,判断其和源点1之间的距离是否不超过M。代码运行了很多遍之后发现老是出错,最后发现测试数据集中会出现重复的边,比如2 3 1,表示2号顶点到3号顶点距离为1,但是还会出现2 3 100...

2018-12-11 19:36:31 856

原创 优先级队列+邻接矩阵+Dijkstra算法

优先级队列+邻接矩阵+Dijkstra算法DijkStra算法代码// 定义Edge表示每一条边,from是始点,to是汇点,distance表示距离struct Edge { int from, to, distance; Edge(int f, int t, int d) :from(f), to(t), distance(d) {}; bool operator &lt;(con...

2018-12-11 19:08:49 446

原创 post office 问题

162:Post Office 修建问题。地址: http://noi.openjudge.cn/ch0206/162/解题思路设置F[p][v]表示V个village中修建p个邮局使得所有村庄到最近邮局的距离最近。得到了如下递推公式:F[p][v] = min{F[p][v], F[p-1][k-1]+ dis[k][v]};为什么这样进行递推?这是因为本题目中以最后一个邮局所属的村...

2018-11-24 19:39:42 2310

原创 有向无环图的拓扑排序

1.有向无环图的拓扑排序// enDegree表示每个顶点的入度,这个数据结构可以从图的结构求出来// graph是一个二维数组,但是这个数组不是图的邻接矩阵,graph[i][j]表示依赖于i的第j个元素的编号// 在本文中,i依赖于j表达的意思是,拓扑排序中必须先输出j,然后才能输出iint topSort(vector&lt;vector&lt;int&gt;&gt;&amp; re...

2018-11-12 20:44:09 4157 3

原创 Agri-Net的Kruskal算法+并查集实现(按大小合并+路径压缩)

Agri-Net的Kruskal算法+优先级队列实现算法复杂度分析&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;对所有的边进行排序,排序复杂度为O(mlogm),随后对边进行合并,合并使用并查集,并查集使用link by size的方式实现,同时在find函数实现了路径压缩。每个元素第一次被执行find操作需要的复杂度为O(logm),总共m个元素,可以在循环中设置,如果已经有n-1条边,那...

2018-11-09 13:18:09 722

原创 Agri-Net的Prim算法+优先级队列实现

#include&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;cstdio&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;#include&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;#include&amp;amp;amp;amp;amp;amp;amp;amp;amp;l

2018-11-09 09:37:39 234

原创 c++ 中的format函数

c++中字符串format,还是需要用到c语言中的sprintf_s,在c++ 库中,我之前只学了c++语言,对于c语言的学习有一些抵触情绪,但是有好的东西还是得接收。至少sprintf_s以及c语言的printf比c++中的cout强不知道多少倍了。sprint_f的函数原型如下: int sprintf_s(char *buffer,size_t sizeOfBuffer,const ch...

2018-10-10 19:49:35 5498

原创 c++ 中字符串split函数

写这个只是用来记忆一下,时至今日才发现c++ 的cstring类中已经有了字符串分split的函数,自己一直没有发现,羞愧难当,不过还好我是一个知耻后勇的人,既然今天发现了,那就记下来。cstring中有一个strtok_s函数,它是一个分割字符串安全函数,其函数原型如下:char *strtok_s( char *_String, const char *_Delimiter, char *...

2018-10-10 19:31:57 2725

cxform-c.dll

将cxform-0.71编译得到的c++dll库,用于不同坐标系之间转换,源代码中的dll库没有接口函数,无法使用,本dll经过VS2010测试,可以正常使用

2017-05-28

LSTM官方训练样本数据imdb.pkl

Theano中LSTM官方教程例子中的数据imdb.pkl

2016-11-04

注册表编辑器

注册表编辑器,支持批量操作,可以批量删除

2016-08-03

qt5.5做的记事本

qt5.5做的记事本,界面完全是手绘,没有UI类,特别适合新手学习,对于Qt,要多多学习没有ui的代码,这样才能快速提高qt的开发水平。

2016-03-20

马周游问题 c++ QT

用分支限界函数实现的马周游,在QT开发平台实现

2015-12-09

c# 采用DirectX9.0 载入3D模型

c#中采用directX9.0载入3D模型,实现需要下载并且安装DirectX9.0SDK,如果不能运行的话,就在工程中手动引用DirectX.dll,DirectX3D.dll,DirectX3DX.dll

2015-05-17

MFC odbc方法连接mysql图文教程

MFC,ODBC方法,连接mysql,图文并茂,包括mysqlworkbench建立数据库,小白也看得懂

2014-03-03

MySQL ODBC 5.1 Driver

连接MYSQL ODBC 方法的驱动器,必备!

2014-03-03

c++词法语法分析

c++ 编写的词法语法分析,绝对给力,不坑爹!

2013-05-28

c++ CMM词法分析器

c++语言编写的 CMM词法分析器,绝对给力,物超所值!

2013-05-28

c++猜数字游戏

c++编写的简单的猜数字游戏,可以用来软件测试

2013-05-28

c#连连看源代码开发

c#连连看源代码。有些小bug,但是不影响

2013-05-28

asp.net入门经典

asp.net入门经典:c#编程篇,不坑爹。

2012-07-07

ssd4 exercise4 答案

ssd4的exercise4的part1的执行程序和part2的UAR报告,本资源不坑爹

2012-04-21

SSD7 全部答案

SSD7 exam答案,exercise答案,quiz答案一应俱全,有各种你想要的,各种满分答案

2012-04-20

SQL语句大全

强大的SQl语句,详细实用,有各个语句的用法以及相应的解释

2012-04-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除