自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

信仰在空中飘扬

小嘛小儿郎, 背着那书包上学堂, 不怕太阳晒, 也不怕那风雨狂。只怕先生骂我懒哪, 没有学问呀,无颜见爹娘...

  • 博客(29)
  • 资源 (7)
  • 收藏
  • 关注

原创 Python设计模式-单例模式

设计思想通过上面的介绍,我们可以知道单例模式最重要的就是要保证一个类只有一个实例并且这个类易于被访问,那么要怎么做才能保证一个类具有一个实例呢?一个全局变量使得一个对象可以被访问,但是这样做却不能防止你实例化多个对象。 一个更好的办法就是,让该类自身负责保存它的唯一实例instance。并且这个类保证没有其他的实例可以被创建。 怎样保证一个对象的唯一性总结如下:1.构造器私有化:为了避免其它程序过多的建立该类的对象,先禁止其它程序建立该类对象实例2.单例对象公开化:为了方便其它程序访问该类的对象,只好

2022-04-29 17:19:46 3331

原创 fastai v1环境搭建:Win10 MX250 CUDA10.1 cuDNN Pytorch1.0.0 Fastai v1安(bi)装(keng)指南

目录一、背景二、软件和硬件一、背景长久以来我们接受的都是传统的自下为上的学习模式,也就是从基础知识到高级概念再到实践的教育。而在fast.ai的课程里,Jeremy Howard 提倡的是自上而下的学习方法,也就是回归到人最自的学习方法。在课程中,Jeremy 就是贯彻着这样的教学理念,从一开始就让大家先别管具体的原理,按照他所教的方法把机器学习的模型实现出来,让大家以最快的速度感受到这项技术的力量以及降低对它的恐惧感。如果你也在学习深度学习,也刚刚接触fastai项目,正在为.

2020-11-20 15:23:38 1817 1

原创 微信小程序 — wx.getUserInfo引导用户授权问题

//index.js//获取应用实例const app = getApp()Page({ data: { userInfo: {}, // hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo') }, onLoad: function () { if (...

2018-09-04 16:53:34 1456

原创 noVNC — 虚拟机Web控制台

不管是 VMware, Xen 还是 KVM,都可以配置 VNC 访问,然后通过 VNC 客户端访问这些虚拟机的控制台,这些 VNC 客户端往往需要下载安装,如果要开发虚拟机的 web 控制面板的话当然最好能配一个 web 的 VNC 客户端。noVNC 正是我们需要的 HTML5 VNC 客户端,采用 HTML 5 WebSockets, Canvas 和 JavaScript 实现,noVNC

2017-09-29 15:05:48 10054

原创 Neutron-server初始化 — Neutron L3 Agent初始化(路由& NAT)

Neutron L3 Agent(Layer-3 Networking Extension)作为一种API扩展(通过API来创建router或者floating ip,以提供路由以及NAT的功能),向租户提供了路由和NAT功能。l3扩展包含两种资源: router:在不同内部子网中转发数据包;通过指定内部网关做NAT。每一个子网对应router上的一个端口,这个端口的ip就是子网的网关。 flo

2016-08-08 16:22:46 6457

原创 Neutron-server初始化 — Neutron L2 Agent服务初始化

neutron server

2016-07-28 16:26:17 5082

原创 Neutron-server初始化 — RPC服务初始化

rpc服务初始化RabbitMQ基础概念详细介绍: http://blog.csdn.net/whycold/article/details/41119807 OpenStack的oslo_messaging组件使用,介绍RPC-server和PRC-client的创建,以及对cast和call的远程调用。http://blog.csdn.net/gj19890923/article/detail

2016-07-28 16:22:37 3272

原创 Neutron-server初始化 — Api服务初始化

Restful Api服务初始化api服务的实现是service.NeutronApiService,这是一个符合WSGI规范的app,通过paste进行配置。 neutron/neutron/service.pyclass WsgiService(object): """Base class for WSGI based services. For each api you def

2016-07-28 16:20:45 2162

原创 OpenStack之Neutron源码分析 Neutron-server初始化

Neutron是OpenStack中用于管理网络的项目。neutron代码的入口配置文件neutron/setup.cfg,我们可以通过这个文件了解整个项目的代码结构。部分setup.cfg内容如下:[entry_points]console_scripts = neutron-l3-agent = neutron.cmd.eventlet.agents.l3:main neut

2016-07-28 15:38:52 4155 3

原创 Devstack快速部署OpenStack Mitaka用户指南(by qiqishuang csdn)

本篇主要阐述通过DeveStack 去部署Openstack(mitaka),对大多数来说安装部署Openstack 来说是个痛苦的过程,尤其是 OpenStack和它依赖的一些组件在快速发展中,经常出现这个版本组件对不上那个版本 dashboard等情况。如果只是看看或者初期玩玩 OpenStack的话,使用DevStack也是个不错的办法。DevStack采用了自动化源码部署的方式,适用于开发环

2016-07-22 01:09:04 11079 1

原创 Centos代理上网设置

一、centos自带界面设置代理1. 界面设置 squid默认代理端口3128。2. firefox设置设置 -> 局域网设置 -> ip:port / username:passwd二、terminal分别设置代理1. 全局代理proxy文件目录vim /etc/profile添加如下http_proxy = http://username:password@yourproxy:808

2016-07-07 15:32:24 7906

原创 Java创建,解析XML片段文件,无根节点root

1. 创建xml文件包引用,需要导入如下三个包 *import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.w3c.dom.Document;import org.w3c.dom.Element;import java.util.ArrayList;import java.util.Collection;im

2016-06-12 15:33:47 2484 2

原创 Java发送http的get、post、put请求

1. HTTP GET请求/** * 向指定URL发送GET方法的请求 * * @param url 发送请求的URL * * @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。 * @return URL 所代表远程资源的响应结果*/pu

2016-06-12 10:31:44 18424 3

原创 Ubuntu 双网卡桥接brctl

1. 安装brctl-utils# apt-get install bridge-utils //安装配置brctl命令包2. 配置网卡桥接模式# brctl addbr br-test # brctl addif br-test eth1# brctl addif br-test eth2# ifconfig eth1 up# Ifconfig eth2 up配置完毕:br

2016-06-01 10:37:47 5916

原创 Kvm启动ubuntu虚拟机无法ssh

1. ssh:Connection refused1) ssh 120.0.0.11 Connection refusedroot@node2:/opt/zq# ssh [email protected]: connect to host 120.0.0.11 port 22: Connection refused2. 安装openssh-server1) apt-get安装,如果提示无法安

2016-05-31 17:57:50 3616

原创 Kvm启动ubuntu虚拟机无法联网

1. kvm是否启动镜像1) 现象:kvm启动qcow2 ubuntu虚拟机过程中,提示error were found when checking the disk drive for boot 2) 解决方案镜像硬盘引导坏了,建议更换qcow2镜像。更换完了镜像:启动后: 如图所示:有三个网卡driver,说明镜像启动过程中正确配置网卡。 Dhclient eth0可以看到网卡可以正确分

2016-05-31 16:55:02 4922

原创 Patch构建OVS网桥和OVS网桥相连的网络

将多个主机(物理机或虚拟机)连接到同一个网桥上,实现它们之间的通信,但是要构建复杂的网络,就需要多个网桥,在装有open vswitch的主机上建立两个网桥,实现它们之间的连接,构建结果如下:1. 新建网桥brovs-vsctl add-br br0 //添加一个名为br0的网桥ovs-vsctl add-br br1 //添加一个名为br0的网桥2. 新建虚拟端口并打patchovs-

2016-05-31 16:12:25 7477

原创 Ovs交换机环路

现象:node3节点挂了,从node4 ssh上去 ping不通网关192.168.19.254。 解决办法:现在通过串口minicom登录交换机,利用内置的安全保护机制阻止网络风暴。1. 先查看网桥是否正确连接node3:$ ovs-vsctl show:br-in br-out 2. minicom登录交换机并enableSwitch#show loggingSyslog logging:

2016-05-30 23:22:52 2214

原创 Openstack Neutron学习手册(by qiqishuang csdn)

Neutron 的设计目标是实现“网络即服务”,为了达到这一目标,在设计上遵循了基于“软件定义网络”实现网络虚拟化的原则,在实现上充分利用了 Linux 系统上的各种网络相关的技术。理解了 Linux 系统上的这些概念将有利于快速理解 Neutron 的原理和实现。1. OpenStack经典部署模式三节点(控制节点,计算节点,网络节点)部署模式 Vlan模式与Gre模式对比Vlan模式 在vl

2016-05-30 22:39:44 9539 1

原创 Ssh root权限连接不上远程主机,错误提示:publickey 秘钥

1. xshell生成密钥属性 -> 生成 openstack创建虚拟机,导入pub_key 2. 获取公钥,私钥root@node:~/.ssh#lsid_rsa id_rsa.pub3. ssh用户身份验证xshell输入 4. 开启root和key auth服务开启root登录权限PermitRootLogin yesPasswordAuthentication yes开启pu

2016-05-30 21:40:14 2619

原创 Kvm/qemu-img创建qcow2镜像

1. 制作ubuntu镜像qcow2创建qcow2硬盘文件root@node2:/opt# qemu-img create -f qcow2 ubuntu-server.qcow2 20GFormatting 'ubuntu-server.qcow2', fmt=qcow2 size=21474836480 encryption=off cluster_size=65536 lazy_refc

2016-05-30 21:20:03 14122

原创 手动为ubuntu虚拟机配置Ip地址

云环境中启动ubuntu虚拟机无法联网1. 配置ipubuntu的网络配置信息放在/etc/network/interfaces 中,sudo vim /etc/network/interfaces 如果配置动态获取ip,则在上述文件中加入以下内容:(注:服务器通常不用动态IP)auto eth0iface eth0 inet dhcp如果配置静态ip,则添加如下内容:auto eth0ifac

2016-05-30 20:54:59 8671 1

转载 Json概述以及python对json的相关操作

什么是json:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家

2015-09-09 17:25:47 571

转载 Java集合架构

JAVA集合小结: 有序否允许元素重复否Collection否是List是是SetAbstractSet否否

2015-09-02 20:44:39 530

原创 Vim常用命令

命令历史以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。启动vim在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件文件命令打开单个文件 vim file 同时打开多个文件 vim file1 file2 file3 … 在vim窗口中打开一个新文件 :open file 在

2015-09-02 20:39:13 512

转载 标识接口的作用

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-09-02 20:31:25 857

原创 Git常用命令

Git基本常用命令如下: git pull 从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地,例如:'git pull origin master'就是将origin这个版本库的代码更新到本地的master主枝,该功能类似于SVN的update git add 是将当前更改或者新增的文件加入到Git的索引中,加入到Git的索引中就表示记入了版本历史中,这也是提交之

2015-09-02 20:12:07 602

转载 Python建立最简单的web服务器

利用Python自带的包可以建立简单的web服务器。在DOS里cd到准备做服务器根目录的路径下,输入命令:python -m Web服务器模块 [端口号,默认8000]例如:python -m SimpleHTTPServer 8080然后就可以在浏览器中输入http://localhost:端口号/路径来访问服务器资源。 例如:ht

2015-09-02 14:19:08 522

转载 Git使用指南

一:Git是什么?       Git是目前世界上最先进的分布式版本控制系统。二:SVN与Git的最主要的区别?      SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够

2015-09-01 21:27:38 522

Gurobi_8.1.0版本 64&32;位 最新版本 支持Windows、Linux、Macos系统

Gurobi 可以解决的数学问题: 线性问题(Linear problems) 二次型目标问题(Quadratic problems) 混合整数线性和二次型问题(Mixed integer linear and quadratic problems) 突出的性价比。

2019-03-11

Python编程实战:运用设计模式、并发和程序库创建高质量程序(全球资深Python专家Doug Hellmann作序推荐,以3个完整的案例。

《python编程实战:运用设计模式、并发和程序库创建高质量程序》由python开发者社区知名技术专家mark summerfield亲笔撰写,全球资深python专家doug hellmann作序鼎力推荐,是python领域最有影响力的著作之一。 书中通过大量实用的范例代码和三个完整的案例研究,全面而系统地讲解了如何运用设计模式来规划代码结构,如何通过并发与cython等技术提升代码执行速度,以及如何利用各种python程序库来快速开发具体的应用程序和游戏。 《python编程实战:运用设计模式、并发和程序库创建高质量程序》共8章: 第1~3章分别介绍了python的几种设计模式(创建型设计模式、结构型设计模式和行为型设计模式); 第4章和第5章详细讲解了python的高级并发技术以及cython的用法; 第6章具体介绍了python的高级网络编程; 第7章阐释了如何用tkint er开发图形用户界面; 第8章讲解了如何用opengl绘制3d图形。

2018-10-14

2018.09 百度区块链白皮书V1.0 PDF

第一章 区块链发展概述.................................................................. 1 1.1 区块链概念 1.2 区块链价值 1.3 区块链发展现状 1.3.1 公有链与联盟链 ....................................................................................................................... 2 1.3.2 DApp 生态 ................................................................................................................................ 3 第二章 百度区块链整体架构.............................................................. 4 2.1 区块链行业痛点 2.1.1 当前区块链技术的性能制约 ................................................................................................... 4 2.1.2 智能合约的痛点 ....................................................................................................................... 4 2.1.3 共识机制的痛点 ....................................................................................................................... 5 2.1.4 计算和存储的痛点 ................................................................................................................... 5 2.1.5 网络建设的痛点 ....................................................................................................................... 5 2.2 XuperChain 网络介绍 2.2.1 运行结构 ................................................................................................................................... 6 2.2.2 共识机制 ................................................................................................................................... 6 2.2.3 超级节点 ................................................................................................................................... 7 2.2.4 智能合约 ................................................................................................................................... 8 2.2.5 立体网络技术 ........................................................................................................................... 9 2.2.6 轻量级节点技术 ..................................................................................................................... 11 2.2.7 可升级系统 ............................................................................................................................. 11 2.2.8 隐私保护和安全 ..................................................................................................................... 12 2.3 XuperChain 网络生态和基础设施 2.3.1 网络生态 ................................................................................................................................. 13 2.3.2 超级链 App ............................................................................................................................. 13 VII 2.4 结语 第三章 百度区块链商业化解决方案....................................................... 15 3.1 百度区块链商业化介绍 3.1.1 区块链即服务 BaaS 的现状和需求 ....................................................................................... 15 3.1.2 区块链商业落地的问题及应对 ............................................................................................. 15 3.1.3 百度区块链商业化布局 ......................................................................................................... 16 3.1.4 百度云区块链的产品和技术框架 ......................................................................................... 17 3.2 百度区块链行业落地案例 3.2.1 金融区块链场景案例 ............................................................................................................. 22 3.2.2 物联网区块链场景案例 ......................................................................................................... 23 3.3 百度云区块链的发展规划 第四章 百度区块链行业应用............................................................. 25 4.1 内容版权 4.1.1 内容版权领域的发展趋势 ..................................................................................................... 25 4.1.2 内容版权领域的痛点 ............................................................................................................. 25 4.1.3 内容版权的区块链解决方案 ................................................................................................. 26 4.1.4 内容版权未来的发展规划 ..................................................................................................... 28 4.2 信息溯源 4.2.1 互联网信息领域的痛点 ......................................................................................................... 28 4.2.2 百度百科在信息溯源的区块链解决方案 ............................................................................. 29 4.2.3 百度百科未来的发展规划 ..................................................................................................... 31 4.3 文化娱乐 4.3.1 文娱产业现状 ......................................................................................................................... 32 4.3.2 度宇宙的产品定位 ................................................................................................................. 33 4.3.3 度宇宙解决方案 ..................................................................................................................... 33 4.3.4 度宇宙未来的发展规划 ......................................................................................................... 36 4.4 信息安全 VIII 4.4.1 反恶意软件行业的痛点 ......................................................................................................... 36 4.4.2 反恶意软件区块链解决方案(休伯特) ............................................................................. 37 4.4.3 休伯特未来的发展规划 ......................................................................................................... 38 4.5 个体信息管理 4.5.1 个体教育信息管理领域的痛点 ............................................................................................. 39 4.5.2 个人教育信息的区块链解决方案(百度会学) ................................................................. 39 4.5.3 百度会学区块链的实现路径 ................................................................................................. 42 4.5.4 百度会学未来的发展规划 ..................................................................................................... 44 4.6 数字广告 4.6.1 数字广告领域的问题及应对 ................................................................................................. 44 4.6.2 通用搜索广告的区块链解决方案(百宝箱) ..................................................................... 46 4.6.3 百宝箱未来的发展规划 ......................................................................................................... 47 未来与展望............................................................................ 48

2018-09-27

Go语言编程-七牛云许世伟等PDF

第1章  初识Go语言 1.1  语言简史 1.2  语言特性 1.2.1  自动垃圾回收 1.2.2  更丰富的内置类型 1.2.3  函数多返回值 1.2.4  错误处理 1.2.5  匿名函数和闭包 1.2.6  类型和接口 1.2.7  并发编程 1.2.8  反射 1.2.9  语言交互性 1.3  第一个Go程序 1.3.1  代码解读 1.3.2  编译环境准备 1.3.3  编译程序 1.4  开发工具选择 1.5  工程管理 1.6  问题追踪和调试 1.6.1  打印日志 1.6.2  GDB调试 1.7  如何寻求帮助 1.7.1  邮件列表 1.7.2  网站资源 1.8  小结 第2章  顺序编程 2.1  变量 2.1.1  变量声明 2.1.2  变量初始化 2.1.3  变量赋值 2.1.4  匿名变量 2.2  常量 2.2.1  字面常量 2.2.2  常量定义 2.2.3  预定义常量 2.2.4  枚举 2.3  类型 2.3.1  布尔类型 2.3.2  整型 2.3.3  浮点型 2.3.4  复数类型 2.3.5  字符串 2.3.6  字符类型 2.3.7  数组 2.3.8  数组切片 2.3.9  map 2.4  流程控制 2.4.1  条件语句 2.4.2  选择语句 2.4.3  循环语句 2.4.4  跳转语句 2.5  函数 2.5.1  函数定义 2.5.2  函数调用 2.5.3  不定参数 2.5.4  多返回值 2.5.5  匿名函数与闭包 2.6  错误处理 2.6.1  error接口 2.6.2  defer 2.6.3  panic()和recover() 2.7  完整示例 2.7.1  程序结构 2.7.2  主程序 2.7.3  算法实现 2.7.4  主程序 2.7.5  构建与执行 2.8  小结 第3章  面向对象编程 3.1  类型系统 3.1.1  为类型添加方法 3.1.2  值语义和引用语义 3.1.3  结构体 3.2  初始化 3.3  匿名组合 3.4  可见性 3.5  接口 3.5.1  其他语言的接口 3.5.2  非侵入式接口 3.5.3  接口赋值 3.5.4  接口查询 3.5.5  类型查询 3.5.6  接口组合 3.5.7  Any类型 3.6  完整示例 3.6.1  音乐库 3.6.2  音乐播放 3.6.3  主程序 3.6.4  构建运行 3.6.5  遗留问题 3.7  小结 第4章  并发编程 4.1  并发基础 4.2  协程 4.3  goroutine 4.4  并发通信 4.5  channel 4.5.1  基本语法 4.5.2  select 4.5.3  缓冲机制 4.5.4  超时机制 4.5.5  channel的传递 4.5.6  单向channel 4.5.7  关闭channel 4.6  多核并行化 4.7  出让时间片 4.8  同步 4.8.1  同步锁 4.8.2  全局唯一性操作 4.9  完整示例 4.9.1  简单IPC框架 4.9.2  中央服务器 4.9.3  主程序 4.9.4  运行程序 4.10  小结 第5章  网络编程 5.1  Socket编程 5.1.1  Dial()函数 5.1.2  ICMP示例程序 5.1.3  TCP示例程序 5.1.4  更丰富的网络通信 5.2  HTTP编程 5.2.1  HTTP客户端 5.2.2  HTTP服务端 5.3  RPC编程 5.3.1  Go语言中的RPC支持与处理 5.3.2  Gob简介 5.3.3  设计优雅的RPC接口 5.4  JSON处理 5.4.1  编码为JSON格式 5.4.2  解码JSON数据 5.4.3  解码未知结构的JSON数据 5.4.4  JSON的流式读写 5.5  网站开发 5.5.1  最简单的网站程序 5.5.2  net/http包简介 5.5.3  开发一个简单的相册网站 5.6  小结 第6章  安全编程 6.1  数据加密 6.2  数字签名 6.3  数字证书 6.4  PKI体系 6.5  Go语言的哈希函数 6.6  加密通信 6.6.1  加密通信流程 6.6.2  支持HTTPS的Web服务器 6.6.3  支持HTTPS的文件服务器 6.6.4  基于SSL/TLS的ECHO程序 6.7  小结 第7章  工程管理 7.1  Go命令行工具 7.2  代码风格 7.2.1  强制性编码规范 7.2.2  非强制性编码风格建议 7.3  远程import支持 7.4  工程组织 7.4.1  GOPATH 7.4.2  目录结构 7.5  文档管理 7.6  工程构建 7.7  跨平台开发 7.7.1  交叉编译 7.7.2  Android支持 7.8  单元测试 7.9  打包分发 7.10  小结 第8章  开发工具 8.1  选择开发工具 8.2  gedit 8.2.1  语法高亮 8.2.2  编译环境 8.3  Vim 8.4  Eclipse 8.5  Notepad++ 8.5.1  语法高亮 8.5.2  编译环境 8.6  LiteIDE 8.7  小结 第9章  进阶话题 9.1  反射 9.1.1  基本概念 9.1.2  基本用法 9.1.3  对结构的反射操作 9.2  语言交互性 9.2.1  类型映射 9.2.2  字符串映射 9.2.3  C程序 9.2.4  函数调用 9.2.5  编译Cgo 9.3  链接符号 9.4  goroutine机理 9.4.1  协程 9.4.2  协程的C语言实现 9.4.3  协程库概述 9.4.4  任务 9.4.5  任务调度 9.4.6  上下文切换 9.4.7  通信机制 9.5  接口机理 9.5.1  类型赋值给接口 9.5.2  接口查询 9.5.3  接口赋值 附录A

2018-09-26

最新官方Go语言Windows 64位.MSI安装包

最新稳定版 1.11安装包 go1.11.windows-amd64.msi下载地址 https://golang.org/dl/,下载之后直接运行安装,安装路径就使用它默认的 C:\Go\ 即可,之后一路 Next 并完成安装。

2018-09-11

《区块链安全技术指南》_黄连金,吴思进,曹锋,季宙栋 等

黄连金 硅谷Dynamic Fintech Group管理合伙人、联合国旗下世界区块链组织(WBO)首席技术官、美国 ACM Practitioner Board 委员、美国分布式商业应用公司CEO和创始人、中国电子学会区块链专家委员、中国人大特聘研究员与讲师、美国CISSP专家、CyberVein 总顾问,多个成功区块链项目技术顾问。曾就职于美国CGI公司18年,任CGI安全技术总监、CGI云安全主管和首席安全架构师等职务,创建了CGI联邦身份管理和网络安全能力中心。在CGI工作时,曾经为美国联邦政府、金融机构和公用事业公司提供金融、人工智能、区块链、安全等方面的专家咨询。曾多次在国内外大型区块链峰会担任嘉宾、评委、培训专家。 作者简介 序一 多边界的区块链安全防守 序二 区块链安全观之我见 序三 安全是区块链发展和应用的基石 前言 第1章 详解区块链的安全属性 1 1.1 保密性 2 1.1.1 比特币的半匿名性 3 1.1.2 Hyperledger Fabric CA的动态交易证书 6 1.1.3 用零知识证明做数据加密 7 1.1.4 使用状态通道让数据不可见 10 1.1.5 同态加密 16 1.2 数据完整性分析 1.2.1 签名与验证 17 1.2.2 共识机制 17 1.2.3 数据上链 18 1.2.4 时间戳 18 1.2.5 开源 19 1.3 可用性 19 1.4 物理安全性 20 1.4.1 物联网和安全性 20 1.4.2 区块链和物联网 21 1.5 本章小结 22 第2章 主流区块链安全属性分析 23 2.1 比特币 23 2.2 以太币 31 2.3 Zcash 34 2.4 本章小结 37 第3章 应用与智能合约层的安全控制 39 3.1 Web与移动客户端应用安全 39 3.1.1 注入 39 3.1.2 失效的身份认证与会话管理 41 3.1.3 跨站脚本漏洞 42 3.1.4 不安全的直接对象引用 43 3.1.5 安全配置错误 45 3.1.6 敏感数据泄漏 46 3.1.7 功能级访问控制缺失 47 3.1.8 跨站请求伪造 48 3.1.9 使用已知易受攻击组件 49 3.1.10 未验证的重定向和转发 51 3.2 智能合约的安全 52 3.2.1 智能合约简介 52 3.2.2 智能合约安全编码的最佳实践 54 3.2.3 智能合约的几个安全漏洞 79 3.2.4 智能合约安全的开源工具 82 3.2.5 智能合约的形式化验证 85 3.2.6 智能合约的虚拟机安全 86 3.2.7 智能合约的安全开发过程建议 90 3.2.8 从DevOps到DevSecOps:智能合约开发须知 91 3.3 智能合约中的身份管理与访问控制 94 3.3.1 传统身份管理与访问控制系统的问题 94 3.3.2 智能合约的身份管理 95 3.3.3 身份链的定义和国外典型身份链的分析 97 3.3.4 身份链的生态系统 98 3.3.5 身份智能合约 99 3.3.6 区块链落地的身份管理与访问控制考虑 100 3.4 本章小结 101 第4章 激励层安全机制设计 103 4.1 激励的产生和分配 103 4.1.1 激励机制价值 103 4.1.2 比特币激励 104 4.1.3 以太币激励 106 4.1.4 其他通证激励 108 4.2 激励层安全分析 111 4.2.1 通证激励模式的安全隐患 111 4.2.2 通证激励安全事件分析 112 4.2.3 通证激励安全事件反思 115 4.2.4 通证激励的法律风险 116 4.2.5 通证激励的安全措施 118 4.3 本章小结 119 第5章 网络层安全与控制 121 5.1 P2P加密 121 5.1.1 区块链与P2P网络的关系 121 5.1.2 区块链上的P2P应用与加密 122 5.2 客户端与节点通信加密(联盟链) 126 5.2.1 恶意客户端作恶方式及后果 126 5.2.2 P2P网络安全机制 128 5.2.3 联盟链如何确保客户端和节点的可信任 129 5.2.4 主流联盟链通信安全实现剖析 133 5.3 防御DDoS攻击 138 5.3.1 例说DDoS攻击危害与处理 139 5.3.2 区块链网络如何防御DDoS攻击 142 5.4 本章小结 144 第6章 数据层与共识安全 145 6.1 区块链数据加密技术的应用 145 6.1.1 如何使用这些加密技术形成区块链 145 6.1.2 安全性阐述 149 6.2 数据传输 151 6.2.1 加密数据传输 151 6.2.2 数字证书的定义 152 6.2.3 超级账本中CA的实现 152 6.3 区块链交易签名 163 6.3.1 数字签名与交易安全 163 6.3.2 典型的数字签名技术剖析 166 6.4 共识攻击 168 6.5 区块链安全性考虑 174 6.6 本章小结 175 第7章 私钥的安全 177 7.1 私钥安全的重要性 177 7.2 主流区块链私钥的使用方法和问题分析 178 7.3 私钥保护的正确“姿势” 184 7.4 硬件钱包介绍 185 7.5 移动钱包如何提升安全性 187 7.6 浅析私钥更新、找回与吊销 192 7.7 本章小结 194 附录A 区块链安全基础概念、原理与分析方法 195 附录B 区块链的DAG技术和安全分析 211 附录C 企业级数字资产保护 219

2018-09-06

空空如也

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

TA关注的人

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