Advertisement

ctfshow刷题记录3

阅读量:

萌新_密码5

由田中 由田井 羊夫 由田人 由中人 羊羊 由由王 由田中 由由大 由田工 由由由 由由羊 由中大

当铺密码

复制代码
  
    
 s ='田由中人工大王夫井羊'
    
 code=input("请输入当铺密码:")
    
 code = code.split(" ")
    
 w = ''
    
 for i in code:
    
     k=""
    
     for j in i:
    
    k+=str(s.index(j))
    
     w+=chr(int(k))
    
 print(w)

就是转成10进制再转acill码

flag{ctfshow}

贝斯多少呢

将原始信息分成多个部分后进行处理;具体步骤包括对每一部分进行Base64编码;最后将所有编码结果组合在一起完成整个过程。

8nCDq36gzGn 8hf4M2HJUsn 4aYcYRBSJwj 4aE0hbgpzHb 4aHcH1zzC9C 3IL

因为 Base62编码是由10个数字、26个大写英文字母和26个小写英文字母组成

每段base62数据先转换为十进制数值后,再将其转换为十六进制表示;该在线工具直接支持这种操作,并提供便捷的功能.

复制代码
    **flag{6a5eb2_i5_u5ua11y_u5ed_f0r_5h0rt_ur1}**

find the table

审查元素

点击右键后执行查找操作用于审查元素所对应的这一系列数字

对应下来每个元素的名称可以得到flag{doyoulikesnow}

babyrsa

复制代码
复制代码
 import gmpy2

    
 from Crypto.Util.number import long_to_bytes
    
 e = 65537
    
 p = 104046835712664064779194734974271185635538927889880611929931939711001301561682270177931622974642789920918902563361293345434055764293612446888383912807143394009019803471816448923969637980671221111117965227402429634935481868701166522350570364727873283332371986860194245739423508566783663380619142431820861051179
    
 q = 140171048074107988605773731671018901813928130582422889797732071529733091703843710859282267763783461738242958098610949120354497987945911021170842457552182880133642711307227072133812253341129830416158450499258216967879857581565380890788395068130033931180395926482431150295880926480086317733457392573931410220501
    
 c = 4772758911204771028049020670778336799568778930072841084057809867608022732611295305096052430641881550781141776498904005589873830973301898523644744951545345404578466176725030290421649344936952480254902939417215148205735730754808467351639943474816280980230447097444682489223054499524197909719857300597157406075069204315022703894466226179507627070835428226086509767746759353822302809385047763292891543697277097068406512924796409393289982738071019047393972959228919115821862868057003145401072581115989680686073663259771587445250687060240991265143919857962047718344017741878925867800431556311785625469001771370852474292194
    
 phi=(p-1)*(q-1)
    
 n=p*q
    
 d=gmpy2.invert(e,phi)
    
 m=pow(c,d,n)
    
 print(long_to_bytes(m))
    
 #b'flag{b4by_R5A}'

flag{b4by_R5A}

easyrsa1

复制代码

yafu分解n得到p,q

复制代码
 import gmpy2

    
 from Crypto.Util.number import long_to_bytes
    
 e = 65537
    
 n = 1455925529734358105461406532259911790807347616464991065301847
    
 c = 69380371057914246192606760686152233225659503366319332065009
    
 p = 1212112637077862917192191913841
    
 q = 1201147059438530786835365194567
    
 phi=(p-1)*(q-1)
    
 d=gmpy2.invert(e,phi)
    
 m=pow(c,d,n)
    
 print(long_to_bytes(m))

flag{fact0r_sma11_N}

全部评论 (0)

还没有任何评论哟~