[lcg]a,b,m未知,求初始seed。Homoo00。

s = \
[1298464442556404253589469301726686648460018983, 338994730766931101315005874918795942590925307, 2168707823811104203632607148485605053518724853, 288029652532724308759605145340927661745390045, 2102954827119688859115426127874941951743005786, 1560424680395670749415624054090677568424727345, 2008484402896120836081890715352514944733698976, 1953894433135819225331030280684956423391870103, 1408274506694579684367875564191257622692263409, 95302207855451779037256702518715314619964592]
c = [10881454505352618196313929358413927848165004572407441767262201608009431062239474586245603095298763877795823151392799419969652897669272284058035553229860325281563591948218417085979029605952389967415569754628163668659278595172843903783688855667125050153305580349926186321896201877556158223630039547240576210771527341084966101419883484737012711331769650617389881995952650499080604726950420987163973185322714770918757574137508066743313828541207258851036150630035783847155741635442257544449756515691621321838759091007077098759777122234471653262241478839438434099563563531560632498664765402219748028920106056150394164812688, 7053433401274956449277071695330130227894363819192409409957603854552542871877794115046170468384634218156214513446735900646512245978160547461010963225898542259493336491740165540055782019653289029752743539834135881250060811102503545811486704127320637984548416367728579573335152837123012400518504740163061844453845776059837470308971190399652102251022538375119219877204424974228338341762751643815168678504500964663175157284803014144791198681704000375194942339858937578787280509582606110347847649444688785403770796556128238112816364702654780432015988768911466112622691258176101228275567028317327636225469435828535339200376, 10038205006337367537081515548656447375088748272746942581707046520619750110454839425339243145021534092510340635919622685356144465599813752852084420131600160514689751061245370653473942456977787595089948933118416030816783168941681959526491861674046847101465780327308147534248575347751611385609744645035819035971535525507015591152650943631313794338557272617098590413467356186642993611286079953729829309787410698168875218360140531646503644192839645477280484500644709430201106032283572508472117231678181527647042481679026628898019306658137370201431059468126116777826381809030518718579781026457235023480595766043055047671827, 14555457906604541888902469517159268249249012432483579716370219745653490957726624215538399116115922007585740534623868633181866850901851077365972475051655756663334710183564282254680362128184645864929806533508351921291793686624437592688585328090519101147232925692873558396453399096341172446706308956257950391465082871241167152692811988552447585143637715273776480102835164614803920814007851163433973617330659282054423156899176919595876377951520865492392853751634597513524044589035568512644176937168217094773712797923852031567028681232987378934205637019227201343532717256554594017668320517507121842049065729400724751409311, 7606570280475152836270707090940611879877547129568227606285181716082557837913045731222872630485054449113948908348981465564334770157521708228149312619593276949591558424142563634797845271333035199897309800566730983836605353551559688872841322139781088983807398682873832960868818122527595007612212536586697876103992541960616898402906544850735845172855964095734207717123308856250444975393931971673074045202385685562128153307053884869562087745321789189405113447086058216586521145027873522313482545994125764731071805397892231574884926064964443434246974851876399603662266809518034297706114832292994511807374713845047271622176, 14507081330291762046377158761676217394349526706649360447609142137092378414849836031709052199764695612489105508078439087882444699927825168364071086466737848910290318985221255891015141903111031567877937538338176848221399338015975119322624013440631161321971425812179677706231897094242579759528350448536793354766194014143027102512313782541137218480346416582350723578344966595683858174829655485716011437653906237876130788024216649848441275405947605357705007085934216399574404556235145102239065713388981975872413297826413621841669914692107047520964866439739923504043446950476802590196381443651748945003275393950400014569901, 16152686865015017160160803093351441071753882960251598209559492645402985109842159786281064673729642527395462891248965100548920367374194657919410333452324036344002209935519922100549110343391970516475894423741276985752587079266705587301936234504016293213667639081581995533606332685103019235061622669809761969855774888606040373866984560593975892241420791870348080878162694340977759373848858567938257372361256052546708546577628391438678155483069989906079518173785244541356547738736382332515867184719603006103173351426443454609264951522047601119429784646919409892540405806308645418506102865927165289097264626818983530665554]
hint = 4104409309735908912794361691144315627484234990258210986395918366933835269875433383191328184857370481296083174018051222849921134897077278566168618363718579980504969155698406218407930939893230906684346574420313399950039191416481151473707494828622794771010520784492144228878326101265222884104332139904532042430693012931522913578637675023269427289689857251337426575817749679597476003987084275615129595398191987382796715288428720581444020219198495079262529484081700185529013260594257934675036587741532330087409415271701078391994603625679861383302281928765074892862110082632359193554938829501872149018085369646470731263744
nn = 16672180178285330754534966089029470654227505905087800783587125382243331424392399064535235896861435597873263211346138232820709308131528537631214399285369606878914795770172543136461026839191109564909201811592273806099923789082162839803491705120609469492208234354579684864388499816721291900860635641980828396950393019630182053684118190608810088963955695447634286080699039651668293535735844819791118079054192087637781283286444525198630960769852726654377165395267945560172717923601672247718712236215972581178057116572468569989919409895614004981027193460243449106301910600224998867275296501219728534340036356787078585004779

from Crypto.Util.number import *
c1=[]
for e in range(len(s)-1):
    tmp=s[e+1]-s[e]
    c1.append(tmp)
c2=[]
for e in range(len(c)-3):
    tmp=c1[e+1]**2-c1[e]*c1[e+2]
    c2.append(tmp)
print(c2)

from functools import *
n=reduce(GCD,c2)
print(n,isPrime(n))
# y=ax mod n
a=c1[1]*pow(c1[0],-1,n)%n
print(a)
print(a.bit_length()==n.bit_length())

b=(s[9]-a*s[8])%n
# print(b,isPrime(b))
s0=(s[0]-b)*pow(a,-1,n)%n
print(s0,long_to_bytes(s0))


m2_list = [3, 7**2, 13, 79, 409, 572360576146727, 33065072795963938522763]
x=1
for each in m2_list:
    x*=each
from Crypto.Util.number import *
print(long_to_bytes(x))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值