深入浅出区块链 Day2

双花攻击是指一个代币被花费了两次,这在任意的区块链系统中是不被允许的。如果避免了双花问题,基本就能避免上述作弊中收益过大的问题,因为攻击者首先要窃取到你的私钥,同时又能控制了你的计算资源(算力)。

所有记账节点都会遵循以下两条规则: 规则一:一个代币如果已经被花费,那么会被标记成已花费,如果再次接收到这个代币被花费的请求,那么记账节点会拒绝打包这笔交易; 规则二:如果同时接收到两个信封,这两个信封中装的两笔交易出现了一个代币被花费了两次的情况,这种情况也就是我们所说的分叉(Fork),那么选择挖矿难度比较大的那个信封。 规则一避免了未确认的交易出现双花,规则二基本避免已经确认的交易中(信封中)的双花问题。 假设作弊者的计算资源(算力)占整个系统的 30%,那么连续两次获得记账权的概率是 9%,看起来作弊的可能性还是挺高的,如果是连续 6 次获得记账权呢?概率直降到万分之七。

相关推荐
dleei4 分钟前
MySql安装及SQL语句
数据库·后端·mysql
CryptoPP19 分钟前
springboot 对接马来西亚数据源API等多个国家的数据源
spring boot·后端·python·金融·区块链
Source.Liu33 分钟前
【学Rust写CAD】27 双线性插值函数(bilinear_interpolation.rs)
后端·rust·cad
yinhezhanshen37 分钟前
理解rust里面的copy和clone
开发语言·后端·rust
uhakadotcom44 分钟前
Helm 简介与实践指南
后端·面试·github
栗筝i1 小时前
Spring 核心技术解析【纯干货版】- XIX:Spring 日志模块 Spring-Jcl 模块精讲
java·后端·spring
企鹅不耐热.1 小时前
Scala基础知识6
开发语言·后端·scala
程序员一诺2 小时前
【Django开发】前后端分离django美多商城项目第15篇:商品搜索,1. Haystack介绍和安装配置【附代码文档】
后端·python·django·框架
冷琅辞2 小时前
Go语言的嵌入式网络
开发语言·后端·golang
跟着珅聪学java4 小时前
spring boot +Elment UI 上传文件教程
java·spring boot·后端·ui·elementui·vue