java手写区块链
文章平均质量分 58
摊牌了,准备用java手写一个联盟链底层,会参照前人的经验和案例自己动手写起来。从而提升自己对区块链技术的理解!~
优惠券已抵扣
余额抵扣
还需支付
¥39.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
向彪-blockchain
一个来自于神秘湘西的程序猿,JAVA出身目前专注于区块链的应用落地研究,共享、共识、共建、共赢!智慧湘西,因你我而美丽,努力加强家乡信息化建设!
展开
-
区块链常用数据库leveldb用java来实现常规操作
前言LevelDB 是一种Key-Value存储数据库百度百科上介绍 性能非常强悍 可以支撑十亿级这段时间在研究区块链的时候发现的这个数据库。LevelDB 是单进程的服务,性能非常之高,在一台4核Q6600的CPU机器上,每秒钟写数据超过40w,而随机读的性能每秒钟超过10w。 此处随机读是完全命中内存的速度,如果是不命中 速度大大下降,LevelDB 只是一个 C/C++ 编程语言的库, 不包含网络服务封装, 所以无法像一般意义的存储服务器(如 MySQL)那样, 用客户端来连接它. LevelDB原创 2021-02-02 14:28:26 · 7054 阅读 · 4 评论 -
java实现区块设计
package com.mindata.blockchain.block;import java.util.List;/** * 区块body,里面存放交易的数组 * @author wuweifeng wrote on 2018/2/28. */public class BlockBody { private List<Instruction> instructions; @Override public String toString() { .原创 2021-01-27 15:02:23 · 2006 阅读 · 0 评论 -
java实现区块链联盟链中的PBFT拜占庭算法中节点加入view同步及共识过程
前言在联盟链中,联盟各个节点往往都来自同一行业,有着共同的行业困扰和痛点,因此联盟链往往注重对实际问题的高效解决。而 公链中PoW 算法相对低效且费时费力,因此在联盟链中并不适用。相反在公链中很小适用的PBFT 算法在联盟链中却有用武之地。因此我们来研究研究。一、PBFT是什么,先看看原理?PBFT(Practical Byzantine Fault Tolerance)共识算法可以在少数节点作恶(如伪造消息)场景中达成共识,它采用签名、签名验证、哈希等密码学算法确保消息传递过程中的防篡改性、防伪造性原创 2021-01-20 14:39:30 · 12638 阅读 · 13 评论 -
java实现同态加密算法
什么是同态加密?同态加密是上世纪七十年代就被提出的一个开放问题,旨在不暴露数据的情况下完成对数据的处理,关注的是数据处理安全。想象一下这样一个场景,作为一名满怀理想的楼二代,你每天过着枯燥乏味的收租生活,希望摆脱世俗的枷锁、铜臭的苟且去追求诗与远方。你需要雇一个代理人去承担收租的粗活,但又不希望其窥探你每月躺赚的收入。于是,你请高人打造了一套装备,既能保证代理人顺利完成收租,又不会泄露收入信息。这套装备包括信封、胶水、皮夹和神奇剪刀,每一样东西都有奇特的功能: 信封一旦用胶水密封,只有原创 2020-12-29 17:16:57 · 11599 阅读 · 10 评论 -
分布式一致性之二阶段提交协议
1 二阶段提交二阶段提交的算法思路可以概括为: 参与者将操作成败通知协调者,再由协调者根据所有参与者的反馈情报决定各参与者是否要提交操作还是中止操作。二阶段是指: 第一阶段 - 请求阶段(表决阶段) 第二阶段 - 提交阶段(执行阶段)1.请求阶段(表决):事务协调者通知每个参与者准备提交或取消事务,然后进入表决过程,参与者要么在本地执行事务,写本地的redo和undo日志,但不提交,到达一种"万事俱备,只欠东风"的状态。请求阶段,参与者将告知协调者自己的决策: 同意(事务参与者本地...原创 2020-12-09 09:43:48 · 1679 阅读 · 0 评论 -
java基于t-io框架实现区块链中的p2p网络构建模拟区块信息同步
前言上次我们用java实现了默克树,这次我们用java基于t-io框架实现区块链中的p2p网络构建,实现通信的功能,当然,实现p2p也可以基于WebSocket!下次我们再来实现一下。一、t-io是什么?常见应用场景:IM(官方提供了im例子,含web端)实时监控推送服务(已内置API)RPC游戏物联网(已有很多案例)其它实时通讯类型的场景,不一一列举t-io是一个网络框架,从这一点来说是有点像 netty 的,但 t-io 为常见和网络相关的业务(如 IM、消息推送、RP..原创 2020-10-30 16:38:57 · 16427 阅读 · 21 评论 -
Java实战手写区块链中的Merkle树
文章目录前言一、Merkle树简介二、java实现1.代码如下:2.测试总结前言学习区块链技术,那么Merkle树不得不去深入了解。本文将用java手写Merkle树一、Merkle树简介 Merkle树是1979 年Ralph Merkle提出并用自己名字命名的一种数据结构。什么是 Merkle 树呢?维基百科中对 Merkle 树的定义如下:在密码学和计算机科学中,哈希树或 Merkle 树是一种树,其中每个叶子节点都标记有数据块的哈希,而每个非叶子节 ,点都标记有其子节,或标签的原创 2020-10-22 12:34:50 · 5532 阅读 · 12 评论 -
java中使用国密SM4算法详解
文章目录前言一、使用步骤1.引入库2.创建maven测试工程2.开始编写对称加密SM4测试方法3.测试结果二、如何定制自己的密钥?如下面的代码所示:总结前言上次总结了一下加密算法的分类(加密算法有几种形式,各有什么不同?),现在我们用java语言实现一下SM4:无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位。ps:我们既可以基于Java 原生实现加密和解密,又可以基于第三方的工具包实现。下面我们首先介绍基于第三方工具包 hutool,如果是项目的话建议直接使用第三方的工具。原创 2020-10-21 11:40:30 · 21914 阅读 · 16 评论