某旅游app native层算法分析记录

1、先使用unidbg 补出结果

2、动态调试 v18是一串字符串

某旅游app native层算法分析记录_第1张图片

 3、 进入 context_init

某旅游app native层算法分析记录_第2张图片

 判断刚才那串字符串的长度, 如果大于64, 就标准sha1一下,结果保存在hmac_key中, 如果key 小于64,就直接作为hmac算法的key

4、然后生成hmac算法的ipad, ipad 生成后 sha1_init一下 然后再sha1_update一下. sha1算法都是标准的。然后再生成hmac算法的opad, 注意异或的不是标准的 0x5C,  然后再 sha1_update一下,

某旅游app native层算法分析记录_第3张图片 

 

5、然后将input 最为输入 sha1_update一下, 然后进入函数 0x2EB30

某旅游app native层算法分析记录_第4张图片

 

6、 函数0x2EB30 的逻辑就是先计算出 (ipad + input) 的sha1结果保存在 v7中,

然后 opad + v7 做标准sha1 就是最后的结果

某旅游app native层算法分析记录_第5张图片

 

你可能感兴趣的:(安卓篇,python,旅游)