首页
论坛
课程
招聘
雪    币: 210
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝

[原创]2019年5月安恒月赛testre

2020-2-18 17:46 1506

[原创]2019年5月安恒月赛testre

2020-2-18 17:46
1506
碰到一道逆向题.
利用z3写了注册机,无奈没有结果,是不是哪个地方分析错了导致没有写对:

from z3 import *


cp=[-1209970333, -2850501860L, -4491033387L, -6131564914L, -7772096441L, -9412627968L, -11053159495L, -12693691022L, -14334222549L, -15974754076L, -17615285603L, -19255817130L, -20896348657L, -22536880184L, -24177411711L, -25817943238L, -27458474765L, -29099006292L, -30739537819L, -32380069346L, -34020600873L, -35661132400L, -37301663927L, -38942195454L, -40582726981L, -42223258508L]


s=Solver()


a,b,c,d = BitVecs("a b c d",64)

#a=Real('x')

#b=Real('y')

index = [0,2]


v6 = cp[0]+a

v7 = cp[1]+b

def zuoyi(a1,a2):

    return (a1<<a2)&0xff

def youyi(a1,a2):

    return a1>>a2

def sun(a1,a2):

    v2=zuoyi(a1,a2&0x1f)

    return v2 | (youyi(a1,32 - (a2 & 0x1F)))&0xff

for i in range(12):

    

    sum1 = sun(v7^(v6&0xff),v7) + cp[0]

    

    sum2 = sun(v6^(v7&0xff),v6) + cp[1]

    

s.add(sum1==-190228801)

s.add(sum2==-1168732355)

#print sum1


print s.check()

欢迎各位大佬指正

[公告]看雪论坛2020激励机制上线了!多多参与讨论可以获得积分快速升级?

上传的附件:
最新回复 (1)
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_qgowmxdw 活跃值 2020-4-29 17:30
2
0
def sun(a1,a2):

    v2=zuoyi(a1,a2&0x1f)

    return v2 | (youyi(a1,32 - (a2 & 0x1F)))&0xff

for i in range(12):
游客
登录 | 注册 方可回帖
返回