自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 mac os如何在命令行中使用某个lib

把该lib放入/usr/local/bin

2020-02-11 15:54:27

阅读数 1

评论数 0

原创 以太坊重入攻击(Re-Entrancy)范例

本文介绍一下以太坊非常有名的重入攻击的范例。 鼎鼎大名的DAO攻击就是因为当时他们的智能合约中存在Re-Entrancy这个bug,ETC也是因为这个bug,硬分叉产生出来的链。下面来贴代码。 pragma solidity ^0.4.19; contract Victim {     m...

2019-01-07 10:23:47

阅读数 2736

评论数 0

原创 Python调用命令行时,保存warning提示

def run_command(command): proc = subprocess.Popen( shlex.split(command), stderr=subprocess.STDOUT, stdout=subprocess.PIP...

2019-01-04 14:52:40

阅读数 204

评论数 0

原创 区块链地址的产生方式

在理解区块链地址产生方法之前,先来简单地理解一下公钥私钥的加密原理: 1. 公钥是对外公开的,而私钥是保密的。当A想要把内容发送给B时,A会用他的私钥对内容加密,然后发送给B。B会用A的公钥来解密。 2. 公钥是通过私钥产生的,这个过程是无法逆转的。 3. 当B需要验证A的身份(数字签名)时...

2018-11-16 10:52:48

阅读数 410

评论数 0

原创 区块链(以太坊智能合约)与传统软件的区别

区块链与传统软件设计有很多区别: 1. 区块链是分布式的,而传统软件大多是中心化的 2. 区块链通常有无数个备份(每个矿工处都会有一个完整的区块链备份),而传统软件只会在单个或者若干个节点做备份 3. 区块链是一个链式结构,在区块链上的所有记录都是可追溯且无法修改的,而传统的系统可能难以追溯...

2018-11-16 10:31:26

阅读数 208

评论数 0

原创 以太坊私有链搭建

1. 新建一个文件夹,文件夹下创建文件,genesis.jsongenesis.json是创世块,包含了一些私有链的设置,内容如下{ "config": { "chainId": 15, "homesteadBlock": 0, &quo...

2018-05-09 22:45:31

阅读数 157

评论数 0

原创 Solidity原理(六):用solc编译smart contract,用evm反编译bytecode

首先需要安装solc和evmsolc: https://github.com/ethereum/solidity/releasesevm:   https://geth.ethereum.org/downloads/编译一个smart contract可以通过指令 solc --bin-runti...

2018-05-06 23:07:25

阅读数 1898

评论数 1

原创 Solidity原理(五):EVM Bytecode文件结构以及如何执行

pragma solidity ^0.4.22; contract Demo{ uint public value1 = 0; uint public value2 = 0; function A(uint v) public returns(uint){ value1 += ...

2018-05-06 22:47:54

阅读数 2076

评论数 2

原创 Solidity原理(四):从Bytecode角度分析,EVM如何在基本块之间跳转

BasicBlock: 在解释EVM是如何执行之前,先来解释一下BasicBlock(基本块)。一个基本块由一系列的指令构成,有一个入口和一个出口,入口就是第一个指令,出口就是最后一个指令。出口的类型有: 1. 条件跳转(JUMPI),2. 非条件跳转(JUMP),3. 结束指令(RETURN,...

2018-05-06 21:19:21

阅读数 762

评论数 0

原创 Solidity原理(三):abi编码以及与EVM交互的原理

1.   如何生成smart contract对应的ABI(ApplicationBinary Interface)函数的abi由以下元素组成1)     Type:有“function”,“constructor”, “fallback”三种2)     Name:函数名3)     Input...

2018-05-04 09:17:02

阅读数 1823

评论数 0

原创 Solidity原理 (二):库(Library)(待修改)

什么是库:在Solidity中,库和合约有点类似,你可以把库理解成Java中只包含static函数的类。它的作用和目的是代码复用。和普通合约有点不同的是,Library中无法包含storage变量。创建和使用库:下面的Library,有一个包含mapping的数据结构,并且提供了查询和插入的功能。...

2018-04-28 11:22:08

阅读数 414

评论数 0

原创 Solidity原理(一):继承(Inheritance)

首先看一段官网的描述:Solidity supports multiple inheritance by copying code including polymorphism.When a contract inherits from multiple contracts, only a sin...

2018-04-22 23:25:17

阅读数 889

评论数 0

原创 web3.py获取公有链数据

1. geth同步本地数据,如果需要账户信息的数据,需要用full模式同步。由于以太坊曾经受到了攻击,2.4m起同步速度异常缓慢2. 安装web3, pypiwin32(windows下,因为要读文件,所以必须要装这个)3. 简单的example:from web3.eth import Eth ...

2018-04-08 15:00:31

阅读数 1833

评论数 0

原创 ubuntu pip版本下载路径问题

pip3总是会下载到Python3.4的路径下 解决方法: sudo python3.5 -m pip install XXXX

2017-10-27 17:37:58

阅读数 934

评论数 0

翻译 用正则识别是否是code

Regular Expressions for the Detection of Code Elements [A-Z][a-zA-Z]+ ? [a-zA-Z0-9\.]+[(][a-zA-Z_,\.]*[)] (https?://)?[a-zA-Z_\\-/]{2,}(\....

2017-08-31 15:27:09

阅读数 193

评论数 0

原创 Android自定义组合控件

一般的步骤: 1.      定义一个xml布局文件,这个布局文件中的内容是: 你想要自定义的控件的所有组件,分开来写 2. 定义一个java类,继承你想定义的内容,比如继承RelativeLayout 3.  在activity的xml中,使用java类中自定义的控件   接下来举例...

2016-06-28 00:10:58

阅读数 340

评论数 0

原创 HierarchyViewer中的viewNode获取与解析方式

本文具体解释,连接上viewServer以后,利用“DUMP”+hash_code命令来获取到含有所有AppUI信息的字符串的解析   树状结构的解析: 1.     while ((line = in.readLine()) != null) 这里,每一行就是一个控件的所有信息,即之后保存...

2016-06-23 15:43:16

阅读数 783

评论数 0

原创 HierarchyViewer如何获取app UI结构

DeviceBridge.java中,通过loadWindowData(Window window)返回一个ViewNode类 在这个方法中,通过DUMP+window.encode命令来获取到ViewNode,之前说过,在HierarchyViewer中的Activity总是被命名成Windo...

2016-06-23 15:41:51

阅读数 568

评论数 0

原创 Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.

解决方案 Tools -> Adnroid -> enable ADB integration

2016-06-21 15:00:38

阅读数 242

评论数 0

原创 java中的多态理解

多态的简单例子与理解

2016-06-12 14:47:22

阅读数 336

评论数 0

原创 BM25算法的实现过程

最近需要帮别人写一个BM25的文档,写完顺便上传了 BM25是一个计算文本相似度的算法 1.      BM25公式:   BM25是通过q和s中的公共词汇进行相似度计算的算法,其中 q: 待测试文档 s:需要进行相似度比较的文档   2.      IDF的计算公式如...

2016-05-18 13:50:53

阅读数 1685

评论数 0

原创 矩阵乘法+快速幂优化递推式

对于一个一维的递推式,如斐波那契数列:f(0) = 0, f(1) = 1, f(n) = f(n-1) + f(n-2), 如果想求解第n个元素,一般就是用O(n)复杂度来求解,但是这不是最优的 优化方法: 矩阵乘法+快速幂 首先可以用一个矩阵递推下一维,对斐波那契来说,这个矩阵就是:(1,...

2016-05-08 19:31:12

阅读数 522

评论数 0

原创 zoj 3930 Dice Notation

第一次写ACM题解,今天参加浙大校赛,比赛时候一直纠结G,最后半小时和队友边抢键盘边写的D,最后2分钟写完,提交,wa了。然后回来写一发,二十多分钟就搞定了。。。发现比赛时没有注意到tab这个坑点,太心疼自己了。。。。 思路就是先把空格全都删光,最后加空格,就ok了,注意tab这个坑 #inc...

2016-04-10 22:39:48

阅读数 494

评论数 0

原创 HashMap的应用,CF650A

题目输入一个n,接下来有n组数据,每组数据是n个point(x,y);输出xi == xj || yi == yj的数量,注意要减去xi == xj && yi == yj的数量 代码如下,写的复杂的原因是因为想练习一下HashMap import java.awt.Point; ...

2016-03-15 17:49:53

阅读数 336

评论数 0

原创 Java多级排序

用了HDU 1862的excel排序做例子,但是感觉这道题内存限制有问题,一直ML,先不管,贴上代码 import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java....

2016-03-15 15:05:28

阅读数 567

评论数 0

原创 github新建SSH key出现github permission denied<publickey>

1. 找到C:\Users\Programmer_Win\AppData\Local\GitHub\PortableGit_c7e0cbde92ba565cb218a521411d0e854079a28c\etc\ssh 2. 打开ssh_config 3. 将IdentityFile=后面的...

2016-02-21 20:52:44

阅读数 272

评论数 0

原创 解决有java命令,没有javac命令

今天重装系统,配置jdk和jre环境时,按照往常一样的方法,方法如下 http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html 以前都是行得通的,不知道怎么回事,这次一直有问题 于是在命令行中输入set,检查下配置 ...

2016-01-22 17:27:00

阅读数 7564

评论数 0

原创 Java中使用正则表达式

关于正则表达式的具体内容,在上一篇博文中已经具体介绍了,本博文具体介绍Java中的正则表达式使用方法 在Java中,主要通过Pattern类和Matcher类来使用。 首先,调用compile方法,如 Pattern p = Pattern.compile(exp); 然后...

2016-01-21 13:24:44

阅读数 280

评论数 0

原创 正则表达式详细介绍

单个表示: -1 \d 数字 -2 \D 非数字 注:大小写就是取反的意思 -3 \w 任意一个字母或数字或下划线 -4 \s 空白符(换行、制表符、空格) -5 . 任意字符(除了换行符) 自定义字符集合: []表示匹配[]内的任意一个字符,是一个或运算,比如[123],就表示是数字1...

2016-01-20 18:46:57

阅读数 333

评论数 0

翻译 安卓app运行机制:

安卓app运行机制:(google 官方文档提取) 一、app在系统中是怎样存在的 1. 安装apk(运行在各自的沙盒中) 1.1 因为安卓是一个多用户的Linux系统,所以每个app就相   当于一个不同的用户 1.2 每个app,系统都会给它一个独特的ID,然后分配不同的权限给app ...

2015-12-01 02:21:48

阅读数 1489

评论数 0

原创 Android studio中getVersionName一直都是1.0

原因很简单,在Android Studio,默认的位置改变了,在build.grade中,需要修改 defaultConfig { minSdkVersion 9 targetSdkVersion 23 versionCode 1 versionName &q...

2015-11-24 17:13:23

阅读数 550

评论数 0

原创 Mac系统下,打开Android SDK Manager

用命令行打开: 进入到sdk/tools命令下,输入./Android sdk即可

2015-11-24 14:33:22

阅读数 9638

评论数 1

原创 eclipse新建Android后src和layout文件夹为空

原因:升级了SDK,导致SDK与ADT版本不符合 解决方法: 1.点击help -> install new software-> add 2. 添加adt地址: https://dl-ssl.google.com/android/eclipse/    名字可以自定义 3. ...

2015-11-24 10:56:48

阅读数 660

评论数 0

转载 Eclipse自动补全功能失效

eclipse自补全失效的解决办法: 1. 先检查自动补全的快捷方式是否设置正确。如下图所示: 2. 自动补全需要对java -edit-content assisnt 进行设置。设置如下图: 3.完成上述步骤,问题解决。

2015-08-17 15:47:25

阅读数 597

评论数 0

原创 HierarchyViewer源代码理解(三)

上一篇文章中提到对HierarchyViewer中,命令发送与接收的机制并不是很清楚,这篇文章就主要对这个进行研究   首先,通过adb命令行,连接到ViewServer(真机的话需要root权限才能够连接) 步骤如下 1.adb -e forward tcp:4939 tcp:4939 ...

2015-08-13 13:16:10

阅读数 593

评论数 0

原创 HierarchyViewer源代码理解(二)

注:文章是建立在http://blog.csdn.net/liguangzhenghi/article/details/8363911的基础上理解和扩充,所以首先先表示感谢 本文主要来讲一下loadViewServerInfoAndWindows这个函数     private voi...

2015-08-12 21:31:36

阅读数 325

评论数 0

原创 mac下ADB的配置和常用命令

首先,mac下地ADB配置 1.打开终端,输入touch .bash_profile 2.在终端输入open -e .bash_profile(这里的-e是edit的意思,输入这步后,会打开bash_profile文件) 3.在bash_profile中配置环境变量,格式是export PA...

2015-08-12 20:33:12

阅读数 900

评论数 0

原创 关于hierachyViewer源代码导入运行的问题

之前在导入hierachyViewer源代码的时候,一直出现问题,甚至有过想直接裸眼看代码的念头,但想想,这种问题在以后的研究中肯定是需要解决的,所以今天打算再抽出时间,研究下,结果终于成功了,看来凡是都不能太心急,研究这东西,必须静下心来,尤其是对于我这样的初学者而言,废话不多说 之前...

2015-08-12 13:39:29

阅读数 339

评论数 0

原创 更新sdk后遇到This Android SDK requires Android Developer Toolkit version 20.0.0 or above

今天更新sdk后,遇到了This Android SDK requires Android Developer Toolkit version 20.0.0 or above 原因是因为更新后,在sdk->tools->lib目录下面的plugin.prop也进行了变动,导致sd...

2015-08-12 10:51:14

阅读数 446

评论数 0

原创 HierarchyViewer源代码理解(一)

注:文章是建立在http://blog.csdn.net/liguangzhenghi/article/details/8363911的基础上理解和扩充,所以首先先表示感谢 1.程序的入口为HierarchyViewerApplication.java中的createContents...

2015-08-11 17:16:12

阅读数 505

评论数 0

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