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

    浏览量

    11608
  • 哈希算法
    +关注

    关注

    1

    文章

    56

    浏览量

    11092
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Molex OTS零哈希电缆组件技术解析与应用指南

    Molex现成(OTS)零哈希电缆组件是标准分立式电线电缆组件,设计用于应对电子设备日益缩小的挑战。这些电缆组件提供节省空间的薄型解决方案,具有创新的双点接触特性,有2、4、6和8电路尺寸可供选择
    的头像 发表于 11-17 16:44 462次阅读

    fpga开发板 璞致 Kintex UltraScale Plus PZ-KU3P 与 PZ-KU5P核心板与开发板用户手册

    的Kintex UltraScale+开发板采用核心板+底板结构,核心板提供KU3P/KU5P两种型号,配备2GB DDR4、256Mb QSPI Flash等资源,通过240
    的头像 发表于 09-26 10:46 603次阅读
    fpga<b class='flag-5'>开发</b>板 璞致 Kintex UltraScale Plus PZ-KU3<b class='flag-5'>P</b> 与 PZ-KU5<b class='flag-5'>P</b>核心板与<b class='flag-5'>开发</b>板用户手册

    睿擎混合部署方案:基于QT的电机驱动系统开发|技术集结

    一、方案核心概述本方案旨在解决系统开发中“高性能实时控制”与“丰富人机交互”的需求矛盾。它采用混合部署的架构,将系统清晰地分为两个层面:1.实时层:部署在睿擎派设备的RT-Thread
    的头像 发表于 09-11 18:33 4969次阅读
    睿擎混合部署<b class='flag-5'>方案</b>:基于QT的电机驱动<b class='flag-5'>系统开发</b>|技术集结

    ESP32-P4 口袋开发板 启明云端 WT9932P4-TINY开发

    在万物互联的智能时代,您是否还在为寻找一款性能强大、接口丰富、应用灵活的嵌入式开发板而烦恼?启明云端全新推出的WT9932P4-TINY开发板,基于乐鑫科技高性能ESP32-P4芯片匠
    的头像 发表于 09-11 18:06 981次阅读
    ESP32-<b class='flag-5'>P</b>4 口袋<b class='flag-5'>开发</b>板 启明云端 WT9932<b class='flag-5'>P</b>4-TINY<b class='flag-5'>开发</b>板

    ‌TI CC1311P3 LaunchPad™开发套件技术解析与应用指南

    Texas Instruments CC1311P3 LaunchPad™ 开发套件设计用于加速开发SimpleLink™ 亚1GHz无线MCU。该器件支持TI 15.4堆栈和专有射频协议。CC13XX-CC26XX软件
    的头像 发表于 09-01 15:19 822次阅读
    ‌TI CC1311<b class='flag-5'>P</b>3 LaunchPad™<b class='flag-5'>开发</b>套件技术解析与应用指南

    德州仪器LAUNCHXL-F28P65X LaunchPad开发套件技术解析与应用指南

    Texas Instruments LAUNCHXL-F28P65X LaunchPad™ 开发套件基于C2000™ 实时微控制器系列F28P65x器件。LAUNCHXL-F28P65
    的头像 发表于 08-14 14:23 1175次阅读
    德州仪器LAUNCHXL-F28<b class='flag-5'>P</b>65X LaunchPad<b class='flag-5'>开发</b>套件技术解析与应用指南

    P2P技术——数据采集系统高效存储的关键

    P2P技术凭借其直连高效、低延迟的特点,已成为数据采集系统实现高效数据存储的关键技术。作为专业的数据采集与存储方案提供商,度纬科技的ASMC-PXIe-8016存储卡,不仅完美融合了P2P
    的头像 发表于 07-24 17:24 537次阅读
    <b class='flag-5'>P2P</b>技术——数据采集<b class='flag-5'>系统</b>高效存储的关键

    哈希极化到零拥塞:主动路径规划在RoCE网络中的负载均衡实践

    集群整体性能的瓶颈。本文将探讨哈希极化的成因、影响,并介绍一种通过主动路径规划(PPD)来优化网络配置、提升性能的解决方案
    的头像 发表于 07-21 17:27 1669次阅读
    从<b class='flag-5'>哈希</b>极化到零拥塞:主动路径规划在RoCE网络中的负载均衡实践

    瑞芯微RK3506 3核A7@1.5GHz+双网口+双CAN-FD 工业开发板—Linux系统开发手册

    本文主要演示Linux系统开发流程。包括LinuxSDK的配置与编译,U-Boot、Kernel及Rootfs开发,以及系统镜像的替换方法,旨在帮助开发者完成
    的头像 发表于 05-20 09:24 1141次阅读
    瑞芯微RK3506 3核A7@1.5GHz+双网口+双CAN-FD 工业<b class='flag-5'>开发</b>板—Linux<b class='flag-5'>系统开发</b>手册

    【新品】ESP32-P4全功能开发板,启明云端WT99P4C5-S1多媒体开发板强势来袭!

    为了满足广大开发者对于高性能、多功能开发平台的需求,深圳市启明云端有限公司重磅推出了基于WT0132P4-A1核心板设计的多媒体开发板——WT99P
    的头像 发表于 03-18 18:06 1736次阅读
    【新品】ESP32-<b class='flag-5'>P</b>4全功能<b class='flag-5'>开发</b>板,启明云端WT99<b class='flag-5'>P</b>4C5-S1多媒体<b class='flag-5'>开发</b>板强势来袭!

    基于步进电机的柴油机EGR系统开发与试验研究

    基于步进电机的柴油机EGR系统开发与试验研究
    发表于 01-09 15:01 0次下载

    诊断系统开发咨询服务

    随着汽车电控系统复杂度及消费者对于汽车售后服务水平要求的提升,诊断系统开发在整车开发中的重要度日益突出。经过多年的实践,经纬恒润积累了丰富的经验,业务涵盖诊断协议及功能定义、诊断测试、整车下线配置及检测(EOL)需求设计、整车售
    的头像 发表于 12-18 16:30 979次阅读
    诊断<b class='flag-5'>系统开发</b>咨询服务

    SiFive 推出高性能 Risc-V CPU 开发板 HiFive Premier P550

    “  HiFive Premier P550:世界上性能最高的 RISC-V CPU 开发板,以 Mini-DTX 外形提供高性能 Linux 开发平台,支持下一波 RISC-V 开发
    的头像 发表于 12-16 11:16 2675次阅读
    SiFive 推出高性能 Risc-V CPU <b class='flag-5'>开发</b>板 HiFive Premier <b class='flag-5'>P</b>550

    嵌入式系统开发中的测试方法 嵌入式系统开发与AI结合应用

    嵌入式系统开发中的测试方法 嵌入式系统开发是一个复杂的过程,涉及到硬件和软件的紧密结合。测试是确保系统可靠性和性能的关键步骤。以下是一些常用的测试方法: 单元测试 : 单元测试是针对软件中最小的可
    的头像 发表于 12-09 10:22 2033次阅读

    嵌入式系统开发与硬件的关系 嵌入式系统开发常见问题解决

    嵌入式系统开发与硬件的关系 嵌入式系统是专为特定应用设计的计算机系统,它们通常嵌入在所控制的设备中。这些系统的关键特点是它们与硬件的紧密集成,这意味着软件必须为特定的硬件平台量身定制。
    的头像 发表于 12-09 09:38 1466次阅读