自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Venus的专栏

金星(Venus)是全天中除太阳、月球外最亮的星,犹如一颗耀眼的钻石,古希腊人称它为阿佛洛狄忒--爱与美的女神,而罗马人则称它为爱神。...

原创 关于synchronized使用、实现原理

引言 在 Java 中,关键字 synchronized可以保证在同一个时刻,只有一个线程可以执行某个方法或者某个代码块(主要是对方法或者代码块中存在共享数据的操作)【互斥】。 synchronized可以保证同一时刻,只有一个线程能获取对象监视器,去执行一个方法或者某个代码块,所以它具有互斥性...

2020-05-26 22:09:06 11 0

原创 Collections.synchronizedCollection创建线程安全的集合

用Collections.synchronizedCollection创建线程安全的集合 Collection c=Collections.synchronizedCollection(new ArrayList()); List list=Collections.synchronizedLi...

2020-05-22 22:43:12 25 0

原创 Java中的Copy-On-Write容器:读写分离

http://ifeve.com/java-copy-on-write/#more-10403 https://baijiahao.baidu.com/s?id=1648624077736116382&wfr=spider&for=pc https://blog.csdn.net/...

2020-05-21 22:10:55 39 0

转载 数据结构:数组、链表、栈、队列、堆

https://www.cnblogs.com/jimoer/p/8783604.html 解释定义 数据结构: 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。再简单描述一下:数据结构就是描述对象间逻辑关系的学科。 如果还是不太清楚下面会举例说明的。 数据存储结构: 简单的讲就是数据...

2020-05-14 19:06:47 33 0

原创 智能合约隐私计算之再谈Paillier同态加密算法

1.同态加密实现 1.1.Paillier加法同态加密算法 Paillier加密算法[1]是1999年Paillier发明的基于复合剩余类的困难问题的加法同态加密算法。 (1)秘钥生成 随机选择两个大质数p和q满足gcd(pq,(p−1)(q−1))=1gcd(pq, (p−1)(q−1))=1...

2020-05-09 21:31:57 112 0

原创 智能合约隐私计算之同态加密应用举例

本文首发公众号 VenusBlockChain,关注公众号后可免费阅读!VenusBlockChain 致力于区块链技术研究,传播区块链技术和解决方案、区块链应用落地、区块链行业动态等。 1 同态加密应用 匿名投票可以应用于电子政务决议、团体活动投票、公司股东大会决议、明星海选投票等诸多场景,对...

2020-05-07 19:25:18 185 0

原创 智能合约隐私计算之开篇

在区块链中,隐私主要分为身份隐私和交易隐私,身份隐私主要指的是区块链地址信息与现实生活中的身份相对于的关系。交易隐私指的是区块链上公开的信息,如输入输出地址、交易金额,以及地址之间的关系等,地址之间的关系通常指的是用户使用一个地址向另一个地址转账并且余额转入零钱地址从而暴露地址之间的关系。 在隐私...

2020-05-06 22:17:55 66 0

原创 图解ECDSA签名与验签基本原理

本文首发公众号VenusBlockChain,关注公众号后可免费阅读!VenusBlockChain致力于区块链技术研究,传播区块链技术和解决方案、区块链应用落地、区块链行业动态等。 1 ECDSA算法 首先,需要设置参数(a,b,p,N,G)(a,b,p,N,G)(a,b,p,N,G)来初始化...

2020-04-27 22:46:19 141 0

原创 图解BLS签名与验签基本原理

1 曲线配对 此内容不再此处赘述,可阅读我的另一篇文章:双线性映射e函数 2 BLS签名 为了描述BLS如何实现签名,先定义一些符号。用 pkpkpk 代表私钥,P=pk∗GP = pk\ast GP=pk∗G 代表公钥,mmm 代表要签名的消息。为了计算签名,先对消息求曲线哈希 H(m)H(m)...

2020-04-26 21:48:28 83 0

原创 BLS签名理论原理和工程实现

双线性映射e函数 BLS签名算法就是基于双线性映射构造的,在给出具体的签名算法之前,我们需要了解一下什么是双线性映射。 对于一个质数双线性群可以由五元组(p,G1,G2,GT,e)(p,G1,G2,GT,e)(p,G1,G2,GT,e)来描述。五元组中ppp是一个与给定安全常数λλλ相关的大质数,...

2020-04-24 17:51:20 156 0

原创 基于RSA的实用门限签名

1 门限签名 2 基于RSA的门限签名 2.1 系统初始化 系统中有lll个参与者,编号分别为1,...,l1,...,l1,...,l,有一个可信的dealer和一个敌手adversary。dealer选择两个长度(512bit)相等的素数ppp和qqq,设p=2p′+1,q=2q′+1p=2p...

2020-04-23 13:39:20 476 0

原创 一种高效的数字签名算法Ed25519

概要 Ed25519是一个数字签名算法,签名和验证的性能都极高: 一个4核2.4GHz 的 Westmere CPU,每秒可以验证 71000 个签名,每秒可以生成109000个签名; 安全性极高,等价于RSA约3000-bit; 签名过程不依赖随机数生成器,不依赖hash函数的防碰撞性,没有时...

2020-04-02 16:24:38 236 0

原创 超级账本2020年第三期网络研讨会:Fabric2.0隐私数据PPT

网络研讨会发言人介绍:乔文剑,IBM区块链团队工程师,Fabric活跃贡献者之一,主要负责账本、背书、交易验证和隐私数据的开发。 ...

2020-03-26 23:30:34 119 0

原创 “环签名、Pedersen承诺、范围证明”三者可擦出不一样的火花

1.输入输出平衡证明,承诺什么是aG+bH 在Monero中,基于Pedersen承诺是构造范围证明的重要密码学工具。对于输入输出平衡证明,即∑Ci,in=∑Cj,out∑C_{i,in}=∑C_{j,out}∑Ci,in​=∑Cj,out​。在构造Pedersen承诺时,随机选择盲因子rrr,最...

2020-03-26 22:27:57 134 0

原创 隐私保护利器之环签名实现原理

目前,在匿名币中隐私保护方案中,使用到的密码学技术有环签名[1][2](Ring Signature)、同态加密、零知识证明、其他签名等等技术。除了门罗币以外,在由中国信息通信研究院发布的《数据流通关键技术白皮书1.0》中也提到这项技术[3]。今天来说说环签名技术的实现原理和实践应用。 1.环签...

2020-03-26 22:10:03 296 0

翻译 基于安全多方计算的区块链智能合约执行系统

2020-03-24 22:50:31 88 0

转载 区块链跨链技术研究

2020-03-23 22:48:00 46 0

翻译 主流跨链技术对比

目前主流跨链机制,公证人模式、侧链/中继模式、哈希锁定、分布式私钥控制、公证人机制+侧链混合技术,从双链之间互操作性,链操作信任模式,面对交易方面从是否支持跨链的资产交换、资产转移、资产抵押,技术本身方面交易速度、实现难度、多币种智能合约,多方面、多角度进行对比分析,得出分析结果如表1所示。从互操...

2020-03-23 18:03:01 58 0

转载 密码学技术背后的计算困难性理论

本文原创 李昊轩 微众银行区块链 ————密码学技术易守难攻,困难性理论当居首功! 1.开篇 隐私保护为何选用密码学算法?密码学算法背后有哪些神奇的数学理论?3何时比9大?计算可逆性错觉究竟是如何在数学领域被打破? 2.神奇的“不对称性” 在现代密码学中,关于不对称性,大家最熟悉的概念...

2020-03-18 23:32:24 190 0

转载 有趣的椭圆曲线加密

一、概述 椭圆曲线加密算法依赖于椭圆曲线理论,后者理论涵盖的知识比较深广,而且涉及数论中比较深奥的问题。经过数学家几百年的研究积累,已经有很多重要的成果,一些很棘手的数学难题依赖椭圆曲线理论得以解决(比如费马大定理)。 本文涉及的椭圆曲线知识只是抽取与密码学相关的很小的一个角落,涉及到很浅的理论的...

2020-03-18 23:02:44 106 0

转载 双线性群简介与基本运算

现在密码学实现基本只使用Type A和Type A1的。前者为对称质数阶双线性群,后者为合数阶对称双线性群。本博客也只在这两类曲线上实验。其他类曲线的实现类似

2020-03-18 21:51:18 307 0

原创 合数阶对称双线性群对应的椭圆曲线Type a1初始化方法

在jPBC中,双线性群的使用都是通过叫做Pairing的对象来实现的。双线性群的初始化在jPBC中就是对Pairing对象的初始化。双线性群有两种初始化的方法。第一种是通过代码动态产生一个双线性群,第二种是从文件中读取参数而产生群。 通过代码动态产生 Type A1曲线需要二个参数:numPrim...

2020-03-18 15:07:26 146 8

原创 分布式一致性协议之Raft

关于Raft协议,有两篇经典的论文,一篇小论文是《In search of an Understandable Consensus Algorithm》,这是作者最开始讲述Raft算法原理的论文,但是这篇论文太简单了,很多算法的细节没有涉及到。更详细的大论文是《CONSENSUS: BRIDGIN...

2020-03-15 22:04:29 68 0

原创 分布式系统核心问题

1.一致性问题 一致性:consistency,或者agreement,是对分布式系统中的多个服务节点,给定一系列操作,在约定协议的保障下,试图使得它们对处理结果达成“某种程度”的认同。 2.共识与一致性的关系 共识(consenus),多指分布式系统中多个副本对外呈现的数据的状态,一致性描述的...

2020-03-14 23:44:49 290 0

原创 代理重加密(Proxy Re-Encryption)技术原理和Java代码实现

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数...

2020-03-13 22:24:05 472 2

原创 拉格朗日插值法

1. 拉格朗日插值法简介 在数值分析中,拉格朗日插值法是以法国十八世纪数学家约瑟夫·拉格朗日命名的一种多项式插值方法。许多实际问题中都用函数来表示某种内在联系或规律,而不少函数都只能通过实验和观测来了解。如对实践中的某个物理量进行观测,在若干个不同的地方得到相应的观测值,拉格朗日插值法可以找到一个...

2020-03-12 22:38:27 124 0

原创 门限密钥共享技术原理

门限密钥共享技术(Threshold Key SharingScheme)解决的是密钥安全管理问题。 现代密码学体制的设计是使得密码体制的安全性取决于密钥安全,密钥的泄露就意味着体制失去了安全性,因此密钥管理在密码体制的安全性研究和设计中占有重要的地位。特别是多方利益体共同管理一个账户时,账户的密...

2020-03-12 21:21:30 284 0

原创 安全多方计算技术介绍

安全多方计算(Secure Multi-party Computa-tion)是分布式密码学的理论基础,也是分布式计算研究的一个基本问题,最早由姚期智于1982年通过姚氏百万富翁问题提出。简单的说,安全多方计算是指一组人,比如P1....PnP _1 ....P_ nP1​....Pn​ ,共同安...

2020-03-11 22:30:31 203 0

转载 一文读懂哈希时间锁的合约机制、改进方向与应用场景

哈希时间锁起源于闪电网络,而后应用到 Interledger、雷电网络、Sprites 通道等。 撰文:钱柏均,就职于 HashKey Capital Research 审校:邹传伟,万向区块链、PlatON 首席经济学家 本文研究哈希时间锁的合约机制、主要特点、应用瓶颈以及改进方向。哈希时间锁...

2020-03-11 22:18:53 397 0

转载 读懂比特币 ECDSA 与 Schnorr 签名算法

2020 年 1 月,由比特币核心开发人员 Pieter Wuille 于去年 5 月提出的 Taproot/Schnorr 软分叉升级提案已正式作为比特币改进提案(BIPs)发布,相关提案序号为 BIP 340-342。Taproot/Schnorr 升级如果获得社区支持,将是比特币自闪电网络上...

2020-03-11 21:22:12 159 0

原创 基于属性加密方案(CP-ABE,KP-ABE)

1.背景 区块链典型的一个应用场景是资源共享,而在实际应用中,很多参与者的数据很涉及机密,数据所有者并不乐意把自己的数据公开出来。数据明文在链上存证后,虽然共享给其他人,但是数据被所有的人都能查看,不存在一点私密性。如果数据所有者将数据使用自己的秘钥加密后在链上存证后,能实现数据的隐私保护,但是...

2020-03-11 12:01:48 1309 0

原创 智能合约隐私保护技术之同态加密

1.同态加密简介 1.1.定义 同态加密(Homomorphic Encryption)是一种特殊的加密方法,允许对密文进行处理得到仍然是加密的结果。即对密文直接进行处理,跟对明文进行处理后再对处理结果加密,得到的结果相同。从抽象代数的角度讲,保持了同态性。 同态加密是基于数学难题的计算复杂性理论...

2020-03-09 22:35:53 579 0

转载 PlatON共识方案详解:应用CBFT共识协议,提高共识效率

摘要 PlatON提出了一种基于部分同步假设情形下的并行拜占庭容错协议CBFT(Concurrent Byzantine Fault Tolerance),解决区块链共识效率的问题。 PlatON提出了一种基于部分同步假设情形下的并行拜占庭容错协议CBFT(Concurrent Byzantine...

2020-05-26 17:19:45 36 0

转载 ConcurrentHashMap 原理解析(JDK1.8)

https://www.jianshu.com/p/d10256f0ebea

2020-05-22 22:51:06 19 0

转载 人工智能、机器学习和深度学习的区别?

人工智能的浪潮正在席卷全球,诸多词汇时刻萦绕在我们耳边:人工智能(Artificial Intelligence)、机器学习(Machine Learning)、深度学习(Deep Learning)。不少人对这些高频词汇的含义及其背后的关系总是似懂非懂、一知半解。为了帮助大家更好地理解人工智能,...

2020-05-20 15:08:14 54 0

原创 java.lang.Object 对象中 hashCode 和 equals 方法详解

1.Object对象有哪些方法? 下面,总结一下hashCode()方法和equals()方法。 2.hashCode方法 2.1.什么是hashCode? 1、hashCode(散列码)是JDK根据对象的地址或者字符串或者数字算出来的int类型的数值,也就是哈希码,哈希码是没有规律的,它是一...

2020-05-20 08:34:40 45 0

转载 firewall防火墙

1、查看firewall服务状态 systemctl status firewalld 出现Active: active (running)切高亮显示则表示是启动状态。 出现 Active: inactive (dead)灰色表示停止,看单词也行。 2、查看firewall的状态 firewall...

2020-05-14 15:02:45 22 0

原创 Docker停止和删除容器

$ docker ps // 查看所有正在运行容器 $ docker stop containerId // containerId 是容器的ID $ docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID $ docker stop $(d...

2020-05-14 14:27:27 26 0

原创 智能合约隐私计算之基于FO承诺的零知识承诺相等性证明和平衡验证

1.承诺相等性证明 设t,l,s1,s2t,l,s_1,s_2t,l,s1​,s2​为公开的安全参数,nnn为一个大合数,其因式分解Alice和Bob未知。对于xxx的两个承诺,分别为Ei(x,ri)=gixhirimodn,i=1或2E_i(x,r_i)=g_i^xh_i^{r_i}modn,i...

2020-05-13 19:51:22 77 0

转载 门限签名介绍

近几年门限密码学在区块链系统里开始逐渐被应用,分为门限加密和门限签名,一般见于随机预言机、防审查、减少通信复杂度(HotStuff)、共识网络中防拜占庭(HoneyBadgerBFT 中用于 BA 环节的 common coin)以及作为分布式伪随机数生成器(coin tossing)的重要原语,...

2020-04-23 16:51:30 235 0

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