2023红明谷杯密码wp

Crypto

It Takes Two!

e为矩阵A的行列式,给了多组S = S*A+B,使用其中两组求出A
在这里插入图片描述

然后就是分解p,q,好像有原题做过,直接gcd(h1+h2,n)分解

接着是e和phi不互素,先

phi = (p-1)*(q-1)
d = int(inverse(e//21, phi))
c = pow(c, d, n)

然后有限域开21次

最后crt求flag

from Crypto.Util.number import *
n = 126930298936285661712486297662920895162569606037310367763354747221281175771655642407136326621695910623038808779778530112406355314071209370688157872928010633181351390724545013677593062556323119308457918805555312069055604237211117650220178416298165021603211366843640334616217695418858036626587483782452105122653
c = 113627841667808982839757084973426219545127121566516056267404541633803040730885409234473068650543791446730694746311695177758797711077000091232969424826171863685060090359260225102836081852105845748467870581394884564134418376982186965340367386781824886506478939204791426457255483148486730526127180397268053506840
h1 = 87021607670080656750728189202811647321664825322085967432146885995538140004901574830625347954724344331514731852873721100175299656618161173874818773415684739773055620673258848991693719847569489515642296650035465632567910004553054397894647697286044465567405142149926303968235362573821060105908856127568162452912
h2 = 70528801000055618659638315463133504198238507722722570127215098017082205934290867816695737682738831717228470799826957490782948760796844881508632060312080331264474968266753069687287034453036854258618280625776346633340081217397502423530180647548747144401922660710323623212890923488339464759360304751017490144695
S1 = [[1032613861, 106816006, -579642058, -114961986, -1407150191, 2246208215, -731032284, 1322758335, -530199387, 1086793794, 413715111, 2813583, -10408686, 2540826776, 533417175, -28576837], [1315196062, -2147222506, 1457422790, 725951720, 1932327742, 1405174748, 114563095, 49396155, -298632492, -337759408, -190063519, -347862873, 1899867670, 174485325, -738039578, 288495711], [-989605621, 3001040768, -1366155232, -2639014763, -798679913, -1505776743, -1293775967, -2083309851, 695099207, -556699855, 56109281, -262848585, -178337656, -661146821, -235304156, -156969885], [1227418579, -1425755521, 714563908, 730564391, -371777127, 1819865373, 1028304742, -961308399, 958251347, -2399967719, 2145196053, -1033384088, -133287265, 3403594236, -735798137, -1930708241], [-992200349, 273397344, 457772734, 1219170548, -2916734480, 388270161, -344453199, -80649160, -823396397, 104711252, 1397090628, -2304473497, -524670723, 2254223073, 491007648, -323393514], [169637022, 68351076, -2258520458, 2031873445, -2205681986, -746794507, -245934218, 756721845, 2952961836, 1116738808, 350540191, 653527279, -1459512536, 760827762, 851822809, -702747039], [1653656177, -1060676663, -41376980, -183951048, 1433473570, 437806435, -2719144899, -334337596, 530920363, 909476128, -2891238205, 2530738181, 2311068521, -397425506, 996330261, -210700939], [-619102845, 1213872831, 1567726850, -1217388992, -971827845, -2440116285, 286118880, 1244695933, -238692553, -876125692, -2363713770, 1734545363, 563182894, 1081453861, 321618106, -2387800976], [-898283246, 236452115, -1491597556, 2189364067, -490514498, 145128377, 621398295, -127981220, 390050013, 110820293, 199393396, -2360152115, -1891225877, 3446162277, 1106399678, -439552350], [97533185, 774478626, 3077940446, -1070775758, -30111913, -2127497063, 1327679909, 1382311938, 575995582, -1119210977, -504610272, -714458008, 1600329869, 1505305639, -2920083778, -3136072034], [684846755, 2162931633, 4404936, -3191953649, 1207044874, 2959383450, -431919033, -509260894, -2840077610, 1114589069, 1525800685, 118969700, 1395083527, -3667188934, 1229096356, 3174922403], [-283119890, -1354873881, -538463855, 1237730916, -2640119665, -2935497918, 443809548, -330638492, -16759938, -363349190, -3342717126, 2044675208, -2068023044, 1247123636, 1526993674, 343740477], [2135824102, -1465525238, 820086823, -1447137787, 3038780754, -120904544, -98058739, 446586489, -31227506, 935079622, -1902274205, 2399987653, 578058470, -2262418213, -1149997985, 926662344], [-4401261, -2805791783, -40382659, 1392106149, 214813732, -223484613, -92163972, -849389921, 311804391, -1437090329, 155084981, 2110468048, -1250841213, -2497005129, 2440158003, 404541707], [-330139748, 1541875159, -905519693, 97666158, -1423714932, -767140640, -1154873739, 140173456, 1474766572, 942065411, 163134665, 1334634385, -104414351, -44143140, 506512633, -2033363424], [-936526289, -1288157356, 63042838, 573357950, 287573906, 2396577024, -746033441, -1401408701, -1863620994, -1143137451, 1600168035, -626033143, 969189909, -204645083, 1692832029, 718951788]]
S2 = [[-133595935540106, -3024619048481, -30568590003134, -21170394809528, -74284029024818, -179839781537115, -13622548754258, 4058932744998, -61310275910819, 49511521811952, -88415585834451, 133538390054171, -215532221977046, -12998081782565, -74267490172232, 72278103716321], [-29560723404421, -87183875570882, 131865915675338, -12978527501115, 8617441530848, -94884742451186, -151939864945579, 102821342306878, 34998051344836, -84228129643954, -67030067113711, 16396905899250, -35803291504199, 81299567319797, -14641155523649, -83365285747722], [28224549044370, 129129551544063, -122154097479633, 27085908628192, -46173208474388, 184805637399716, 60747207256744, -118328426287365, -3550931652917, 92711215737880, 214246463543182, -218231675924878, 108908281038108, -70824356151442, 30295102953783, 131515698012176], [41833532188499, -21720258953084, 81301647785747, -183792415267851, -48559159873408, -137844781642803, -37761157988470, -60099634163868, -99152256442598,