- 博客(16)
- 收藏
- 关注
原创 K-Time Modifiable and Epoch-Based Redactable Blockchain【论文笔记】
我们都知道区块链的五大特性。去中心化、不可篡改性(安全性)、可回溯性、匿名性、开放性。这篇文章主要还是解决不可篡改性给我们带来的隐患!它本身是优点,但本质上也是缺点。当涉及到一些法律问题(言论自由,性别平等等)加载到区块链上时,由于无法修改该数据,那此时当事人是否承担法律责任?当事人非故意发表此言论又或者有第三方故意发表,那此时又应该由谁承当责任?而这篇文章给出了更好的解决方案。区块链是可允许分叉的,且区块交易需要验证。
2023-11-13 10:18:21
384
翻译 第三章:以太坊智能合约单位、表达式、全局变量及函数、控制结构
第三章:以太坊智能合约单位、表达式、全局变量及函数、控制结构第三章:以太坊智能合约单位、表达式、全局变量及函数、控制结构提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录第三章:以太坊智能合约单位、表达式、全局变量及函数、控制结构Solidity 中的单位货币单位(Ether Unit)时间单位( Time Unit)Solidity 全局变量及函数区块和交易的属性ABI 编码函数错误处理函数数学及加密功能相关属性和函数相关属性和函数Solidity 表达式及控制结构控制结构
2020-08-30 21:38:30
1208
2
翻译 第二章:以太坊智能合约内容、数据类型的认识
第二章:以太坊智能合约内容Solidity 文件结构合约版本声明引入其他源文件合约结构Solidity数据类型整形(Integer)定长浮点型(Fixed Point Number)定长字节数组(Fixed-size Byte Array)有理数和整型常量(Rational and Integer Literal)字符串常量(String Literal)十六进制常量(Hexadecimal Literal)枚举(Enum)函数类型(Function Type)selector 成员属性地址类型(Addre
2020-08-29 21:09:21
681
翻译 第一章:以太坊智能合约的学习
第一章:以太坊的学习第一个智能合约:区块链基础概念交易/事务(Transaction):区块:共识协议:工作量证明(PoW)权益证明(PoS)以太坊虚拟机(EVM)编译合约账户钥匙文件账户状态以太坊钱包交易消息调用费用( gas)思考费用的作用以太坊网络主网(Mainnet)测试网络(Testnet)私有网络、开发者模式模拟环境网络存储、内存和能委托调用和库日志自毁以太坊路线图学习内容:第一个只能合约与区块链知识第一个智能合约:首先我们知道以太坊的编译智能合约的工具是solidity。pragm
2020-08-27 17:31:46
1018
原创 ecc算法的代码实现
ecc算法的代码实现文章目录ecc算法的代码实现什么是ecc算法有关与go语言的ecc包具体实现流程代码实现使用以太坊的ecc加密算法实现以太坊的crypto模块sha3模块secp256k1模块以太坊ecc的简单模式实现ecc密钥对与[]byte类型转换什么是ecc算法Elliptic curve cryptography,椭圆曲线密码学,即ECC。是一种建立公开密钥加密的算法,基于椭圆曲线数学。椭圆曲线在密码学中的使用是在1985年由Neal Koblitz和Victor Miller分别独立提
2020-08-26 11:30:50
3298
原创 第一章:区块链-fabric-sample/first-network之Docker-compose-cli.yaml
first-network下载first-network工程在github上的fabric-sample下比较齐全的流程。fabric-sample下载地址:https://github.com/hyperledger/fabric-samplesfrist-network的tree图我将围绕这些文件解析一遍。包括一些常见问题,错误,总结起来。Docker-compose-cli.yaml:docker-compose文件一些配置请查看上一章docker的网址进行学习,这里不再赘述。该文
2020-07-18 17:45:13
971
原创 第零章:区块链-Hyperledger-Fabric-技术栈
概要:本章将不介绍hyperledger-fabric的基本操作。会讲解fabric1.4的frist-network的所有文件解析,与2.0版本之后的操作【了解1.4跨越到2.0时代的变化!并附带操作】话不多说,让我们去探索fabric的奥妙吧。涉及到的知识:docker、shell、levelDB、couchDB、ca、etcd、kafka…第一章:区块链-fabric-sample的第一个网络之Docker-compose-cli.yaml...
2020-07-18 17:44:48
355
2
原创 区块链-docker与docker-compose的学习
docker 与docker-compose的使用一些常用且重要的代码:确保Docker守护程序正在运行。sudo systemctl start docker如果要在系统启动时启动docker守护程序,请使用以下命令。sudo systemctl enable docker将您的用户添加到docker组。sudo usermod -a -G docker <username>删除所有镜像docker rm -f $(docker ps -aq)docker rmi -
2020-07-16 16:23:37
555
原创 区块链-超级账本Hyperledger-fabric初步认识
Fabric的整体架构交易流程1. 应用程序通过SDK发送请求到Peer节点(一个或多个) 即发起交易客户A发起交易请求:合约设置的背书策略规定所有交易需要经过两个Peer节点的签名背书,因此请求需要被同时发往Peer A和Peer B.客户端应用程序利用任意SDK(nodeJS,java,go)构造交易提案。该提案是一个调用智能合约功能函数的请求,用来确认哪些数据可以读取或写入账本(即更新资产的Key/Value)。SDK将交易提案打包为可识别的格式(如gRPC上的protocol buf
2020-07-16 15:43:10
1963
1
翻译 第五章 etcdctl的高级与用法
1、快照1.1、恢复集群生成快照:etcdctl --endpoints=http://127.0.0.1:12379 snapshot save snapshot.db创建etcd数据目录:etcdctl snapshot restore snapshot.db --name m1 --initial-cluster m1=http://host1:2380,m2=http://host2:2380,m3=http://host3:2380 --initial-cluster-token et
2020-07-01 16:13:49
2366
翻译 第四章 Etcd API的使用
1、键值 API:etcdctl的API分为v2与v3版本,因为版本不同,使用的方法、功能、性能也会有所不同。我们先来说v2与v3的区别:使用 gRPC+protobuf取代 HTTP+JSON 通信,提高通信效率;另外通过gRPCgateway 来继续保持对 HTTPJSON 接口的支持。为什么要使用protobuf?因为protobuf 的效率很高。在fabric中也使用protobuf来进行json与protobuf来相互转换。使用更轻量级的基于租约( lease)的 key 自动过期机
2020-06-30 20:34:41
1460
1
翻译 第三章 介绍etcdctl的命令代码
1 、详细介绍etcdctl1.1、租约设置租约。为key设置时间,时间过去之后,数据将自动清除。设置租约的时间:[这里设置为120秒]etcdctl lease grant 120返回一个租约的字符串编码号,设置租约时–lease需要填上该信息。查看租约列表:etcdctl lease list查看租约的过期时间与租约时间:图中的Remaining剩余的过期时间etcdctl lease timetolive 018f6d7bb11aba0d [查看租约信息]:每次租约之
2020-06-30 16:47:50
1722
3
翻译 第二章 Etcd的初步认识
本文章主要讲解实操与重要知识点,理论知识较少,若不清楚etcd是什么,请自觉百度初步认识以下。1 、Etcd的一些常见的应用场景1.1、服务注册发现: 如下图所示:Etcd充当服务注册方的角色。当请求方—>提供方—>注册方,发现2宕机了,服务注册方会删掉2,且选择改成1,3。请求方会继续查找注册方的服务。1.2、配置中心:实际上就是实现了热加载,时时更新数据,不需要先关闭网络,在更新数据,然后再启动网络。只需要直接时时启动,修改即可。这时候就要问了,那为什么要用etcd,而不
2020-06-30 15:49:51
600
3
翻译 第一章 初步学习etcdraft
初步学习etcdraft1 何为raft?为什么我们要学习etcdraft?2 raft怎么去保证一致性?3 leader选举3.1 **任期term:**3.2 RequestVote4 日志复制4.1日志匹配特性4.2 leader崩溃4.3 提交之前任期内的日志条目功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数
2020-06-22 11:27:21
1215
原创 我们来讲讲mybatis plus的用法吧!
Mybatis plusMyBatis与JPA的比较Lambda:使用的常用注解:核心查询:1、T SelectById(Serializable id):serializable可以是任何数据类型。进行查询。2、例题3、例题:4、Wrapper的查询例题1:例题2:例题3:例题4:例题5:例题6:例题7:例题8:例题9:condition作用:实体作用为条件构造方法参数allEq:MyBati...
2020-03-30 21:36:46
399
原创 java的十大排序实现
java的十大排序实现排序算法的复杂度一.冒泡排序代码算法复杂度二.选择排序代码算法复杂度三.插入排序代码算法复杂度四.希尔排序代码算法复杂度五.归并排序代码算法复杂度六.快速排序代码算法复杂度七.堆排序代码算法复杂度八.计数排序代码算法复杂度九.桶排序代码算法复杂度十.基数排序代码算法复杂度排序算法的复杂度一.冒泡排序具体介绍:冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一...
2020-03-22 15:47:56
702
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人