CN113364596A - 一种基于区块链的挖矿方法、装置、移动终端及存储介质 - Google Patents

一种基于区块链的挖矿方法、装置、移动终端及存储介质 Download PDF

Info

Publication number
CN113364596A
CN113364596A CN202110587394.5A CN202110587394A CN113364596A CN 113364596 A CN113364596 A CN 113364596A CN 202110587394 A CN202110587394 A CN 202110587394A CN 113364596 A CN113364596 A CN 113364596A
Authority
CN
China
Prior art keywords
mobile terminal
block
target mobile
information
interaction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110587394.5A
Other languages
English (en)
Inventor
宋轩
邹若彤
张浩然
庄湛
云沐晟
潘泰仰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southern University of Science and Technology
Original Assignee
Southern University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southern University of Science and Technology filed Critical Southern University of Science and Technology
Priority to CN202110587394.5A priority Critical patent/CN113364596A/zh
Publication of CN113364596A publication Critical patent/CN113364596A/zh
Priority to PCT/CN2021/119096 priority patent/WO2022247069A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例公开了一种基于区块链的挖矿方法、装置、移动终端及存储介质。该方法包括:获取区块链发布的待生成区块的区块头信息;判断是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息;将目标移动终端的身份信息发送到服务器,并接收服务器返回的目标移动终端的加密身份信息;根据目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;根据本地存储的物理交互信息生成随机项;根据区块头信息和随机项计算哈希值;若哈希值满足出块条件,则生成待生成区块。本发明实施例所提供的技术方案,降低了挖矿对算力的依赖,节约了算力资源和电力资源,又降低了挖矿成本,提高了用户参与挖矿的积极性。

Description

一种基于区块链的挖矿方法、装置、移动终端及存储介质
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种基于区块链的挖矿方法、装置、移动终端及存储介质。
背景技术
区块链是一种基于P2P网络、共识机制、加密算法等技术的由许多网络节点共同参与和维护的分布式数据存储技术模式。其共识机制是指全部记账节点之间达成的共识,从而确定区块链内容的有效性,这是保证区块链稳定工作的重要机制。其中,最常用的共识机制为工作量证明机制(POW)、股权证明机制(POS)和委任权益证明(DPOS)等。其中,POW是最常用的,其核心设计思路是提出一个具有不对称特性的计算难题,即寻找出这个难题的答案是困难的,但将这个难题答案进行验证是非常容易的。适用于POW共识机制的挖矿算法大致分为两类,第一类叫做计算困难,第二类叫内存困难。虽然这两种方式算法简单,容易实现,但两者都不产生任何实际的社会价值,并且浪费了大量的算力和电力资源,区块的确认时间难以缩短。同时由于挖矿和算力密切相关,随着矿池的出现将算力集中,基于原有的POW共识机制方案设计的区块链系统也就容易受到比特币网络的算力攻击和分叉攻击。
发明内容
本发明实施例提供一种基于区块链的挖矿方法、装置、移动终端及存储介质,以解决挖矿过程中造成的算力与电力资源浪费、计算难度大以及易于被攻击等问题。
第一方面,本发明实施例提供了一种基于区块链的挖矿方法,该方法包括:
获取区块链发布的待生成区块的区块头信息;
判断是否与目标移动终端之间发生密接交互,若是,则获取所述目标移动终端的身份信息;
将所述目标移动终端的身份信息发送到服务器,并接收所述服务器返回的所述目标移动终端的加密身份信息;
根据所述目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
根据本地存储的所述物理交互信息生成随机项;
根据所述区块头信息和所述随机项计算哈希值;
若所述哈希值满足出块条件,则生成所述待生成区块。
第二方面,本发明实施例还提供了一种基于区块链的挖矿装置,该装置包括:
信息获取模块,用于获取区块链发布的待生成区块的区块头信息;
密接交互判定模块,用于判断是否与目标移动终端之间发生密接交互,若是,则获取所述目标移动终端的身份信息;
信息加密模块,用于将所述目标移动终端的身份信息发送到服务器,并接收所述服务器返回的所述目标移动终端的加密身份信息;
信息生成模块,用于根据所述目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
随机项生成模块,用于根据本地存储的所述物理交互信息生成随机项;
哈希值计算模块,用于根据所述区块头信息和所述随机项计算哈希值;
区块生成模块,用于若所述哈希值满足出块条件,则生成所述待生成区块。
第三方面,本发明实施例还提供了一种移动终端,该移动终端包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的基于区块链的挖矿方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的基于区块链的挖矿方法。
本发明实施例提供了一种基于区块链的挖矿方法,首先获取区块链发布的待生成区块的区块头信息,然后判断本移动终端是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息,再将该身份信息发送到服务器,以接收服务器返回的对应的加密身份信息,接着使用目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息存储在本地,从而根据本地存储的物理交互信息生成随机项,并根据获取的区块头信息和生成的随机项计算哈希值,以在哈希值满足出块条件的情况下生成待生成区块。本发明实施例所提供的方法,通过利用矿工之间的密接物理交互信息生成的随机项代替传统方法中使用大量计算资源高速生成的随机项来进行区块链挖矿,基于真实世界物理交互的有限性和置信性来确保挖矿设备平等,从而减少了挖矿过程对算力的依赖,并降低了挖矿门槛,即降低了挖矿成本,提高了用户参与挖矿的积极性。同时,由于用户之间进行物理交互的次数有限,不容易出现超强算力节点,从而使得算力分散,可有效防范攻击。另外,通过对获取到的移动终端的身份信息进行加密,并使用加密后的信息生成物理交互信息进而生成随机项,能够对用户的私人信息进行保密,从而提高用户信息安全。
附图说明
图1为本发明实施例一提供的基于区块链的挖矿方法的流程图;
图2为本发明实施例二提供的基于区块链的挖矿装置的结构示意图;
图3为本发明实施例三提供的移动终端的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一提供的基于区块链的挖矿方法的流程图。本实施例可适用于使用普通移动设备通过物理交互的方式进行挖矿的情况,该方法可以由本发明实施例提供的基于区块链的挖矿装置来执行,该装置可以由硬件和/或软件的方式来实现,一般可集成于移动终端中,该移动终端可以但不限于是各种笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。如图1所示,具体包括如下步骤:
S11、获取区块链发布的待生成区块的区块头信息。
其中,区块头信息可以包括区块版本号、父区块哈希值、默克尔树根哈希值、时间戳、难度目标等等,根据该区块头信息可以确定出块条件。示例性的,基于比特币的出块算法,可以通过安全散列算法SHA-256对区块头进行哈希计算,则出块条件可以是计算产生的256位数值小于区块头信息中的难度目标。为了将出块时间控制在预设时间,即预期平均出块时间,可以定期调整挖矿难度,即重新确定所需的难度目标,示例性的,假设预设时间为expected_time,并在每产生N个区块之后进行一次调整,则调整的周期约为expected_time/1440N天,具体可以通过如下公式进行调整:
Figure BDA0003088169470000051
其中,target表示新难度目标,current_target表示当前难度目标,actual_time表示真实平均出块时间,通过上述公式定期对难度目标进行上调或者下调,从而使得出块时间趋于稳定。
S12、判断是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息。
其中,密接交互可以是在预设距离范围内持续预设时长的交互状态,通过将判定真实世界的密接交互作为触发生成随机项进而计算哈希值的唯一条件,可以有效的避免用户伪造数据。在用户使用移动终端的过程中,还可能包括其他的一些物理交互过程,则当发生交互时,可以首先判断本移动终端是否与其他移动终端发生了密接交互,若发生,则将该其他移动终端作为目标移动终端,并获取目标移动终端的身份信息,以便后续生成随机项。其中,身份信息可以是移动终端的硬件地址(Media Access Control Address,MAC)等可唯一确定终端身份的信息。在本实施例中,密接交互可以是基于蓝牙所确定的密接交互,则当本移动终端参与到挖矿的过程中时,可以通过蓝牙扫描其他设备,并在发生密接交互时采集对方的MAC地址。
可选的,判断是否与目标移动终端之间发生密接交互,包括:获取目标移动终端的蓝牙强度和运动状态;根据蓝牙强度和运动状态判断是否与目标移动终端之间发生密接交互。具体的,可以通过目标移动终端的蓝牙强度和运动状态等信号对是否发生密接交互进行判断,进一步还可以加入自身的运动状态以进行比较来提高密接交互确定的准确性。其中,运动状态可以是移动终端的加速度等等。在获得了目标移动终端的蓝牙强度之后,可以根据如下公式计算得到本移动终端与目标移动终端之间的测量距离:
Figure BDA0003088169470000061
其中,d表示测量距离,RSSI表示蓝牙强度,abs()表示取绝对值,a表示相隔一米时的信号强度,n表示环境衰减因子。在计算得到对应的测量距离之后,即可与密接交互的预设距离范围进行比较以对密接交互进行判断。
进一步可选的,根据蓝牙强度和运动状态判断是否与目标移动终端之间发生密接交互,包括:将蓝牙强度和运动状态输入训练后的深度学习模型,以得到预测的密接交互概率,并根据密接交互概率判断是否与目标移动终端之间发生密接交互。具体的,由于上述测量距离的计算方法的精准度不够高,且a的值会因为移动终端的型号不同而改变,同时,蓝牙在不同环境下会受到多种干扰和阻挡,而使得n的取值会变得非常不准确。因此,本实施例可进一步提出一种密接交互概率的预测方法,具体可以使用训练后的深度学习模型来实现。该深度学习模型可以是深度神经网络(Deep Neural Networks,DNN)等,输入可以是挖矿用户的移动终端通过蓝牙广播的形式收集的蓝牙强度以及运动状态等信号,输出则是密接交互概率。通过训练好的深度学习模型来对收集的来自其他移动终端的多种信号进行分析和判定,可以得到一个概率值,从而根据这个概率值即可更加准确的分析当前本移动终端与目标移动终端之间发生密接交互的可能性。
可选的,在获取目标移动终端的身份信息之前,还包括:若判定与目标移动终端之间发生密接交互,则获取目标移动终端的侧信道数据;将目标移动终端的侧信道数据和自身的侧信道数据发送到服务器,并接收服务器返回的根据目标移动终端的侧信道数据和自身的侧信道数据确定得到的密接交互的有效性结果。
其中,侧信道数据是指当与目标移动终端发生密接交互时产生的其他信道的交互数据,这些数据可以被本移动终端的存储空间存储,具体可以包括GPS数据和WiFi数据等等,侧信道数据可以增强一个真实事件发生且被认同的概率。则当通过上述任意方法确定本移动终端与目标移动终端之间发生了密接交互时,可以获取目标移动终端的侧信道数据存储在本地,同时收集自身的侧信道数据,以将目标移动终端的侧信道数据和自身的侧信道数据发送到服务器,并通过服务器中置信度算法判断密接交互双方是否真实发生交互,即确定当前密接交互是否为有效密接交互,从而提高挖矿过程的可信度和公平性。服务器在完成判断后,可以向本移动终端返回相应的密接交互的有效性结果,从而本移动终端可以根据该有效性结果确定是否需要触发后续的事件,具体可以是仅在该有效性结果为有效时,获取目标移动终端的身份信息,进而生成物理交互信息以及生成随机数等等,若该有效性结果为无效,则不认为本移动终端与目标移动终端之间发生了密接交互,不触发后续的挖矿过程。
S13、将目标移动终端的身份信息发送到服务器,并接收服务器返回的目标移动终端的加密身份信息。
具体的,在获取到目标移动终端的身份信息之后,可以将目标移动终端的身份信息发送到服务器,以对身份信息进行加密,从而对用户的私人信息进行保护,具体可以采用AES等加密方式对身份信息进行加密。在服务器端可以维护一个包含身份信息和加密身份信息的关系型数据库,从而使得本移动终端可以利用所获得的目标移动终端的身份信息得到一个唯一的加密身份信息。本移动终端得到目标移动终端的加密身份信息之后可以存储在本地,并限制本移动终端的用户本地查看其他挖矿用户的身份信息。同时,本移动终端可以在参与挖矿之前,向服务器发送自身的身份信息,从而获得自身的加密身份信息并存储在本地以备用。另外,服务器可以不对用户的密接次数、密接位置以及密接对象等隐私信息进行记录或存储,以对用户的隐私进行保护。
S14、根据目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地。
具体的,本移动终端可以在每获取一次目标移动终端的加密身份信息之后就生成一个新的物理交互信息存储在本地,即本地可以存储开始参与挖矿后生成的所有物理交互信息,进一步的,可以限制存储的物理交互信息的数量,具体可以按照生成时间的先后顺序对较早的物理交互信息删除,还可以限制存储的物理交互信息的生成时间,具体可以将预设时间范围以前的物理交互信息删除,从而后续可以使用最近的物理交互信息来生成随机项。
S15、根据本地存储的物理交互信息生成随机项。
具体的,本移动终端可以根据本地存储的物理交互信息生成随机项,不同的物理交互信息之间可以随机排列,生成的随机项可以与之前获得的区块头信息共同构成区块头。
S16、根据区块头信息和随机项计算哈希值。
具体的,在每次生成随机项之后,可以通过安全散列算法SHA-256对重新构成的区块头进行哈希值的计算。
S17、若哈希值满足出块条件,则生成待生成区块。
具体的,出块条件即可以是上述所确定的计算产生的256位数值小于区块头信息中的难度目标。在计算得到哈希值之后,即可判断该哈希值是否满足出块条件,若满足,则生成待生成区块。若不满足,则可以变更物理交互信息之间的排列顺序以重新生成随机项,并再次计算哈希值判断其是否可以满足出块条件,直至有矿工成功完成出块。其中,区块包括区块头和区块体,区块体主要包含交易信息,可选的,交易信息存储于默克尔树中,以便于节点对打包的交易数据进行验证。
在上述技术方案的基础上,可选的,在若哈希值满足出块条件,则生成待生成区块之后,还包括:根据预设出块确认机制确认待生成区块完成出块;根据随机项对出块奖励进行结算。具体的,在区块链中,新的交易将会被广播给所有的节点,每个节点将新交易收集到一个区块中,当某个节点根据生成的随机项解决了出块难题,则生成待生成区块,并将该待生成区块广播给所有的节点,所有节点仅在该待生成区块内所有的交易都被哈希验证有效且没有双花交易等无效交易时接受该待生成区块,并通过创建区块链中的下一个区块来表示对该待生成区块的接受程度,还可以使用该区块的哈希作为新随机项的一部分,从而确认待生成区块完成出块。在待生成区块的出块被确认之后,即可对该待生成区块的出块奖励进行结算,其中的出块奖励即为成功解决出块难题所能获得的奖励。
进一步可选的,根据随机项对出块奖励进行结算,包括:按照预设分配比例将出块奖励分配给出块矿工和参与随机项生成的其他矿工;根据其他矿工中各个矿工在生成随机项过程中的密接交互次数贡献对其他矿工分配得到的出块奖励再次进行分配。
具体的,可以将出块奖励的百分之五十分配给出块矿工,而将另外的百分之五十分配给参与随机项生成的其他矿工,并可以根据其他矿工在生成随机项过程中的密接交互次数贡献对其他矿工分配得到的百分之五十的出块奖励再次进行分配,并可以按照如下的分配公式进行分配:
Figure BDA0003088169470000101
其中,r表示某个其他矿工可以得到的奖励,t表示该其他矿工在生成随机项过程中贡献的密接交互次数,T表示生成随机项所使用的密接交互次数总数,即所使用的物理交互信息的数量,R表示所有其他矿工分配得到的出块奖励。
进一步可选的,方法还包括:创建志愿者用户,志愿者用户开启被获取实时密接交互次数的权限;从志愿者用户中随机选择至少一个样本作为基准志愿者用户;将基准志愿者用户的实时密接交互次数的中位数确定为基准交互次数;相应的,根据随机项对出块奖励进行结算,包括:根据随机项以及基准交互次数对出块奖励进行结算;在根据预设出块确认机制确认待生成区块完成出块之后,还包括:根据各个基准志愿者用户的实时密接交互次数和基准交互次数对基准志愿者用户的分享奖励进行结算,分享奖励随出块奖励线性变化。
具体的,志愿者用户可以是普通用户向服务器申请分享奖励所获得的属性,是普通用户的同级用户,当接收到普通用户的申请后,可以为该普通用户创建相应的志愿者用户。在作为志愿者用户的期间,需要同意开启被记录及获取实时密接交互次数的权限,并受到对实时密接交互次数的真实性(是否被伪造)和可靠性(是否能代表群体实际密接交互频率)的验证。同时,志愿者用户可以随时取消其共享权限,主动更改为普通用户,则此时其实时密接交互次数将不再被记录。如果某个志愿者用户的实时密接交互次数超过了预设最大交互次数,则超过了可接受的正常水平,判定为一次不合格分享,此时该志愿者提供的信息将不可靠,因此,可以将该志愿者用户更改为普通用户,同时忽略预设时间范围(如一个月)内的志愿者申请,以避免近期使用该志愿者用户作为标准。其中,预设最大交互次数可以取决于前一天同一时段全部被选中的志愿者日密接次数的3σ置信区间范围,特别的,当数据足够大时,全部志愿者用户的日密接次数将符合正态分布。
在每一次出块开始时,可以从志愿者用户中随机选择一定样本作为基准志愿者用户。通过每次出块之前的重新随机选取,可以避免某些用户长期作为基准志愿者用户被使用,使得每次所使用的标准更加真实可靠。在确定了基准志愿者用户之后,可以将所有基准志愿者用户的实时密接交互次数中的中位数确定为基准交互次数,用于后续出块奖励的调整,所确定的基准交互次数可以记录在区块头信息中。相应的,出块奖励的数额与当日全部用户的密接交互次数分布相关,可以根据确定的基准交互次数设置激励交互次数来调整出块奖励,具体可以应用如下公式:
P=M×K
其中,P表示激励交互次数,M表示基准交互次数,K表示调整因子,且1<K<2,调整因子的具体数值可以由用户规模和用户日密接交互次数决定,当日所有用户的平均日密接交互次数越接近激励交互次数,则出块奖励越高。初始的出块奖励可以为一理想奖励值,并在每生成一定区块后将理想奖励值减半,同时控制当前的出块奖励不得高于理想奖励值。相应的,在成功完成出块之后,被选作为基准的志愿者用户可以获得一定的分享奖励,该分享奖励可以随实际的出块奖励进行线性变化,并由所有基准志愿者用户共有。具体可以根据如下公式对分享奖励进行结算:
Figure BDA0003088169470000121
Figure BDA0003088169470000122
其中,A表示接近值,L表示某个基准志愿者用户提供的实时密接交互次数,M表示基准交互次数,s表示该基准志愿者用户可以得到的分享奖励,Asum表示所有基准志愿者用户的接近值之和,S表示总的分享奖励。即当基准志愿者用户的实时密接交互次数与基准交互次数越接近时,可以得到的分享奖励越多。通过设立志愿者用户,并在每次出块之前,从中随机选取基准志愿者用户,再将基准志愿者用户的实时密接交互次数的中位数确定为基准交互次数,进而根据该基准交互次数设置有差别的挖矿奖励机制,使得符合当前社会状态的密接交互次数可以对应更高的奖励,有效的防止了矿工之间通过频繁交互进行恶意挖矿。
可选的,还可以设置打包奖励,即在出块成功对出块奖励进行分配的同时,可以根据用户所打包的交易总量获取一定的奖励,类似于以太坊系统的Gas机制,用户的交易可以通过提高支付的Gas值来获得更快被验证打包的概率,并将其中部分Gas作为打包奖励。
本实施例所提供的方法,由于物理交互技术只可应用于移动设备上,移动设备算力相对较小且每个区块打包交易数据量较少,具有轻量级的特点。移动设备普及性高、使用门槛低,可吸引更多用户在日常生活中参与挖矿,增大用户规模,从而实现算力分散,增强系统安全性。基于本方法轻量级的特点,使其适用于区块链-物联网技术中,支持可移动设备适用于物联网的大规模用户。大规模用户分散的算力,以及物理交互的有限性和置信性可防止恶意攻击,带来系统的安全性,从而可在智慧城市、智慧医疗等方面有更多更广泛的应用。
本发明实施例所提供的技术方案,首先获取区块链发布的待生成区块的区块头信息,然后判断本移动终端是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息,再将该身份信息发送到服务器,以接收服务器返回的对应的加密身份信息,接着使用目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息存储在本地,从而根据本地存储的物理交互信息生成随机项,并根据获取的区块头信息和生成的随机项计算哈希值,以在哈希值满足出块条件的情况下生成待生成区块。通过利用矿工之间的密接物理交互信息生成的随机项代替传统方法中使用大量计算资源高速生成的随机项来进行区块链挖矿,基于真实世界物理交互的有限性和置信性来确保挖矿设备平等,从而减少了挖矿过程对算力的依赖,并降低了挖矿门槛,即降低了挖矿成本,提高了用户参与挖矿的积极性。同时,由于用户之间进行物理交互的次数有限,不容易出现超强算力节点,从而使得算力分散,可有效防范攻击。另外,通过对获取到的移动终端的身份信息进行加密,并使用加密后的信息生成物理交互信息进而生成随机项,能够对用户的私人信息进行保密,从而提高用户信息安全。
实施例二
图2为本发明实施例二提供的基于区块链的挖矿装置的结构示意图,该装置可以由硬件和/或软件的方式来实现,一般可集成于移动终端中,用于执行本发明任意实施例所提供的基于区块链的挖矿方法,该移动终端可以但不限于是各种笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。如图2所示,该装置包括:
信息获取模块21,用于获取区块链发布的待生成区块的区块头信息;
密接交互判定模块22,用于判断是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息;
信息加密模块23,用于将目标移动终端的身份信息发送到服务器,并接收服务器返回的目标移动终端的加密身份信息;
信息生成模块24,用于根据目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
随机项生成模块25,用于根据本地存储的物理交互信息生成随机项;
哈希值计算模块26,用于根据区块头信息和随机项计算哈希值;
区块生成模块27,用于若哈希值满足出块条件,则生成待生成区块。
本发明实施例所提供的技术方案,首先获取区块链发布的待生成区块的区块头信息,然后判断本移动终端是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息,再将该身份信息发送到服务器,以接收服务器返回的对应的加密身份信息,接着使用目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息存储在本地,从而根据本地存储的物理交互信息生成随机项,并根据获取的区块头信息和生成的随机项计算哈希值,以在哈希值满足出块条件的情况下生成待生成区块。通过利用矿工之间的密接物理交互信息生成的随机项代替传统方法中使用大量计算资源高速生成的随机项来进行区块链挖矿,基于真实世界物理交互的有限性和置信性来确保挖矿设备平等,从而减少了挖矿过程对算力的依赖,并降低了挖矿门槛,即降低了挖矿成本,提高了用户参与挖矿的积极性。同时,由于用户之间进行物理交互的次数有限,不容易出现超强算力节点,从而使得算力分散,可有效防范攻击。另外,通过对获取到的移动终端的身份信息进行加密,并使用加密后的信息生成物理交互信息进而生成随机项,能够对用户的私人信息进行保密,从而提高用户信息安全。
在上述技术方案的基础上,可选的,密接交互判定模块22,包括:
数据获取单元,用于获取目标移动终端的蓝牙强度和运动状态;
密接交互判定单元,用于根据蓝牙强度和运动状态判断是否与目标移动终端之间发生密接交互。
在上述技术方案的基础上,可选的,密接交互判定单元具体用于:
将蓝牙强度和运动状态输入训练后的深度学习模型,以得到预测的密接交互概率,并根据密接交互概率判断是否与目标移动终端之间发生密接交互。
在上述技术方案的基础上,可选的,该基于区块链的挖矿装置,还包括:
侧信道数据获取模块,用于在获取目标移动终端的身份信息之前,若判定与目标移动终端之间发生密接交互,则获取目标移动终端的侧信道数据;
密接有效性判定模块,用于将目标移动终端的侧信道数据和自身的侧信道数据发送到服务器,并接收服务器返回的根据目标移动终端的侧信道数据和自身的侧信道数据确定得到的密接交互的有效性结果。
在上述技术方案的基础上,可选的,该基于区块链的挖矿装置,还包括:
出块确认模块,用于在若哈希值满足出块条件,则生成待生成区块之后,根据预设出块确认机制确认待生成区块完成出块;
出块奖励结算模块,用于根据随机项对出块奖励进行结算。
在上述技术方案的基础上,可选的,出块奖励结算模块,包括:
出块奖励分配单元,用于按照预设分配比例将出块奖励分配给出块矿工和参与随机项生成的其他矿工;
再次分配单元,用于根据其他矿工中各个矿工在生成随机项过程中的密接交互次数贡献对其他矿工分配得到的出块奖励再次进行分配。
在上述技术方案的基础上,可选的,该基于区块链的挖矿装置,还包括:
志愿者用户创建模块,用于创建志愿者用户,志愿者用户开启被获取实时密接交互次数的权限;
基准志愿者用户选择模块,用于从志愿者用户中随机选择至少一个样本作为基准志愿者用户;
基准交互次数确定模块,用于将基准志愿者用户的实时密接交互次数的中位数确定为基准交互次数;
相应的,出块奖励结算模块具体用于:
根据随机项以及基准交互次数对出块奖励进行结算;
该基于区块链的挖矿装置,还包括:
分享奖励结算模块,用于在根据预设出块确认机制确认待生成区块完成出块之后,根据各个基准志愿者用户的实时密接交互次数和基准交互次数对基准志愿者用户的分享奖励进行结算,分享奖励随出块奖励线性变化。
本发明实施例所提供的基于区块链的挖矿装置可执行本发明任意实施例所提供的基于区块链的挖矿方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,在上述基于区块链的挖矿装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例三
图3为本发明实施例三提供的移动终端的结构示意图,示出了适于用来实现本发明实施方式的示例性移动终端的框图。图3显示的移动终端仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图3所示,该移动终端包括处理器31、存储器32、输入装置33及输出装置34;移动终端中处理器31的数量可以是一个或多个,图3中以一个处理器31为例,移动终端中的处理器31、存储器32、输入装置33及输出装置34可以通过总线或其他方式连接,图3中以通过总线连接为例。
存储器32作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于区块链的挖矿方法对应的程序指令/模块(例如,基于区块链的挖矿装置中的信息获取模块21、密接交互判定模块22、信息加密模块23、信息生成模块24、随机项生成模块25、哈希值计算模块26及区块生成模块27)。处理器31通过运行存储在存储器32中的软件程序、指令以及模块,从而执行移动终端的各种功能应用以及数据处理,即实现上述的基于区块链的挖矿方法。
存储器32可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据移动终端的使用所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器32可进一步包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置33可用于获取区块链发布的待生成区块的区块头信息,以及产生与移动终端的用户设置和功能控制有关的键信号输入等。输出装置34可用于将生成的区块进行广播等等。
实施例四
本发明实施例四还提供一种包含计算机可执行指令的存储介质,该计算机可执行指令在由计算机处理器执行时用于执行一种基于区块链的挖矿方法,该方法包括:
获取区块链发布的待生成区块的区块头信息;
判断是否与目标移动终端之间发生密接交互,若是,则获取目标移动终端的身份信息;
将目标移动终端的身份信息发送到服务器,并接收服务器返回的目标移动终端的加密身份信息;
根据目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
根据本地存储的物理交互信息生成随机项;
根据区块头信息和随机项计算哈希值;
若哈希值满足出块条件,则生成待生成区块。
存储介质可以是任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于区块链的挖矿方法中的相关操作。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种基于区块链的挖矿方法,其特征在于,包括:
获取区块链发布的待生成区块的区块头信息;
判断是否与目标移动终端之间发生密接交互,若是,则获取所述目标移动终端的身份信息;
将所述目标移动终端的身份信息发送到服务器,并接收所述服务器返回的所述目标移动终端的加密身份信息;
根据所述目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
根据本地存储的所述物理交互信息生成随机项;
根据所述区块头信息和所述随机项计算哈希值;
若所述哈希值满足出块条件,则生成所述待生成区块。
2.根据权利要求1所述的基于区块链的挖矿方法,其特征在于,所述判断是否与目标移动终端之间发生密接交互,包括:
获取所述目标移动终端的蓝牙强度和运动状态;
根据所述蓝牙强度和所述运动状态判断是否与所述目标移动终端之间发生密接交互。
3.根据权利要求2所述的基于区块链的挖矿方法,其特征在于,所述根据所述蓝牙强度和所述运动状态判断是否与所述目标移动终端之间发生密接交互,包括:
将所述蓝牙强度和所述运动状态输入训练后的深度学习模型,以得到预测的密接交互概率,并根据所述密接交互概率判断是否与所述目标移动终端之间发生密接交互。
4.根据权利要求1所述的基于区块链的挖矿方法,其特征在于,在所述获取所述目标移动终端的身份信息之前,还包括:
若判定与所述目标移动终端之间发生密接交互,则获取所述目标移动终端的侧信道数据;
将所述目标移动终端的侧信道数据和自身的侧信道数据发送到所述服务器,并接收所述服务器返回的根据所述目标移动终端的侧信道数据和自身的侧信道数据确定得到的密接交互的有效性结果。
5.根据权利要求1所述的基于区块链的挖矿方法,其特征在于,在所述若所述哈希值满足出块条件,则生成所述待生成区块之后,还包括:
根据预设出块确认机制确认所述待生成区块完成出块;
根据所述随机项对出块奖励进行结算。
6.根据权利要求5所述的基于区块链的挖矿方法,其特征在于,所述根据所述随机项对出块奖励进行结算,包括:
按照预设分配比例将所述出块奖励分配给出块矿工和参与所述随机项生成的其他矿工;
根据所述其他矿工中各个矿工在生成所述随机项过程中的密接交互次数贡献对所述其他矿工分配得到的出块奖励再次进行分配。
7.根据权利要求5所述的基于区块链的挖矿方法,其特征在于,所述方法还包括:
创建志愿者用户,所述志愿者用户开启被获取实时密接交互次数的权限;
从所述志愿者用户中随机选择至少一个样本作为基准志愿者用户;
将所述基准志愿者用户的实时密接交互次数的中位数确定为基准交互次数;
相应的,所述根据所述随机项对出块奖励进行结算,包括:
根据所述随机项以及所述基准交互次数对所述出块奖励进行结算;
在所述根据预设出块确认机制确认所述待生成区块完成出块之后,还包括:
根据各个所述基准志愿者用户的实时密接交互次数和所述基准交互次数对所述基准志愿者用户的分享奖励进行结算,所述分享奖励随所述出块奖励线性变化。
8.一种基于区块链的挖矿装置,其特征在于,包括:
信息获取模块,用于获取区块链发布的待生成区块的区块头信息;
密接交互判定模块,用于判断是否与目标移动终端之间发生密接交互,若是,则获取所述目标移动终端的身份信息;
信息加密模块,用于将所述目标移动终端的身份信息发送到服务器,并接收所述服务器返回的所述目标移动终端的加密身份信息;
信息生成模块,用于根据所述目标移动终端的加密身份信息和自身的加密身份信息生成物理交互信息并存储在本地;
随机项生成模块,用于根据本地存储的所述物理交互信息生成随机项;
哈希值计算模块,用于根据所述区块头信息和所述随机项计算哈希值;
区块生成模块,用于若所述哈希值满足出块条件,则生成所述待生成区块。
9.一种移动终端,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的基于区块链的挖矿方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的基于区块链的挖矿方法。
CN202110587394.5A 2021-05-27 2021-05-27 一种基于区块链的挖矿方法、装置、移动终端及存储介质 Pending CN113364596A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110587394.5A CN113364596A (zh) 2021-05-27 2021-05-27 一种基于区块链的挖矿方法、装置、移动终端及存储介质
PCT/CN2021/119096 WO2022247069A1 (zh) 2021-05-27 2021-09-17 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110587394.5A CN113364596A (zh) 2021-05-27 2021-05-27 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Publications (1)

Publication Number Publication Date
CN113364596A true CN113364596A (zh) 2021-09-07

Family

ID=77528071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110587394.5A Pending CN113364596A (zh) 2021-05-27 2021-05-27 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Country Status (2)

Country Link
CN (1) CN113364596A (zh)
WO (1) WO2022247069A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022247069A1 (zh) * 2021-05-27 2022-12-01 南方科技大学 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107656812A (zh) * 2017-09-27 2018-02-02 咪咕文化科技有限公司 区块链处理方法、系统、节点设备、终端和存储介质
WO2018046008A1 (zh) * 2016-09-12 2018-03-15 上海鼎利信息科技有限公司 一种区块链加密射频芯片存储设计方法
CN109242299A (zh) * 2018-08-31 2019-01-18 深圳付贝科技有限公司 分布式挖矿方法、挖矿机及区块链系统
CN109583893A (zh) * 2018-11-21 2019-04-05 北京航空航天大学 可追踪的基于区块链的数字货币交易系统
CN111682946A (zh) * 2020-05-29 2020-09-18 南方科技大学 基于区块链的挖矿方法、装置、计算机设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10291627B2 (en) * 2016-10-17 2019-05-14 Arm Ltd. Blockchain mining using trusted nodes
CN108365960B (zh) * 2017-12-29 2020-11-20 北京欧链科技有限公司 随机数提供方法和装置
CN109087105A (zh) * 2018-08-31 2018-12-25 深圳付贝科技有限公司 用于挖矿的哈希搜索方法、挖矿机及区块链系统
US20200195421A1 (en) * 2018-12-12 2020-06-18 Hewlett Packard Enterprise Development Lp Mining for internet access
GB2583766A (en) * 2019-05-10 2020-11-11 Nchain Holdings Ltd Methods and devices for recording work history and proving reputation in a blockchain network
CN112182565A (zh) * 2020-08-31 2021-01-05 武汉市果壳璐网络科技有限公司 基于scv的挖矿方法、装置、存储介质及设备
CN113098677A (zh) * 2021-04-06 2021-07-09 南方科技大学 基于区块链的挖矿方法、装置、计算机设备及存储介质
CN113364596A (zh) * 2021-05-27 2021-09-07 南方科技大学 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018046008A1 (zh) * 2016-09-12 2018-03-15 上海鼎利信息科技有限公司 一种区块链加密射频芯片存储设计方法
CN107656812A (zh) * 2017-09-27 2018-02-02 咪咕文化科技有限公司 区块链处理方法、系统、节点设备、终端和存储介质
CN109242299A (zh) * 2018-08-31 2019-01-18 深圳付贝科技有限公司 分布式挖矿方法、挖矿机及区块链系统
CN109583893A (zh) * 2018-11-21 2019-04-05 北京航空航天大学 可追踪的基于区块链的数字货币交易系统
CN111682946A (zh) * 2020-05-29 2020-09-18 南方科技大学 基于区块链的挖矿方法、装置、计算机设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张成成: "区块链典型挖矿算法分析", 《数字技术与应用》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022247069A1 (zh) * 2021-05-27 2022-12-01 南方科技大学 一种基于区块链的挖矿方法、装置、移动终端及存储介质

Also Published As

Publication number Publication date
WO2022247069A1 (zh) 2022-12-01

Similar Documents

Publication Publication Date Title
Wang et al. SPDS: A secure and auditable private data sharing scheme for smart grid based on blockchain
Li et al. Rational protocols and attacks in blockchain system
Eyal The miner's dilemma
US11588643B2 (en) Blockchain management system
JP7296596B2 (ja) ブロックの迅速な生成用の分散コンセンサスのアルゴリズム、デバイス及びコンピュータ可読記憶媒体
US20190303622A1 (en) Bicameral framework for fast and tamper-resistant blockchain validation
Wang et al. Distributed security architecture based on blockchain for connected health: Architecture, challenges, and approaches
Paavolainen et al. Security properties of light clients on the ethereum blockchain
Ye et al. A trust-centric privacy-preserving blockchain for dynamic spectrum management in IoT networks
CN112085502B (zh) 一种基于边缘计算的轻量级区块链监管方法及系统
Pillai et al. Burn-to-claim: An asset transfer protocol for blockchain interoperability
CN113098677A (zh) 基于区块链的挖矿方法、装置、计算机设备及存储介质
Wazid et al. BUAKA-CS: Blockchain-enabled user authentication and key agreement scheme for crowdsourcing system
CN110431579A (zh) 基于结构化有向无环图的交易分配方法和装置
Aumayr et al. Thora: Atomic and privacy-preserving multi-channel updates
US20210089356A1 (en) Data Processing System using Directed Acyclic Graph and Method of use thereof
Qi et al. Scalable decentralized privacy-preserving usage-based insurance for vehicles
CN110278266B (zh) 一种基于区块链的资源处理方法及装置
Zhao et al. A secure storage strategy for blockchain based on mcmc algorithm
CN113364596A (zh) 一种基于区块链的挖矿方法、装置、移动终端及存储介质
Lamriji et al. A comparative study of consensus algorithms for blockchain
Ahmed et al. A dependable and secure consensus algorithm for blockchain assisted microservice architecture
CN113239401A (zh) 一种基于电力物联网的大数据分析系统、方法及计算机存储介质
Hu et al. Blockchain‐Enhanced Fair and Efficient Energy Trading in Industrial Internet of Things
CN111682946A (zh) 基于区块链的挖矿方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination