CN111696245B - 一种基于p2p网络的投票方法 - Google Patents

一种基于p2p网络的投票方法 Download PDF

Info

Publication number
CN111696245B
CN111696245B CN202010613447.1A CN202010613447A CN111696245B CN 111696245 B CN111696245 B CN 111696245B CN 202010613447 A CN202010613447 A CN 202010613447A CN 111696245 B CN111696245 B CN 111696245B
Authority
CN
China
Prior art keywords
voting
verifier
user node
vote
network
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.)
Active
Application number
CN202010613447.1A
Other languages
English (en)
Other versions
CN111696245A (zh
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN202010613447.1A priority Critical patent/CN111696245B/zh
Publication of CN111696245A publication Critical patent/CN111696245A/zh
Application granted granted Critical
Publication of CN111696245B publication Critical patent/CN111696245B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于P2P网络的投票方法,具备以下核心特征:广播方法,节省网络带宽;控制网络投票并发量;多阶验证/确认法,可将被攻击的概率降至接近零;对攻击的量化免疫。本发明解决了阻碍P2P网络投票系统能够投入运用的几大技术难点,网络带宽占用,网络投票并发控制,防御攻击的量化免疫。

Description

一种基于P2P网络的投票方法
技术领域
本发明属于互联网技术领域,具体涉及一种基于P2P网络的投票方法。
背景技术
随着互联网深入广大人民的生活,网络急速繁荣,给大家带来信息分享的便利的同时,也带来了一个很困恼的问题,网上的内容并不都是适宜的,包括色情(或打色情的擦边球)、诈骗信息、违反基本道德、文不对题和危言耸听的内容,而这些内容,多数人都能达成共识,不愿看到,也不愿意浪费时间去甄别,所以需要一种经济成本低廉的手段,如网络共享经济,以投票方式构建不良资讯防御墙,倒逼科技向善,间接达到净化网络的目的,为未来智能穿戴设备,物联网净化做好准备。
发明内容
针对现有技术中的上述不足,本发明提供的一种基于P2P网络的投票方法解决了现有技术中存在的问题。
为了达到上述发明目的,本发明采用的技术方案为:一种基于P2P网络的投票方法,包括以下步骤:
S1、设定多阶验证的阶数K和计数器s=1;
S2、将网络中第n个用户节点IPn作为投票发起者,并判断用户节点IPn的投票验证列队长度是否大于阈值L,若是,则结束投票,否则通过用户节点IPn广播网络信息投票,并进入步骤S3;
S3、判断网络中在线人数与在案攻击者人数之差是否大于阈值C,若是,则所有节点接收网络信息投票,并进入步骤S4,否则所有节点拒绝接收网络信息投票,并结束投票;
S4、判断用户节点IPn是否为在案攻击者,若是,则结束投票,否则在每个节点的投票验证列队中添加网络信息投票,并进入步骤S5;
S5、通过每个用户节点分别计算随机的投票验证者IP;
S6、判断投票验证者IP是否为在案的攻击者,若是,则返回步骤S5,否则进入步骤S7;
S7、通过投票验证者IP判断用户节点IPn发起的投票是否异常,若是,则通过投票验证者IP向所有用户节点发出此投票为异常投票的验证消息,在每个用户节点的投票验证列队中删除网络信息投票,并结束投票,否则投票验证者IP向所有用户节点发出此投票为正常投票的验证消息,并进入步骤S8;
S8、判断s是否等于K,若是,则通过所有用户节点确认网络信息投票为正常投票,并结束投票,否则令s的计数值加一,且重新计算第s阶的投票验证者IP,并返回步骤S6;
其中,K≥1,n=1,2,...,N,N表示当前网络中用户节点总数。
进一步地,所述步骤S1中设定多阶验证的阶数K的方法为:
A1、设定被攻击的期望概率E,令多阶验证的阶数K=1;
A2、判断被攻击概率pK是否大于期望概率E,若是,则进入步骤A3,否则令多阶验证的阶数K为当前计数值;p表示当前网络中攻击者占所有节点的比率;
A3、令K的计数值加一,并返回步骤A2。
进一步地,所述步骤S4中判断用户节点IPn是否为在案攻击者时,网络中所有用户节点均判断用户节点IPn是否为在案攻击者,若用户节点IPn为在案攻击者,则所有用户节点分别拒绝用户节点IPn发起的网络信息投票。
进一步地,所述步骤S5中每个用户节点分别计算随机的投票验证者IP地址相同,所述计算随机的投票验证者IP的方法包括但不限于随机IP产生算法,所述随机IP产生算法为:
B1、判断s是否等于1,若是则进入步骤B2,否则进入步骤B4;
B2、获取投票备选项字符串和投票发起者的IP字符串,并顺序组合,得到第一组合字符串,将第一组合字符串的字符个数作为整数,并除以232,得到第一余数;
B3、将第一余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程;
B4、获取投票备选项字符串和上一阶验证者的IP字符串,并顺序组合,得到第二组合字符串,将组合字符串的字符个数作为整数,并除以232,得到第二余数;
B5、将第二余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程。
进一步地,所述步骤S6中攻击者的确认方法为:当投票发起者和多阶投票验证者IP对网络信息投票的验证一致时,若存在其他用户节点IPo否定该投票结果,则通过其他用户节点IPo发起投票发起者和多阶投票验证者IP为攻击者的投票,并判断投票发起者和多阶投票验证者IP是否为攻击者,o=1,2,...,N,N表示当前网络中用户节点总数。
进一步地,所述步骤S7中通过投票验证者IP判断用户节点IPn发起的投票是否异常的具体方法为:
C1、判断投票验证者IP的用户是否主动确认投票为异常投票,若是,则用户节点IPn发起的投票异常,并结束判断流程,否则进入步骤C2;
C2、通过投票验证者IP索引其他用户节点中是否存在此投票为异常的信息,若是,则用户节点IPn发起的投票异常,否则用户节点IPn发起的投票正常。
进一步地,所述步骤S7中投票验证者IP的验证结束后,将投票验证者IP的验证结果广播至网络中每个用户节点,且通过每个用户节点判断发送验证结果的用户IP是否与其计算的验证者IP相同,若是,则接收验证消息,否则拒绝验证消息。
本发明的有益效果为:
(1)本发明采用广播方法投票和传达验证信息,节省了网络带宽,且控制了网络投票并发量。
(2)本发明采用多阶验证法对投票进行验证,有效地减小了被攻击的概率,对攻击量化免疫。
附图说明
图1为本发明提出的一种基于P2P网络的投票方法流程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
下面结合附图详细说明本发明的实施例。
如图1所示,一种基于P2P网络的投票方法,包括以下步骤:
S1、设定多阶验证的阶数K和计数器s=1。
在本实施例中,预先设定投票系统的投票类别,只有当投票属于设定的投票类别才被认为是正常的投票。任意一个节点,都可以发起/验证投票备选项是投票系统设定的投票类别的投票,并广播到其它节点,达到节省带宽及各节点得到的投票确认具有一致性。
S2、将网络中第n个用户节点IPn作为投票发起者,并判断用户节点IPn的投票验证列队长度是否大于阈值L,若是,则结束投票,否则通过用户节点IPn广播网络信息投票,并进入步骤S3。
S3、判断网络中在线人数与在案攻击者人数之差是否大于阈值C,若是,则所有节点接收网络信息投票,并进入步骤S4,否则所有节点拒绝接收网络信息投票,并结束投票。
S4、判断用户节点IPn是否为在案攻击者,若是,则结束投票,否则在每个节点的投票验证列队中添加网络信息投票,并进入步骤S5。
S5、通过每个用户节点分别计算随机的投票验证者IP。
S6、判断投票验证者IP是否为在案的攻击者,若是,则返回步骤S5,否则进入步骤S7。
S7、通过投票验证者IP判断用户节点IPn发起的投票是否异常,若是,则通过投票验证者IP向所有用户节点发出此投票为异常投票的验证消息,在每个用户节点的投票验证列队中删除网络信息投票,并结束投票,否则投票验证者IP向所有用户节点发出此投票为正常投票的验证消息,并进入步骤S8。
S8、判断s是否等于K,若是,则通过所有用户节点确认网络信息投票为正常投票,并结束投票,否则令s的计数值加一,且重新计算第s阶的投票验证者IP,并返回步骤S6。
其中,K≥1,n=1,2,...,N,N表示当前网络中用户节点总数。
在本实施例中,攻击者的确定方法为:投票发起者和多阶验证者一致确定的投票备选项,被其它节点否定为不是投票系统设定的投票类别时,通过做否定的其它节点发起对此投票备选项的发起者和多阶验证者为攻击者的投票。
所述步骤S1中设定多阶验证的阶数K的方法为:
A1、设定被攻击的期望概率E,令多阶验证的阶数K=1;
A2、判断被攻击概率pK是否大于期望概率E,若是,则进入步骤A3,否则令多阶验证的阶数K为当前计数值;p表示当前网络中攻击者占所有节点的比率;
A3、令K的计数值加一,并返回步骤A2。
所述步骤S4中判断用户节点IPn是否为在案攻击者时,网络中所有用户节点均判断用户节点IPn是否为在案攻击者,若用户节点IPn为在案攻击者,则所有用户节点分别拒绝用户节点IPn发起的网络信息投票。
所述步骤S5中每个用户节点分别计算随机的投票验证者IP地址相同,所述计算随机的投票验证者IP的方法包括但不限于随机IP产生算法,所述随机IP产生算法为:
B1、判断s是否等于1,若是则进入步骤B2,否则进入步骤B4;
B2、获取投票备选项字符串和投票发起者的IP字符串,并顺序组合,得到第一组合字符串,将第一组合字符串二进制序列作为整数,并除以232,得到第一余数;
B3、将第一余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程;
B4、获取投票备选项字符串和上一阶验证者的IP字符串,并顺序组合,得到第二组合字符串,将组合字符串二进制序列作为整数,并除以232,得到第二余数;
B5、将第二余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程。
所述步骤S6中攻击者的确认方法为:当投票发起者和多阶投票验证者IP对网络信息投票的验证一致时,若存在其他用户节点IPo否定该投票结果,则通过其他用户节点IPo发起投票发起者和多阶投票验证者IP为攻击者的投票,并判断投票发起者和多阶投票验证者IP是否为攻击者,o=1,2,...,N,N表示当前网络中用户节点总数。
所述步骤S7中通过投票验证者IP判断用户节点IPn发起的投票是否异常的具体方法为:
C1、判断投票验证者IP的用户是否主动确认投票为异常投票,若是,则用户节点IPn发起的投票异常,并结束判断流程,否则进入步骤C2;
C2、通过投票验证者IP索引其他用户节点中是否存在此投票为异常的信息,若是,则用户节点IPn发起的投票异常,否则用户节点IPn发起的投票正常。
所述步骤S7中投票验证者IP的验证结束后,将投票验证者IP的验证结果广播至网络中每个用户节点,且通过每个用户节点判断发送验证结果的用户IP是否与其计算的验证者IP相同,若是,则接收验证消息,否则拒绝验证消息。
本发明的有益效果为:
(1)本发明采用广播方法投票和传达验证信息,节省了网络带宽,且控制了网络投票并发量。
(2)本发明采用多阶验证法对投票进行验证,有效地减小了被攻击的概率,对攻击量化免疫。

Claims (6)

1.一种基于P2P网络的投票方法,其特征在于,包括以下步骤:
S1、设定多阶验证的阶数K和计数器s=1;
S2、将网络中第n个用户节点IPn作为投票发起者,并判断用户节点IPn的投票验证列队长度是否大于阈值L,若是,则结束投票,否则通过用户节点IPn广播网络信息投票,并进入步骤S3;
S3、判断网络中在线人数与在案攻击者人数之差是否大于阈值C,若是,则所有节点接收网络信息投票,并进入步骤S4,否则所有节点拒绝接收网络信息投票,并结束投票;
S4、判断用户节点IPn是否为在案攻击者,若是,则结束投票,否则在每个节点的投票验证列队中添加网络信息投票,并进入步骤S5;
S5、通过每个用户节点分别计算随机的投票验证者IP;
S6、判断投票验证者IP是否为在案的攻击者,若是,则返回步骤S5,否则进入步骤S7;
S7、通过投票验证者IP判断用户节点IPn发起的投票是否异常,若是,则通过投票验证者IP向所有用户节点发出此投票为异常投票的验证消息,在每个用户节点的投票验证列队中删除网络信息投票,并结束投票,否则投票验证者IP向所有用户节点发出此投票为正常投票的验证消息,并进入步骤S8;
S8、判断s是否等于K,若是,则通过所有用户节点确认网络信息投票为正常投票,并结束投票,否则令s的计数值加一,且重新计算第s阶的投票验证者IP,并返回步骤S6;
其中,K≥1,n=1,2,...,N,N表示当前网络中用户节点总数;
所述步骤S1中设定多阶验证的阶数K的方法为:
A1、设定被攻击的期望概率E,令多阶验证的阶数K=1;
A2、判断被攻击概率pK是否大于期望概率E,若是,则进入步骤A3,否则令多阶验证的阶数K为当前计数值;p表示当前网络中攻击者占所有节点的比率;
A3、令K的计数值加一,并返回步骤A2。
2.根据权利要求1所述的基于P2P网络的投票方法,其特征在于,所述步骤S4中判断用户节点IPn是否为在案攻击者时,网络中所有用户节点均判断用户节点IPn是否为在案攻击者,若用户节点IPn为在案攻击者,则所有用户节点分别拒绝用户节点IPn发起的网络信息投票。
3.根据权利要求1所述的基于P2P网络的投票方法,其特征在于,所述步骤S5中每个用户节点分别计算随机的投票验证者IP地址相同,所述计算随机的投票验证者IP的方法包括但不限于随机IP产生算法,所述随机IP产生算法为:
B1、判断s是否等于1,若是则进入步骤B2,否则进入步骤B4;
B2、获取投票备选项字符串和投票发起者的IP字符串,并顺序组合,得到第一组合字符串,将第一组合字符串二进制序列作为整数,并除以232,得到第一余数;
B3、将第一余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程;
B4、获取投票备选项字符串和上一阶验证者的IP字符串,并顺序组合,得到第二组合字符串,将组合字符串二进制序列作为整数,并除以232,得到第二余数;
B5、将第二余数转化为二进制,并顺序取值,将每8位数值作为IPv4的一节,得到投票验证者IP,结束随机IP产生流程。
4.根据权利要求1所述的基于P2P网络的投票方法,其特征在于,所述步骤S6中攻击者的确认方法为:当投票发起者和多阶投票验证者IP对网络信息投票的验证一致时,若存在其他用户节点IPo否定该投票结果,则通过其他用户节点IPo发起投票发起者和多阶投票验证者IP为攻击者的投票,并判断投票发起者和多阶投票验证者IP是否为攻击者,o=1,2,...,N,N表示当前网络中用户节点总数。
5.根据权利要求1所述的基于P2P网络的投票方法,其特征在于,所述步骤S7中通过投票验证者IP判断用户节点IPn发起的投票是否异常的具体方法为:
C1、判断投票验证者IP的用户是否主动确认投票为异常投票,若是,则用户节点IPn发起的投票异常,并结束判断流程,否则进入步骤C2;
C2、通过投票验证者IP索引其他用户节点中是否存在此投票为异常的信息,若是,则用户节点IPn发起的投票异常,否则用户节点IPn发起的投票正常。
6.根据权利要求1所述的基于P2P网络的投票方法,其特征在于,所述步骤S7中投票验证者IP的验证结束后,将投票验证者IP的验证结果广播至网络中每个用户节点,且通过每个用户节点判断发送验证结果的用户IP是否与其计算的验证者IP相同,若是,则接收验证消息,否则拒绝验证消息。
CN202010613447.1A 2020-06-30 2020-06-30 一种基于p2p网络的投票方法 Active CN111696245B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010613447.1A CN111696245B (zh) 2020-06-30 2020-06-30 一种基于p2p网络的投票方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010613447.1A CN111696245B (zh) 2020-06-30 2020-06-30 一种基于p2p网络的投票方法

Publications (2)

Publication Number Publication Date
CN111696245A CN111696245A (zh) 2020-09-22
CN111696245B true CN111696245B (zh) 2022-01-18

Family

ID=72484727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010613447.1A Active CN111696245B (zh) 2020-06-30 2020-06-30 一种基于p2p网络的投票方法

Country Status (1)

Country Link
CN (1) CN111696245B (zh)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2004100798A4 (en) * 2004-09-23 2004-11-04 Burton, Craig A Mr Method for providing peer-to-peer based Internet voting
EP2080134B1 (en) * 2006-11-02 2018-01-17 Koninklijke Philips N.V. Distributed device revocation
CN102413105A (zh) * 2010-09-25 2012-04-11 杭州华三通信技术有限公司 防范cc攻击的方法和装置
CN102332088B (zh) * 2011-06-22 2014-10-29 浙江工业大学 一种基于游程特征的选票符号机器视觉识别方法
CN103200273B (zh) * 2013-04-19 2016-01-20 北京科技大学 基于物理位置的内容副本一致性维护方法
CN103647668A (zh) * 2013-12-16 2014-03-19 上海证券交易所 一种高可用集群内主机群体决策系统及切换方法
US9641542B2 (en) * 2014-07-21 2017-05-02 Cisco Technology, Inc. Dynamic tuning of attack detector performance
CN106445711B (zh) * 2016-08-28 2019-04-30 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
RU2652443C1 (ru) * 2017-07-17 2018-04-26 Акционерное общество "Лаборатория Касперского" Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования
US11144893B2 (en) * 2017-10-30 2021-10-12 Nec Corporation Method and system for securing smart contracts in blockchains
CN109347804B (zh) * 2018-09-19 2020-02-07 电子科技大学 一种用于区块链的拜占庭容错共识优化方法
CN110034959A (zh) * 2019-04-04 2019-07-19 郑州师范学院 一种区块链投票场景中可信节点度量方法
CN110289966B (zh) * 2019-06-19 2021-08-03 西南交通大学 基于拜占庭容错的抗自适应攻击联盟链共识方法
CN110417591B (zh) * 2019-07-23 2021-07-02 中南民族大学 投票节点配置方法及系统
CN111163165A (zh) * 2019-12-28 2020-05-15 北京工业大学 一种基于Fabric联盟链的投票共识方法

Also Published As

Publication number Publication date
CN111696245A (zh) 2020-09-22

Similar Documents

Publication Publication Date Title
CN108985732B (zh) 基于无区块的dag技术的共识和账本数据组织方法及系统
JP7138726B2 (ja) ブロックチェーンコンセンサス方法、アカウンティングノードおよびノード
CN110689345B (zh) 调整区块权重的无许可区块链共识方法、系统、p2p网络
CN112163856A (zh) 用于区块链与物联网融合场景的共识方法及系统
CN111130790B (zh) 基于区块链节点网络的共识出块方法
CN110177356B (zh) 一种基于信任模型的车载命名数据网络转发方法
CN109685505B (zh) 基于关联环签名的拜占庭容错共识优化方法
CN116614516A (zh) 基于声誉改进的pbft共识方法
CN115065468B (zh) 一种基于分组信誉值的pbft共识优化方法
CN117527834B (zh) 一种基于信誉评分机制的改进pbft共识方法
CN113626875B (zh) 一种区块链分片赋能的知识图谱文件存储方法
CN113660125A (zh) 一种基于随机可信委员会的共识方法及装置
CN116094721A (zh) 一种基于聚类的可扩展的分片共识算法
CN115378788A (zh) 基于分层共识和强化学习的区块链性能自适应优化方法
CN111696245B (zh) 一种基于p2p网络的投票方法
CN112801791B (zh) 一种基于授权的区块链共识方法及系统
CN115766742A (zh) 区块链共识方法、系统、设备及计算机可读存储介质
CN117411636A (zh) 一种可随机选取主节点的区块链共识方法
CN109344623B (zh) 一种基于dag的去中心化方法及终端
CN112036880B (zh) 一种实时区块链的实现方法
CN113746859B (zh) 一种高网络性能与安全性的vaPBFT区块链共识方法
CN110443713B (zh) 一种针对区块链交易效率提升的方法及系统
CN112463310A (zh) 基于节点分片的事务数据处理方法、系统、设备和介质
CN115021946B (zh) 一种基于环签名的去中心化混币方法
CN115529137B (zh) 一种基于改进pbft算法的知识产权交易方法

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
GR01 Patent grant
GR01 Patent grant