安恒2020-四月春季战-reverse-sm
- 安恒2020-四月春季战-reverse-sm
- 一、IDA打开分析发现存在如下数据块。
- 二、加密的可用key和加密后的密文分别为。
- 三、程序的逻辑为,将输入的四组数字经sm4加密后,与密文比对相同,则程序输出前边输入的四组数字的16进制即flag。
- 四、利用sm4解密程序将密文:```C079776677E5AC9931C567EB470645A7```,解密得到的明文即为flag。
- 五、验证。将```d0389046c236e4c66bd787959f5c6e66```转换为4组10进制数输入程序验证。
安恒2020-四月春季战-reverse-sm
一、IDA打开分析发现存在如下数据块。
结合加密代码分析及题目名称应为sm4加密
二、加密的可用key和加密后的密文分别为。
KEY为:
v15 = 0x1234567;
v16 = 0x89ABCDEF;
v17 = 0xFEDCBA98;
v18 = 0x76543210;
key: 123456789ABCDEF FEDCBA9876543210
密文为:C079776677E5AC9931C567EB470645A7
v9 = 0xC0797766;
v10 = 0x77E5AC99;
v11 = 0x31C567EB;
v12 = 0x470645A7;
三、程序的逻辑为,将输入的四组数字经sm4加密后,与密文比对相同,则程序输出前边输入的四组数字的16进制即flag。
四、利用sm4解密程序将密文:C079776677E5AC9931C567EB470645A7
,解密得到的明文即为flag。
解密程序链接
//解密的到的明文
d0389046c236e4c66bd787959f5c6e66
五、验证。将d0389046c236e4c66bd787959f5c6e66
转换为4组10进制数输入程序验证。
3493367878
3258377414
1809287061
2673634918