luokaichuang 发表于 2019-3-4 19:30:11

分享一段自己写的pap反向算法,可以还原pap加密过的密文

本帖最后由 luokaichuang 于 2019-3-5 07:24 编辑

/* 还原pap加密的密码为明文
* secret:          对接密钥
* secret_len:    密钥长度
* auth:    请求认证字
* pap_pwd: pap算法加密后的密文
* pwd_len: pap密文长度
* pwd_text:明文密码
*/
void pap_dec(uint8_t* secret,uint8_t secret_len,uint8_t* auth,uint8_t* pap_pwd,uint8_t pwd_len,uint8_t* pwd_text){
      int loop=pwd_len/16;
      int i,j,offset;
      uint8_t      group;
      uint8_t md5val;
      uint8_t md5source;
      memcpy(md5source,secret,secret_len);
      for(i=1;i<=loop;i++){
                offset=(loop-i)*16;
                memcpy(group,pap_pwd+offset,16);
                if(loop==i){
                        memcpy(md5source+secret_len,auth,16);
                        md5(md5val,md5source,secret_len+16);
                        for(j=0;j<16;++j){
                              pwd_text=group^md5val;
                        }
                }else{
                        memcpy(md5source+secret_len,pap_pwd+offset-16,16);
                        md5(md5val,md5source,secret_len+16);
                        for(j=0;j<16;++j){
                              pwd_text=group^md5val;
                        }
                }
      }
}

47771885 发表于 2019-3-5 13:19:45

看不懂帮顶

hubinliang 发表于 2019-3-6 21:57:05

太厉害了{:2_31:}

lcgjk 发表于 2019-3-7 09:48:49

看不懂帮顶

KENT 发表于 2019-3-7 18:41:38

看不懂帮顶

依枫 发表于 2019-3-16 19:19:14

你会Java么
页: [1]
查看完整版本: 分享一段自己写的pap反向算法,可以还原pap加密过的密文