首页 > 其他分享 >一些脚本

一些脚本

时间:2024-02-21 19:56:48浏览次数:22  
标签:脚本 utf encode m1 m0 import print 一些

import itertools

# 假设数组为 arr
arr = [0, 22330693840234311255135949029444484409546667648719176405826663892267656641027, 127168478027482847709328807841325386271927515479937061237117195618823278578116, 182258311374053859620888699680212168010665323374548870180038645090147843867373, 1120044041165490856498692287111236626472260308631093314161690677868431277653536, 1983473421395194676263973602935227753154638099492341714205203280778040675593450, 1574768551732085861078069762534699936995654652684634077104498873387111232412816, 4988773041677976257517254491234335651753610239922582254283447205154548743632904, 869738033317159039287197189670964123964466628318970710545560734535418094431872, 716771557072892076589368879721160406613516964478389692662921907034616035095047, 2841054733362182186252458286741823726277405165099408732758691872324732479956600, 6200268989316199565071790593244237980113705529543497656127585449937778556282311, 10670728743047162087774896911955052588177734200772863764402582886370432879158720, 7713906922622752752151916696524419287963819641354815269293605765422900017233866, 13689077681405838115291939958594572280593102467042881661528817316126253635857444, 23677404931618939684375357302211056316481456538100460743428412550112769975941300, 22334702277647520331031971258896634990832479997228972554803329027443498276011264, 24695994670269108821474844143270568317378271123560130717104045624895774803117988, 10726839246587772223823222881528936091917884797218227418638385365176143122217812, 1312747277711228023681888222399668996816715931126782050057534166588569071642948, 14829434912751138825019062212374862054511849430113519894438429231649766515851600, 4917180643387964007287001238070594020985844865025196727991425387470641537875518, 50772176246766546694026388399540445347088279634906123947563600159509306535585300, 20680598744337311676861190641592800456437920078216405214477640693225317242487078, 57560623230262776939750106414721715686651269149245752162663251361023294801081600, 63941301709699592129851769466238327968731332723117779339939586823464299930335000, 30248094445348087425063737332624900285689080519537666953907462011122884602991780, 9774708715683840095021685805936771586028623975773332766526807054152590972465402, 61228751294246951869891671407294469506401133460669313068369993608651062307301536, 41981261972157910420555352577742115252749734931422260886610665615142932761250238, 92332289648534120255700799585162857690611895814212622902006472593032842219422300, 102090694836612045964656351247645673041342905792690679450732518780700786595757872, 8465306744686231379969736050689382339949995071265316552433666241539252681451520, 114072153081233359084524715014825650254537286682603109151986752844288607088786066, 39946361462751138749261511325777846481011288953117931061771127396007551287911208, 51243479474799144289518571031495536096625532453885999576052634625243425716758700, 132356504405092579871543186323238530972479261975470487510352508943760068475015440, 109077835346013498228568867183016137777644328620298812835459712256002833220195417, 52635267919343130972014005273289555808336337947193348140410148289978267235415648, 9568343438735227407132147420705807168258684366618511035784505242511446472528193, 136103745592722122037143341370556407561964415802887285393102934361453911394982400, 15501324115571167305412632833471884183641743683875758176471163573103721210677697, 124579054262159655532164017523017564697199759561416452868759873217906475930663652, 69331433672201876294056448428159828327113921951663941374636039203754564050923557, 134825790087045765574290263555594553874136924161813224135475519279020442040026864, 127098236196925756090074171499128508507461799729629969599917408442298996799214250, 120716315173788627251671396349879537684221828425501013413665864262612928100844788, 246230945837378885729579613348413794121875158206606559652651668292953179058653508, 182436930868427241575608788617950343128628563937798409868187047670441481734494464, 2216307326510769061988701188806623458793041637834505792592287312459658319545700, 217778196427604121810125555838576095983026719310491477185297193068203986197977500, 200042153662024093707446037685450040433674498805614787040971237961725493946807124, 55096521527758008435839474651130444687406648424301616531387151625485823586357376, 315911207494925949742212443025101639383551363855632617410391325922132118052280432, 160608721274889447938606989650810386105243008009388938737103600719751998405695052, 80485718020426913778898398898436382386718914865993732581279132006386834763843750, 175256027423949464821148437330609889703365513530429385704635213979205690543187968, 312494592697141143680238564093947039458907138790072672218576868913190841311490441, 12551558878313236197845748627693664902436846005140074555532691630477757920400492, 368163678666609325358026149200535116090648801749210267074911311082497122727619418, 132244486142872991925346591101049195464960273281071718729683433268064480383763200, 187524820546739515326467479985404725103464284941528452333038247179114024353648176, 283320427018968981710753682470612392210145925235229015984823155988278867852342424, 273076274412276025537791810337835157311632197268182698230310819989050497776963263, 327014096802403962955714851262399814244813548393488285833127238998882721132883968, 206832690482752439833856322955815020186765387390104398292271480795930880106073325, 104167288428075991079921385804154376915444422785935287020330329091692992364020356, 468442878028756757484855000070722747267796721762231179211069666438706434848755245, 13006681553773847728990900149289800641720551387610802780788594468812438984199760, 199716185379958028413200192962692404940513822154864483463050473557869065589649168, 412558417168152436059170177108518481504104909389966119467224740980715361039084900, 379013360598848524426838307544021120793535763669172279637583374247930017257612752, 79510803625960975136293110699095743477640774841480691165531320726532279504009152, 119246467719878286004186703543298639812649580965124121805161153548472942538790653, 44235048729597559877492812430806736314711896199059487848598597142896457753232432, 453319033816285234767354843915966019736243075972507643199351036007057824008570000, 300975897791737470999557383409844137620736489995632513055593286593028252152372832, 488688724028459389993054497130088474659149461722402520817247390457263798063265080, 98311703485802819685121101139900586756957739352203591545958914778011243453808576, 503894794312461918204750180188338003935699664049776370432270755067603639622480931]

# 选择任意八个元素的所有组合
combinations = list(itertools.combinations(arr, 8))

# 遍历所有组合并计算和
for combination in combinations:
    total_sum = sum(combination)
    print(f"Combination: {combination}, Sum: {total_sum}")

sha256前四位爆破

import hashlib
dic = 'abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'
for a in dic:
    for b in dic:
        for c in dic:
            for d in dic:
                t =str(a)+str(b)+str(c)+str(d)+'YMBlFIGoaFZ1Z24P'
                m = (hashlib.sha256(t.encode())).hexdigest()
                if m[:64] == '77aeea7731a49f8bc37099419177dc7b51d8941a4c7213c76ad7b4466f35f050':
                   print(t)
                   break
import hashlib
import itertools
from string import digits, ascii_letters, punctuation
alpha_bet=digits+ascii_letters+punctuation
strlist = itertools.product(alpha_bet, repeat=4)

sha256="e5c915d1aab6bca2d0eba7d80bfb45e695bb772116cf286f92545a34f8a00222"
tail="JxoI7XNQAGudKVZs"

xxxx=''

for i in strlist:
    data=i[0]+i[1]+i[2]+i[3]
    data_sha=hashlib.sha256((data+str(tail)).encode('utf-8')).hexdigest()
    if(data_sha==str(sha256)):
        xxxx=data
        break

print(xxxx)#CjAv

md5爆破

import hashlib
for i in range(32,127):
    for j in range(32,127):
        for k in range(32,127):
            m=hashlib.md5()
            m.update('KCLWG'.encode('utf-8')+chr(i).encode('utf-8')+'K8M9O3'.encode('utf-8')+chr(j).encode('utf-8')+'DE'.encode('utf-8')+chr(k).encode('utf-8')+'84S9'.encode('utf-8'))
            des=m.hexdigest()
            if 'f0af' in des and 'b1f463' in des and 'f7ae' in des and'b2ac4e6'in des:
                print (des)

解pell方程

import numpy as np
from collections import deque

d = 114514
m = int(np.sqrt(d))
dq = deque()
dq.append(m)
n0 = n1 = d - m * m
m1 = m
while 1:
    q, m2 = divmod(m1 + m, n1)
    dq.appendleft(q)
    m1 = -m2+m
    n1 = (d-m1*m1)//n1
    if m1 == m and n1 == n0:
        break

dq.popleft()
b = 1
c = 0
for i in dq:
    b1 = c + b * i
    c = b
    b = b1

print(b*b-d*c*c)
print(b)
print(c)

已知明文高位的低位爆破

from Crypto.Util.number import *
from secret import flag
m=bytes_to_long(flag)
p=getPrime(1024)
q=getPrime(1024)
e=5
n=p*q
c=pow(m,e,n)
m0=m>>128

n=27814334728135671995890378154778822687713875269624843122353458059697288888640572922486287556431241786461159513236128914176680497775619694684903498070577307810263677280294114135929708745988406963307279767028969515305895207028282193547356414827419008393701158467818535109517213088920890236300281646288761697842280633285355376389468360033584102258243058885174812018295460196515483819254913183079496947309574392848378504246991546781252139861876509894476420525317251695953355755164789878602945615879965709871975770823484418665634050103852564819575756950047691205355599004786541600213204423145854859214897431430282333052121
c=456221314115867088638207203034494636244706611111621723577848729096069230067958132663018625661447131501758684502639383208332844681939698124459188571813527149772292464139530736717619741704945926075632064072125361516435631121845753186559297993355270779818057702973783391589851159114029310296551701456748698914231344835187917559305440269560613326893204748127999254902102919605370363889581136724164096879573173870280806620454087466970358998654736755257023225078147018537101
m0=9999900281003357773420310681169330823266532533803905637

本题是coppresmith攻击的一种,我们已知m0,我们将m0左移128位得到高位m,输出一下可知m有311位,那么m的183位高位已知,爆破剩下的128位低位即可。

爆破代码如下,sage的代码,得到的就是真正的m

def phase2(high_m, n, c):
    R.<x> = PolynomialRing(Zmod(n), implementation='NTL')
    m = high_m + x
    M = m((m^5 - c).small_roots()[0])
    print(hex(int(M))[2:])
n=27814334728135671995890378154778822687713875269624843122353458059697288888640572922486287556431241786461159513236128914176680497775619694684903498070577307810263677280294114135929708745988406963307279767028969515305895207028282193547356414827419008393701158467818535109517213088920890236300281646288761697842280633285355376389468360033584102258243058885174812018295460196515483819254913183079496947309574392848378504246991546781252139861876509894476420525317251695953355755164789878602945615879965709871975770823484418665634050103852564819575756950047691205355599004786541600213204423145854859214897431430282333052121
c=456221314115867088638207203034494636244706611111621723577848729096069230067958132663018625661447131501758684502639383208332844681939698124459188571813527149772292464139530736717619741704945926075632064072125361516435631121845753186559297993355270779818057702973783391589851159114029310296551701456748698914231344835187917559305440269560613326893204748127999254902102919605370363889581136724164096879573173870280806620454087466970358998654736755257023225078147018537101
high_m=3402789736593180236658155503802934243882633217001276110456412540082077704313307856114886377472
phase2(high_m, n, c)
from Crypto.Util.number import *
n=27814334728135671995890378154778822687713875269624843122353458059697288888640572922486287556431241786461159513236128914176680497775619694684903498070577307810263677280294114135929708745988406963307279767028969515305895207028282193547356414827419008393701158467818535109517213088920890236300281646288761697842280633285355376389468360033584102258243058885174812018295460196515483819254913183079496947309574392848378504246991546781252139861876509894476420525317251695953355755164789878602945615879965709871975770823484418665634050103852564819575756950047691205355599004786541600213204423145854859214897431430282333052121
c=456221314115867088638207203034494636244706611111621723577848729096069230067958132663018625661447131501758684502639383208332844681939698124459188571813527149772292464139530736717619741704945926075632064072125361516435631121845753186559297993355270779818057702973783391589851159114029310296551701456748698914231344835187917559305440269560613326893204748127999254902102919605370363889581136724164096879573173870280806620454087466970358998654736755257023225078147018537101
m0=9999900281003357773420310681169330823266532533803905637
m_high=m0<<128
m=0x6867616d657b633070707233736d6974685f53743372653074797065645f6d337373616733737d
#输出看一下m的位数,自己去操作一下
print(m_high)
flag=long_to_bytes(m)
print(flag)

一种格密码(还没学)

# lattice
这个题是ntru格密码的一个简化版,构造的格和NTRU的格是一样的但是直接使用是做不出来,要注意f和g的长度,f是47位的测试一下大概在376位左右,而g是128位所以需要平衡范数让构造出来的向量长度相近,这里就多乘了一个2**248
h = 9848463356094730516607732957888686710609147955724620108704251779566910519170690198684628685762596232124613115691882688827918489297122319416081019121038443
p = 11403618200995593428747663693860532026261161211931726381922677499906885834766955987247477478421850280928508004160386000301268285541073474589048412962888947     
from Crypto.Util.number import *
v1 = vector(ZZ, [1, 2**248*h])
v2 = vector(ZZ, [0, 2**248*p])
m = matrix([v1,v2]);
shortest_vector = m.LLL()[0]
f, g = shortest_vector
f=abs(f)
print(long_to_bytes(f))
#SICTF{e3fea01c-18f3-4638-9544-9201393940a9}

标签:脚本,utf,encode,m1,m0,import,print,一些
From: https://www.cnblogs.com/crypto-collapsarlxz/p/18026093

相关文章

  • 关于jenkins配置的一些记录
    1、jenkins的一些参数配置配置文件所在的位置:[root@]#vim/usr/lib/systemd/system/jenkins.service[root@]#vim/etc/init.d/jenkins/etc/init.d/ 中包含许多系统服务的启动和停止脚本,可以用./jenkins start这个命令来启动jenkins。service文件是使用systemd作为初始......
  • secueCRT脚本小试牛刀
    secureCRT可以使用脚本自动化执行操作,如登录脚本。支持vbs、python(目前最高仅3.9)和jscript。据说还可以录制操作,没试过。secureCRT版本为9.10。secureCRT内置了一些对象,入crt,具体用法可见官网,或其他网上资料。尝试了vbs和python,功能一样:#$language="VBScript"#......
  • thread_local的一些用法
    thread_local变量thread_local变量是C++11新引入的一种存储类型。它会影响变量的存储周期(Storageduration),C++中有4种存储周期:automaticstaticdynamicthread有且只有thread_local关键字修饰的变量具有线程周期(threadduration),这些变量(或者说对象)在线程开始的时候......
  • springboot jar 快速启停脚本
    Window启动@echooffstartjavaw-jar-Dfile.encoding=UTF-8-Dlogging.config=D:\deploytest\logback-spring.xmlD:\deploytest\gateway-server-1.0.0.jarecho"gatewaysuccess----"startjavaw-jar-Dfile.encoding=UTF-8-Dlogging.config=D:\de......
  • Kafka-批量启动和停止Kafka节点脚本
    1、编辑脚本#!/bin/bashzookeeper_home=/usr/local/zookeeperkafka_home=/usr/local/kafkazookeeper_array=(hadoop01hadoop02hadoop03)kafka_array=(hadoop01hadoop02hadoop03)##启动和停止Zookeeperfunctionzookeeper_operate(){zookeeper_operate=$@......
  • Zookeeper-批量启动和停止zookeeper节点脚本
    背景由于zookeeper的服务启动和停止,需要一台一台地去启动和停止。当部署的zookeeper节点多时非常麻烦,所以编写下面的脚本,用于提升启动和停止的效率。执行如下脚本需要确保:脚本存放的服务器与所有的zookeeper节点直接可以免密登录(服务器之间建立互信)。1、编辑脚本vi manage-z......
  • 02-21 记SpringBoot3 打包成exe的过程以及一些问题
    先说说基本流程:(Windows环境,springbootv3.2.1)1.首先mavenpom.xml中加入如下代码<build><plugins><plugin><groupId>org.graalvm.buildtools</groupId><artifactId>native-maven-plugi......
  • Hutool一些字符常量
    字符串常量Hutool定义了一些字符常量,可以灵活使用。部分常量如下所示:一些常量StrUtil.DOT点StrUtil.DOUBLE_DOT双点StrUtil.UNDERLINE下划线StrUtil.EMPTY横杠StrUtil.BACKSLASH反斜杠StrUtil.DASHED破折StrUtil.BRACKET_END右中扩号StrUtil.BRACKET_START......
  • 一键脚本破解最新版 idea 步骤,开启学习java 之旅,好好好
    效果:步骤1、idea安装:直接在官网下载最新idea-2022.2.3.dwg(:官网地址,然后根据安装引导一步一步完成安装即可,完成后打开idea看到如下效果表示idea安装成功!如图发现idea需要注册!这里我们先不管,直接关闭idea准备激活!步骤2、下载最新的破解包https://pan.baidu.com/s/1iQby9......
  • 一些板子
    **本博客由[@Nihachu](https://www.luogu.com.cn/user/1109610#main)的博客~~抄袭~~搬运而来**(绝大部分代码来自[@Nihachu的博客](https://www.luogu.com.cn/blog/Nihachu-33/mu-ban-ji-he)~~若有侵权,就算联系我也不会删除~~)一、二叉树相关:1、深度优先:前序遍历(根,左子树,右子......