0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

p2p哈希游戏开发方案—哈希竞猜系统开发逻辑

a1271916008 来源:a1271916008 作者:a1271916008 2022-06-01 09:54 次阅读

哈希算法是一种典型的分布式的受伤的海燕表算法,哈西系统多用于p2p网络的构建,由Petar Maymounkov和David Mazieres共同创造。

poYBAGKWxoSAF_AGAAVkUR8uInQ583.png

分布式环境下的受伤的海燕表的难点在于以下几点:

分布式环境下每个服务器不可能掌握所有服务器的情况,因此如何保证你的请求能在没有中央节点定位的情况下找到对应的服务器是一大难点。同样由于分布式环境的服务器的掌握信息有限,那么服务器的加入和退出如何能够被集群知晓也是一大难点。

import random

def gcd(a,b):

if a<>

a,b=b,a

while b!=0:

temp=a%b

a=b

b=temp

return a

def getpq(n,e,d):

p=1

q=1

while p==1 and q==1:

k=d*e-1

g=random.randint(0,n)

while p==1 and q==1 and k%2==0:

k/=2

y=pow(g,k,n)

if y!=1 and gcd(y-1,n)>1:

p=gcd(y-1,n)

q=n/p

return p,q

n=0x71ee0f4883690893ab503e97e25e6308d4c1e0a050cbea7b9c040f7a5b5b484afcecc8a9b3cc6bf089a1e83281562df217caab7220e3dfc14399139ce437af2f131f9345675e4d848cfab5827818eeab7834374be4a0513f81f3df125a932c2bb4c24c834d798bcc80f9c4a8770b01f8e54620b72a4f0491edd391e635d48e71

e=0x10001

d=0x455e1c421b78f536ec24e4a797b5be78df09d8d9e3b7f4e2244138a7583e810adf6ad056bb59a91300c9ead5ed77ea6bafdebf7ab2d9ec200127901083c7ffca45e83f2c934358366a2b6207b96a0eae6df0476060c063c281512834a42350a3b56bc09f5cec1a6975257d7f12a58f6389060e49b41f05e88ea2b30b395f6391

p,q=getpq(n,e,d)

print("p=",p)

print("q=",q)

print(p*q==n)

哈希算法在区块链中有着广泛的使用,交易信息的存储、工作量证明算法、密钥对的产生等过程中都有哈希算法的存在。

哈希(Hash)也被翻译为散列。任意长度的输入经过散列函数,都能够输出为固定长度的值,该输出就是散列值。SHA(secureHashalgorithm)也被称为安全散列算法,直译为哈希算法,由美国国家安全局所设计,由美国国家标准与技术研究院发布。SHA家族现有五个算法,分别是SHA-1.SHA-224、SHA-256、SHA-384和SHA-512,后四者并称为SHA-2

如果将区块链看作一个公共账本,节点中每个人都备份一份账本数据,任何人都可以对账本上的内容进行写入和读取。如果有用户对内容进行了恶意算改,依照少数服从多数的原则,将差异数据与全网数据进行比较后,就能够发现存在的异常。但是,账本上的内容随着时间的累积,数据量必然会越来越庞大,如果将交易数据进行原始存储,利用大量数据直接进行比对,工程量对于一个货币系统而言是十分不现实的。对此,在交易信息的存储中,区块链利用了哈希函数能够方便实现数据压缩的特性:一段数据在经过哈希函数的运算后,就能够得到相较而言很短的摘要数据。

审核编辑:符乾江

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • P2P网络
    +关注

    关注

    0

    文章

    23

    浏览量

    11147
  • 哈希算法
    +关注

    关注

    1

    文章

    56

    浏览量

    10690
收藏 人收藏

    评论

    相关推荐

    是否可以将Laird LWB+ CYW43439和WHD用于WiFi Direct/P2P模式?

    我目前正在AP和STA模式下成功使用带有WHD的Laird LWB+ CYW43439。 但是现在我想在 WiFi Direct/P2P 模式下使用它。 是否可以将Laird LWB+ CYW43439和WHD用于WiFi Direct/P2P模式? 如果是这样,我需要什
    发表于 03-01 07:47

    康谋方案 | 加速自动驾驶系统开发的技术解决方案

    过程。 ADTF 能在 Windows、Linux 和 ARM 环境中运行配置。它可以实时同步处理多个传感器数据流。集成的测试环境,使得在开发平台中编程的驾驶员辅助和安全功能可以很容易地可视化并进行虚拟测试。 ADTF作为自动驾驶系统开发的技术解决
    的头像 发表于 01-19 15:57 164次阅读
    康谋<b class='flag-5'>方案</b> | 加速自动驾驶<b class='flag-5'>系统开发</b>的技术解决<b class='flag-5'>方案</b>

    嵌入式系统开发资料分享

    电子发烧友网站提供《嵌入式系统开发资料分享.rar》资料免费下载
    发表于 11-10 09:41 0次下载
    嵌入式<b class='flag-5'>系统开发</b>资料分享

    基于网络的嵌入式监控系统开发

    电子发烧友网站提供《基于网络的嵌入式监控系统开发.pdf》资料免费下载
    发表于 10-12 10:30 0次下载
    基于网络的嵌入式监控<b class='flag-5'>系统开发</b>

    STM32H7怎么实现一个哈希的数据运算处理?

    STM32H7怎么实现一个哈希的数据运算处理
    发表于 10-10 06:34

    哈希与加密有什么区别?

    哈希与加密有什么区别
    发表于 10-09 06:29

    Banana Pi BPi-P2 Pro:ArmSoM P2 Pro 物联网开发板评测

    的SoC,仅8.5欧元,同时非常有趣地针对音频应用,例如:智能扬声器、语音控制设备或录音系统。根据规格,该芯片的工作频率高达 1.3 GHz,但在 BPi-P2 Pro (Armsom Pro) 板上
    发表于 09-13 12:21

    Arm Morello系统开发平台修订版:r0p1技术参考手册

    Morello系统开发平台(SDP)是一个开发平台,用于硬件原型、软件开发系统验证和性能剖析或调试。它由SDP原型开发板组成,由Morel
    发表于 08-12 07:25

    两个st25r16与st25r16b如何进行P2P通信?

    \\Applications\\X-NUCLEO-NFC08A1\\ap2p_proprietary中,两个st25r16与st25r16b如何进行P2P通信,目前已经跑通了,但是看代码的设置都一样,为何是st25r16为Initiator,st25r16b为Target
    发表于 08-07 07:31

    想使用卡模拟(CE) T4T的P2P demoIni()初始化接口需要如何配置?

    想使用卡模拟(CE),T4T的P2P,demoIni()初始化接口需要如何配置?还有就是这个P2P和AP2P有什么区别?
    发表于 08-05 07:49

    Linux内核分析 端口哈希

    端口哈希桶 在inet_csk_get_port函数中的变量声名中有如下几个结构体: struct inet_hashinfo * hinfo = sk- >sk_prot- >h.hashinfo
    的头像 发表于 07-31 11:03 428次阅读
    Linux内核分析 端口<b class='flag-5'>哈希</b>桶

    嵌入式Linux系统开发介绍

    Linux 系统开发 基于 linux 操作系统开发我们的产品叫 linux系统开发。此开发的编程方式和裸机
    的头像 发表于 07-27 17:00 838次阅读
    嵌入式Linux<b class='flag-5'>系统开发</b>介绍

    Linux系统开发环境搭建

    今天给大家讲一讲Linux系统开发环境搭建。
    发表于 07-12 14:51 691次阅读
    Linux<b class='flag-5'>系统开发</b>环境搭建

    设计大规模并行哈希图时的几个重要考虑事项

    在 GPU 上使用大规模并行哈希图实现性能最大化
    的头像 发表于 07-05 16:30 763次阅读
    设计大规模并行<b class='flag-5'>哈希</b>图时的几个重要考虑事项

    Dubbo负载均衡策略之一致性哈希

    本文主要讲解了一致性哈希算法的原理以及其存在的数据倾斜的问题,然后引出解决数据倾斜问题的方法,最后分析一致性哈希算法在Dubbo中的使用。通过这篇文章,可以了解到一致性哈希算法的原理以及这种算法存在的问题和解决
    的头像 发表于 06-16 15:30 320次阅读
    Dubbo负载均衡策略之一致性<b class='flag-5'>哈希</b>