当前位置: 首页 > 编程日记 > 正文

新型混合共识机制及抗量子特性的 Hcash 主链测试链即将上线

由上海交通大学密码与计算机安全实验室(LoCCS)及上海观源信息科技有限公司负责研发的、具有新型混合共识机制及抗量子特性的 Hcash 主链代码已完成并在 2017 年 12 月18 日之前上传至github:

https://github.com/HcashOrg/hcashd

https://github.com/HcashOrg/hcashwallet

https://github.com/HcashOrg/hcashutil

https://github.com/HcashOrg/hcashrpcclient

相关技术文档(包括新型混合共识机制的基本设计理念、抗量子特性的基本设计理念、抗量子签名方案的技术报告、支持抗量子签名方案的数字钱包使用指南等)也已上传至 github(https://github.com/HcashOrg/hcashd)。

欢迎大家参与 Hcash 主链代码的抗量子特性测试,测试指南请参考https://github.com/HcashOrg/hcashd/wiki上的文档,有任何问题或反馈,请提交至https://github.com/HcashOrg/hcashd/issues.

在经过进一步内部测试及优化后,具有新型混合共识机制及抗量子特性的 Hcash 主链测试链将于 2017 年 12 月 25 日之前发布。

当前其他主流公有链系统存在三大关键问题:性能效率问题(系统吞吐量较低)、安全问题(私自挖矿、51%算力攻击、未来的量子计算攻击等)以及系统协议升级问题(不能支持平滑友好的、去中心化的协议升级)。通过深入研究分布式账本技术及后量子密码理论,上海交通大学 LoCCS 研发团队设计了安全高效的新型共识机制及抗量子计算攻击的方案,这些方案能够很好地解决上述三大关键问题,使得Hcash在安全性的前提下,能够以高效率运行,并且能在未来进行平滑进行去中心化的协议升级。事实上,Hcash 系统是迄今为止唯一一个能够同时满足以上三个特性公有链系统。

Hcash 的共识机制具有如下几大特性(注:具有新型混合共识机制的 Hcash 系统测试链已于 2017 年 9 月 30 日上线并一直稳定运行至今):

1) 通过创造性地提出 PoW 双层链结构+两级挖矿思想,可以在不影响共识安全的前提下大大提升系统的性能效率。例如:比特币系统的吞吐量不超过 7TPS,而 Hcash 系统的吞吐量可达 450TPS,并可根据需要调整参数进一步提升系统的吞吐量;

2) 通过引入购票交易以及对区块的投票交易机制(一种灵活且实用的 PoS 机制),使PoW 矿工和 PoS 矿工都能参与系统共识并发挥重要作用,从而有效解决自私挖矿问题,提升系统共识的鲁棒性(有效抵抗算力的 51%攻击)与灵活性(支持 PoW挖矿以及 PoS 挖矿);

3) 在该共识机制基础上,所有矿工和持币者可以参与社区的重大决定,包括协议的更新升级及社区项目投资等。

Hcash 的抗量子特性的优势主要体现在以下几个方面:

1)兼容性:在目前抗量子计算机还没有真正出现之前,密码货币或区块链系统仍然可以使用 ECDSA 签名方案,Hcash 兼容已有系统的 ECDSA 签名方案,从而能够很好地与目前各大主流密码货币交易平台进行对接,并为后续支持跨链互通特性提供基础;

2)灵活性:Hcash 支持两种经过国际密码学界充分分析/评估/论证过的、同时在安全性或性能效率方面非常突出的抗量子签名方案,这为系统提供了更大的灵活性与更好的安全性;

3) 安全性:Hcash 支持的抗量子签名方案不仅具有密码理论上(数学上)的可证明安全,同时具有方案实现上的抗旁路攻击特性;

4)高效性:与 ECDSA 签名方案相比,抗量子签名方案的公钥、签名长度大幅增长,因此,在区块链系统中引入抗量子签名方案,将会造成系统的吞吐量(TPS)大幅降低。我们创新性地提出了一种新型隔离见证机制,该机制能很好地解决抗量子签名算法中签名较长带来的吞吐量明显下降的问题。值得一提的是,Hcash 的抗量子特性与新型混合共识机制结合之后,在系统的吞吐量方面能进一步拥有绝对优势。例如:若在比特币系统中实现 DILITHIUM 抗量子签名方案,其 TPS 至多为 0.389 笔/秒,而实现抗量子特性及新型混合共识的 Hcash 系统的 TPS 大约为 150 笔/秒。

5)适用性:Hcash 的抗量子特性可以广泛适用于现有的密码货币或区块链系统。

后续 Hcash 系统将进一步整合新型共识机制、抗量子特性以及智能合约功能(注:Hcash团队中的另一支开发队伍已完成了智能合约功能的开发并在 2017 年 12 月 11 日提交了具有智能合约功能的 Hcash 系统测试链),在此基础上,Hcash 多个研发团队将致力于跨链互通、隐私保护、数字钱包保护等特性的研究与开发,在未来的 2~3 年内逐步将 Hcash 系统打造为下一代公有链系统的标杆。

众所周知,公有链的核心理念是打造去中心化的信任机制,其中的关键点是安全可靠,而密码学与信息安全技术是保障公有链安全可靠的基础;另一方面,在开源分享的环境下,要想在众多的密码货币或公有链系统中脱颖而出,关键要素就是创新:技术创新+应用创新。因此,Hcash 基金会通过与上海交大 LoCCS 实验室、澳大利亚 Monash 大学/香港理工大学/新加坡南洋理工大学密码学研究小组深度合作,实现各高校研究团队(密码及区块链技术创新)+ Hcash 基金会运营团队(运营与应用创新)的强强联合,通过在密码学技术上的稳步发展与区块链落地应用上的创新探索,为 Hcash 系统成为公有链系统的新标杆奠定了坚实的基础。

Hcash 研发团队将一如既往地在低调务实中推进区块链与密码技术创新与落地,并持续加强与 Hcash 社区的技术交流与互动;与此同时,Hcash 运营团队将继续雷厉风行地开拓新型商业模式、打造增值应用与生态圈。相信通过Hcash团队的努力以及广大Hcash参与者的支持,Hcash 系统将成为下一代公有链系统的示范与标杆。



原文发布时间为:2017.12.19
本文作者:iNewB
本文来源:简书,如需转载请联系原作者。

相关文章:

CentOS 6虚拟机安装

这篇博客已经被合并到这里了: 虚拟机安装CentOS以及SecureCRT设置【完美无错版】 下面不用看了,看上面即可 1.下载虚拟机Oracle VM VirtualBox最新的下载地址: http://download.virtualbox.org/virtualbox/4.1.6/VirtualBox-4.1.6-74713-Win…

开发中新游戏《庞加莱》

三体题材的游戏,表现三体人在三体星上生活和冒险。收集水和物器,躲避火焰与巨日,探索遗迹并与巨型生物战斗。温度会因太阳位置不同而发生变化,进而对环境产生一定影响。 游戏开发中。 ---- 2017-4-27版视频: http://v.…

介绍一个打怪升级练习 Python 的网站,寓教于乐~

作者 | 周萝卜来源 | 萝卜大杂烩这是一个学习 Python 的趣味网站,通过关卡的形式来锻炼 Python 水平。一共有 33 关,每一关都需要利用 Python 知识解题找到答案,然后进入下一关。很考验对 Python 的综合掌握能力,比如有的闯关需要…

hive基本操作与应用

通过hadoop上的hive完成WordCount 启动hadoop ssh localhost cd /usr/local/hadoop ./sbin/start-dfs.sh cd /usr/local/hive/lib service mysql start start-all.sh Hdfs上创建文件夹 hdfs dfs -mkdir test1 hdfs dfs -ls /user/hadoop 上传文件至hdfs hdfs dfs -put ./try.tx…

PHP源代码分析-字符串搜索系列函数实现详解

今天和同事在讨论关键字过虑的算法实现,前几天刚看过布隆过滤算法,于是就想起我们公司内部的查找关键字程序,好奇是怎么实现的。于是查找了一下源代码,原来可以简单地用stripos函数查找, stripos原型如下: …

麻省理工研究:深度图像分类器,居然还会过度解读

作者 | 青苹果来源 | 数据实战派某些情况下,深度学习方法能识别出一些在人类看来毫无意义的图像,而这些图像恰恰也是医疗和自动驾驶决策的潜在隐患所在。换句话说,深度图像分类器可以使用图像的边界,而非对象本身,以超…

Oracle 查询转换之子查询展开

概念:子查询展开(Subquery Unnesting)是优化器处理带子查询的目标sql的一种优化手段,它是指优化器不再将目标sql中子查询当作一个独立的处理单元来单独执行,而是将该子查询转换为它自身和外部查询之间等价的表连接。这种等价连接转…

Xcode中通过删除原先版本的程序来复位App

可以在Xcode菜单中点击 Product->Clean Build Folder (按住Option键,在windows键盘中是Alt键.) 此时Xcode将会从设备中删除(卸载uninstall)任何该app之前部署的版本. 接下来重启Xcode,再试一下,有时这可以修复非常奇怪(really weird)的问题.

深入理解PHP之OpCode

OpCode是一种PHP脚本编译后的中间语言&#xff0c;就像Java的ByteCode,或者.NET的MSL。 此文主要基于《 Understanding OPcode》和 网络&#xff0c;根据个人的理解和修改&#xff0c;特记录下来 &#xff1a;PHP代码&#xff1a; <?phpecho "Hello World";$a 1…

关于 AIOps 的过去与未来,微软亚洲研究院给我们讲了这些故事

作者 | 贾凯强出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;在过去的15年里&#xff0c;云计算实现了飞速发展&#xff0c;而这种发展也为诸多的前沿技术奠定了基础&#xff0c;AIOps便在此环境中获得了良好的发展契机。在数字化转型的浪潮下&#xff0c;云计算已经…

JS 正则表达式 0.001 ~99.999

^(0|[1-9][0-9]?)(\.[0-9]{0,2}[1-9])?$转载于:https://www.cnblogs.com/wahaha603/p/9050130.html

深入浅出PHP(Exploring PHP)

一直以来&#xff0c;横观国内的PHP现状&#xff0c;很少有专门介绍PHP内部机制的书。呵呵&#xff0c;我会随时记录下研究的心得&#xff0c;有机会的时候&#xff0c;汇总成书。:) 今天这篇&#xff0c;我内心是想打算做为一个导论&#xff1a; PHP是一个被广泛应用的脚本语言…

懒人神器 !一个创意十足的 Python 命令行工具

作者 | 写代码的明哥来源 | Python编程时光当听到某些人说 xx 库非常好用的时候&#xff0c;我们总是忍不住想要去亲自试试。有一些库&#xff0c;之所以好用&#xff0c;是对一些库做了更高级的封闭&#xff0c;你装了这个库&#xff0c;就会附带装了 n 多依赖库&#xff0c;就…

Regular Expression Matching

正则匹配 Regular Expression Matching Implement regular expression matching with support for . and *. . Matches any single character. * Matches zero or more of the preceding element.The matching should cover the entire input string (not partial).The functio…

PI校正环节的程序实现推导过程

PI校正环节在经典控制论中非常有用&#xff0c;特别是对负反馈控制系统&#xff0c;基本上都有PI校正环节。1.下面分别说明比例环节和积分环节的作用&#xff0c;以阶跃信号为例。①比例环节单独作用以上分析说明&#xff0c;若只有比例环节的控制系统&#xff0c;阶跃响应也是…

几行 Python 代码实现邮件解析,超赞~

作者 | Yunlor来源 | CSDN博客前言如何通过python实现邮件解析&#xff1f;邮件的格式十分复杂&#xff0c;主要是mime协议&#xff0c;本文主要是从实现出发&#xff0c;具体原理可以自行研究。一、安装通过mailgun开源的Flanker库实现邮件解析。该库包含了邮件地址解析和邮件…

深入理解PHP原理之变量(Variables inside PHP)

或许你知道&#xff0c;或许你不知道&#xff0c;PHP是一个弱类型&#xff0c;动态的脚本语言。所谓弱类型&#xff0c;就是说PHP并不严格验证变量类型(严格来讲&#xff0c;PHP是一个中强类型语言,这部分内容会在以后的文章中叙述)&#xff0c;在申明一个变量的时候&#xff0…

jQuery中的.height()、.innerHeight()和.outerHeight()

jQuery中的.height()、.innerHeight()和.outerHeight()和W3C的盒模型相关的几个获取元素尺寸的方法。对应的宽度获取方法分别为.width()、.innerWidth()和.outerWidth()&#xff0c;在此不详述。1. .height()获取匹配元素集合中的第一个元素的当前计算高度值 或 设置每一个匹配…

Python实战之logging模块使用详解

用Python写代码的时候&#xff0c;在想看的地方写个print xx 就能在控制台上显示打印信息&#xff0c;这样子就能知道它是什么了&#xff0c;但是当我需要看大量的地方或者在一个文件中查看的时候&#xff0c;这时候print就不大方便了&#xff0c;所以Python引入了logging模块来…

深入理解PHP原理之变量作用域

作者:laruence(http://www.laruence.com/)地址: http://www.laruence.com/2008/08/26/463.html PHP变量的内部表示是如何和用户脚本中的变量联系起来的呢&#xff1f;也就是说&#xff0c;如果我在脚本中写下&#xff1a;<?php $var"laruen…

Azure AI的又一里程碑,Neural TTS新模型呈现真人般情感饱满的AI语音

在人与人之间的对话中&#xff0c;即使是同样的字句&#xff0c;也会因为所处情景和情感的不同而表现出丰富的抑扬顿挫&#xff0c;而这种动态性恰恰是各种AI合成语音的“软肋”。相比于人类讲话时丰富多变的语气&#xff0c;AI语音的“心平气和”往往给人带来明显的违和感。 …

VS2010中“工具选项中的VC++目录编辑功能已被否决”解决方法

http://blog.csdn.net/chaijunkun/article/details/6658923 这是VS2010的改变&#xff0c;不能够在“工具-选项”中看到“VC目录”了。 但是呢&#xff0c;我们可以在另外一个地方找到它&#xff0c;请看下边的对比照片。 VS2008中&#xff1a; VS2010中&#xff1a; 打开方式非…

Bminer 7.0.0 ETH挖矿教程(Linux 64)

Bminer产品介绍Bminer是目前最快的挖矿程序&#xff0c;Bminer是基于NVIDIA GPU深度优化的挖矿软件。Bminer支持Equihash和Ethash两种算法的虚拟币&#xff0c;包括&#xff1a;ETH&#xff08;以太坊)&#xff0c;ETC&#xff0c;ZEC&#xff08;零币&#xff09;&#xff0c;…

深入理解PHP原理之变量分离/引用(Variables Separation)

引自: http://www.laruence.com/ [风雪之隅 ]在前面的文章中我已经介绍了PHP的变量的内部表示(深入理解PHP原理之变量(Variables inside PHP))&#xff0c;以及PHP中作用域的实现机制(深入理解PHP原理之变量作用域(Scope inside PHP))。这节我们就接着前面的文章&#xff0c;继…

C# 属性、索引

属性&#xff08;property&#xff09;: public string Name {get{return _name;}set{_name value;} } 简写为&#xff1a; public string Name { set; get;} 索引器&#xff08;index&#xff09;&#xff1a; 索引器为C#程序语言中泪的一种成员&#xff0c;它是的对象可…

分享几段祖传的 Python 代码,拿来直接使用!

作者 | 周萝卜来源 | 萝卜大杂烩今天分享几段工作生活中常用的代码&#xff0c;都是最为基础的功能和操作&#xff0c;而且大多还都是出现频率比较高的&#xff0c;很多都是可以拿来直接使用或者简单修改就可以放到自己的项目当中日期生成很多时候我们需要批量生成日期&#xf…

JVM——Java虚拟机架构

Java虚拟机&#xff08;Java virtualmachine&#xff09;实现了Java语言最重要的特征&#xff1a;即平台无关性。 平台无关性原理&#xff1a;编译后的 Java程序&#xff08;.class文件&#xff09;由 JVM执行。JVM屏蔽了与具体平台相关的信息&#xff0c;使程序可以在多种平台…

深入理解PHP之数组遍历

本文地址: http://www.laruence.com/2009/08/23/1065.html 经常会有人问我, PHP的数组, 如果用foreach来访问, 遍历的顺序是固定的么? 以什么顺序遍历呢? 比如: <?php$arr[laruence] huixinchen;$arr[yahoo] 2007;$arr[baidu] 2008;foreach ($arr as $key >…

Github 年度最受欢迎的 TOP30 Python 项目,超值

作者 | 俊欣来源 | 关于数据分析与可视化今天小编整理归纳了2021年Github上面最受欢迎的30个Python项目&#xff0c;帮助大家在打磨技术与提升自我上面更进一步。通过代码来获取Github官网有开源的接口&#xff0c;因此数据的获取也就方便了许多&#xff0c;代码如下url https…

Linux字符设备驱动程序的框架(新写法)

这是老版本内核的的Linux驱动注册函数写法&#xff1a; major register_chrdev(0, "hello", &hello_fops); /* (major, 0), (major, 1), ..., (major, 255)都对应hello_fops */ 新版本内核Linux驱动注册函数写法#define MAJOR(devid) ((unsigned int) ((devid…