基于以太坊矿池的挖矿方法与流程

文档序号:20151165发布日期:2020-03-24 20:05阅读:1271来源:国知局
基于以太坊矿池的挖矿方法与流程

本发明涉及区块链技术领域,更为具体地,涉及一种基于以太坊矿池的挖矿方法。



背景技术:

目前,eth(以太坊)区块链2.0技术推行将成为推动智能区块链产业迅速发展壮大的重要助推器,而从eth区块链本身来看,经过多年的快速发展,国内eth区块链,特别是智能合约技术达到国际先进水平。在未来几年,智能合约的需求将呈现快速增长的趋势,尤其是eth2.0技术在智能区块链行业的智能合约证明起着不可或缺的作用。eth2.0可以永久保存交易记录,为合约证明交易提供了可追溯,为用户管理建立直通桥梁,可在全球任何节点登陆使用,转入转出数字资产,用户在任意eth区块链随时查询拥有的数字产。

虚拟货币会定时生成一个数据块,所有参与运算的计算机都在尝试打包这个数据块提交,而最终成功生成这个数据块的人,就可以得到一笔虚拟货币报酬,而要成功生成数据块,就需要计算机找到那个有效的哈希值(这个计算机叫做矿工或者矿机),由于哈希运算是不可逆的,寻找到符合要求的随机调整数非常困难,而要得到正确的哈希值,没有捷径可以走,只能靠猜,猜是一个可以预计总数的不断试错过程。猜中了,就得到了虚拟货币,而这种猜的行为就叫挖矿。以太坊使用一种内在数字代币以太币作为奖赏,每次矿工证明了一个新区块,那么就会产生一个新的以太币并被奖励给矿工,但是如果每个用户自己链接区块链挖矿,难度就非常大。例如:一个eth节点有一个人挖矿,那么所爆出的块抢到的几率100%,如果有1000个人挖矿,那么抢到的几率是1‰,而且,算力越高的用户碰撞正确哈希值的几率会更高,最后造成很多用户多次徒劳碰撞哈希,却都是失败的,由此本申请的矿池将拟定出解决方案。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于以太坊矿池的挖矿方法,提高了矿工概率,实现对挖矿用户提供数据转发、任务分配和奖励结算等,提出了一种新的任务分配机制,矿池会根据每个矿工的算力情况分配不同难度的任务,统计工作并分发收益;解决了普通用户无法挖到区块的问题,可以连接多个挖矿节点,矿工投入矿池,抱团挖矿降低风险,有效降低无效提交区块,获得稳定收益。

本发明的目的是通过以下技术方案来实现的:

一种基于以太坊矿池的挖矿方法,包括:

s1,初始化配置,进入程序启动初始化;

s2,向eth网络节点请求任务;

s3,向eth网络节点回复任务,并效验任务;如果效验任务失败,则返回步骤s2继续向eth网络节点请求任务;如果效验任务成功,则跳入步骤s4;且,在跳入步骤s4的同时,加密效验成功的任务并转发到挖矿端,由挖矿软件开启哈希碰撞,然后再提交任务到eth网络节点;

s4,记录奖励的eth区块链,并转转到eth钱包。

进一步的,在步骤s1中,包括参数配置步骤;在该步骤中,包括用户id配置步骤、配置存储步骤,且在程序启动初始化失败时,跳转到程序入口。

进一步的,所述以太坊矿池包括用户端模块、矿池入口模块、钱包配置模块、三网网络模块、eth蜂窝网络节点模块和区块浏览器模块;所述用户端模块的输出端与矿池入口模块的输入端连接,所述矿池入口模块的输出端与钱包配置模块的输入端连接,所述钱包配置模块的第二输出端与区块浏览器的第一输入端连接,所述钱包配置模块的第二输出端与三网网络模块的输入端连接,所述三网网络模块的输入输出端与eth蜂窝网络节点模块的输入输出端连接,所述eth蜂窝网络节点的输出端与区块浏览器的第二输入端连接。

进一步的,所述三网网络模块包括矿池网络矩阵模块,所述矿池网络矩阵模块的输入输出端与eth蜂窝网络节点模块的输入输出端连接。

进一步的,所述用户端模块包括矿机,所述矿机的输出端与矿池入口模块的输入端连接。

本发明的有益效果是:

(1)本发明提出的矿池解决方案,实现对挖矿用户提供数据转发、任务分配和奖励结算等,提出了一种新的任务分配机制,矿池会根据每个矿工的算力情况分配不同难度的任务,统计工作并分发收益。在本发明实施例中,eth矿池将集中所有矿工的算力,组队在节点中去爆块,再根据矿工的算力分配所爆到的eth区块,解决普通用户无法挖到区块的问题,连接多个挖矿节点,矿工投入矿池,抱团挖矿降低风险,有效降低无效提交区块,获得稳定收益。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的步骤流程示意图;

图2为本发明中以太坊矿池的结构框图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。本说明书中公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

下面将详细描述本发明的具体实施例,应当注意,这里描述的实施例只用于举例说明,并不用于限制本发明。在以下描述中,为了提供对本发明的透彻理解,阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本发明。在其他实例中,为了避免混淆本发明,未具体描述公知的电路,软件或方法。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在对实施例进行描述之前,需要对一些必要的术语进行解释。例如:

若本申请中出现使用“第一”、“第二”等术语来描述各种元件,但是这些元件不应当由这些术语所限制。这些术语仅用来区分一个元件和另一个元件。因此,下文所讨论的“第一”元件也可以被称为“第二”元件而不偏离本发明的教导。应当理解的是,若提及一元件“连接”或者“联接”到另一元件时,其可以直接地连接或直接地联接到另一元件或者也可以存在中间元件。相反地,当提及一元件“直接地连接”或“直接地联接”到另一元件时,则不存在中间元件。

在本申请中出现的各种术语仅仅用于描述具体的实施方式的目的而无意作为对本发明的限定,除非上下文另外清楚地指出,否则单数形式意图也包括复数形式。

当在本说明书中使用术语“包括”和/或“包括有”时,这些术语指明了所述特征、整体、步骤、操作、元件和/或部件的存在,但是也不排除一个以上其他特征、整体、步骤、操作、元件、部件和/或其群组的存在和/或附加。

如图1,2所示,一种基于以太坊矿池的挖矿方法,包括:

s1,初始化配置,进入程序启动初始化;

s2,向eth网络节点请求任务;

s3,向eth网络节点回复任务,并效验任务;如果效验任务失败,则返回步骤s2继续向eth网络节点请求任务;如果效验任务成功,则跳入步骤s4;且,在跳入步骤s4的同时,加密效验成功的任务并转发到挖矿端,由挖矿软件开启哈希碰撞,然后再提交任务到eth网络节点;

s4,记录奖励的eth区块链,并转转到eth钱包。

进一步的,在步骤s1中,包括参数配置步骤;在该步骤中,包括用户id配置步骤、配置存储步骤,且在程序启动初始化失败时,跳转到程序入口。

进一步的,所述以太坊矿池包括用户端模块、矿池入口模块、钱包配置模块、三网网络模块、eth蜂窝网络节点模块和区块浏览器模块;所述用户端模块的输出端与矿池入口模块的输入端连接,所述矿池入口模块的输出端与钱包配置模块的输入端连接,所述钱包配置模块的第二输出端与区块浏览器的第一输入端连接,所述钱包配置模块的第二输出端与三网网络模块的输入端连接,所述三网网络模块的输入输出端与eth蜂窝网络节点模块的输入输出端连接,所述eth蜂窝网络节点的输出端与区块浏览器的第二输入端连接。

进一步的,所述三网网络模块包括矿池网络矩阵模块,所述矿池网络矩阵模块的输入输出端与eth蜂窝网络节点模块的输入输出端连接。

进一步的,所述用户端模块包括矿机,所述矿机的输出端与矿池入口模块的输入端连接。

实施例一

如图1,2所示,一种基于以太坊矿池的挖矿方法,包括:

s1,初始化配置,进入程序启动初始化;

s2,向eth网络节点请求任务;

s3,向eth网络节点回复任务,并效验任务;如果效验任务失败,则返回步骤s2继续向eth网络节点请求任务;如果效验任务成功,则跳入步骤s4;且,在跳入步骤s4的同时,加密效验成功的任务并转发到挖矿端,由挖矿软件开启哈希碰撞,然后再提交任务到eth网络节点;

s4,记录奖励的eth区块链,并转转到eth钱包。

在本实施例中,以比特币为例,如比特币全网算力1600p+,而当前最先进的矿机算力10丁左右,单台矿机单独挖到一个块的概率不到十六万分之一,矿工(人)投入真金白银购买矿机、交付电费,不会做风险高的投资,显然投入矿池抱团挖矿以降低风险,获得稳定收益更加适合。因此矿池的出现是必然,也不可消除,无论是否破坏系统的去中心化原则,矿池的核心工作是给矿工分配任务,统计工作里并分发收益,矿池会根据每个矿工的算力情况分配不同难度的任务。

在中本聪论文描述的比特币世界中,全网平均每10分钟产出一个区块,每区块包含50个比特币2016年后是12.5个,每四年左右减半一次,而一个区块只可能被第一个完成运算的人挖走,直接拥有里面的50比特币,其他人则颗粒无收,挖到的概率与矿工投入的设备算力大小成正比,这就注定了如果比特币挖矿参与人数庞大且分散到一定程度后,挖到比特币的概率将无限接近于零,跟中彩票差不多。或许投入一台矿机挖矿,按照概率,要5~10年才能开采到一个区块,这使比特币挖矿陷入尴尬境地,让普通人几乎没有参与的可能。

由于比特币全网的运算水准在不断地上涨,单个设备或少量的算力都无法在比特币网络上获取到比特币网络提供的区块奖励。在全网算力提升到了一定程度后,过低的获取奖励的概率促使一些早期的玩家开发出一种可以将少量算力合并联合运作的方法,使用这种方式建立的网站便被称作"矿池"miningpool。

综上所述,需要使用矿池才能获得更好的任务量,为了获得更多的eth,eth矿池将集中所有矿工的算力,组队在节点中去爆块,再根据矿工的算力分配所爆到的eth区块,解决普通用户无法挖到区块的问题。本发明中eth矿池连接国内外多个挖矿节点,无缝衔接,有效降低无效提交区块,领先同行单个节点。

例如,假设100万人参与eth以太坊挖矿,全网400p算力,其中90%的矿工为1t1000g以下的算力,如果投入一台1g矿机,将占全网算力的60万分之1,理论上平均每60万个10分钟能挖到一个区块,也就是7.6年才能挖到一个区块然后一次性拿到60个eth以太坊。那么,假如再找9个拥有1g算力矿机的矿工,达成协定,总共10个人,其中任何一个人挖到区块,都按照每人的算力占比来进行平分,那么就是一个整体,总共10g算力,那么平均0.76年即可挖到一个区块,然后算下来到就是0.76年开采到6个eth以太坊,如果组织100人、1000人、1万人甚至10万人呢,如果是10万人,那么平均40分钟就能挖到1个区块,作为团队的一份子,收入将会趋于稳定,这就是矿池的基本原理,即大家组队进行eth以太坊开采,相当于基金集资再进行投资一样。

在此机制中,不论个人矿工所能使用的运算力多少,只要是透过加入矿池来参与挖矿活动,无论是否有成功挖掘出有效资料块,皆可经由对矿池的贡献来获得少量比特币奖励,亦即多人合作挖矿,获得的比特币奖励也由多人依照贡献度分享。

在本实施例中,整个矿池服务端可使用c++,php,oracle;android端使用java,c++,用户端可使用php,css,javascript,html,开发;使用rsa分布式加密算法保证通信安全,分布式iocp技术,有效提高服务端并发负载,减少公网宽带占用,独家线程池技术poll管理等。

在本实施例中的其余技术特征,本领域技术人员均可以根据实际情况进行灵活选用和以满足不同的具体实际需求。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实现本发明。在其他实例中,为了避免混淆本发明,未具体描述公知的算法,方法或系统等,均在本发明的权利要求书请求保护的技术方案限定技术保护范围之内。

对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和单元并不一定是本申请所必须的。

本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法实现所描述的功能,但是这种实现不应超出本发明的范围。

所揭露的系统、模块和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例,仅仅是示意性的,例如,所述单元的划分,可以仅仅是一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以说通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述分立部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例的方案的目的。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、rom、ram等。

以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1