吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 369|回复: 3
收起左侧

[求助] 一道reverse题目的wp的疑惑

[复制链接]
xcj123 发表于 2023-11-13 22:04
问题一:在wp中
flag[i] = (((data[i] ^ (data[i] >> 15)) >> 15) & 0xfffffffc) | (data[i] & 0x3);
为什么要第二次左移15位,并且异或0xfffffffc 再与 (data[i] & 0x3)
问题二:
final[i] = (*((char*)&flag + i)) & 0xff;
与 0xff向与是为了变成无符号数吗?

题目

题目

wp

wp

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

BonnieRan 发表于 2023-11-14 00:21
问题二:
& 0xff 超出Ascll值截取高位,不知道对不对
codezhang 发表于 2023-11-14 10:23
你的数据是64位,每4位对应一个字母表示的话,例如用ABCD表示数据
data[i] >> 15      数据变为  0ABC
data[i] ^ 0ABC   等价于   ABCD ^ 0ABC    等价于         A(B^A)(C^B)(D^C)
>> 15    等价于   0A(B^A)(C^B)
& 0xfffffffc    等价于   0A(B^A)(C^B) 的最后两位归0
| (data[i] & 0x3) 表示最后两位还是用D里面的最后两位


问题二:有没& 0xff 结果都是一样的,(*((char*)&flag + i))这个类型就是char, 没高位可以截取


 楼主| xcj123 发表于 2023-11-14 17:45
codezhang 发表于 2023-11-14 10:23
你的数据是64位,每4位对应一个字母表示的话,例如用ABCD表示数据
data >> 15      数据变为  0ABC
data ...

好的谢谢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:34

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表