📄 cpasswordexp.cpp
字号:
#include "class.h"
#if(TIANJINPCT==1)
INT8U CPassWordExp:: keyfac[16]={50,42,34,26,18,10,2,52,44,36,28,20,12,4,54,46};
INT8U CPassWordExp:: GPassModeFg=1;
INT8U CPassWordExp:: GProclaFg=1;
INT8U CPassWordExp:: GKeyFg=1;
INT8U CPassWordExp:: key[8]={0xc0,0xa8,0x01,0xd9,0x33,0x93,0x00,0x00};
INT8U CPassWordExp:: proc[8]={0};
INT8U CPassWordExp:: passwordmode=0;
INT8U CPassWordExp:: passkeyfg=1;
// INT8U CPassWordExp:: GLocalIpkey[4]={0xc0,0xa8,0x01,0xd9};
INT8U CPassWordExp:: PassWordQue(INT8U seq,INT8U comfg)
{
INT8U temp1;
INT8U temp;
INT8U i=0;
//50 42 34 26 18 10 2 52 44 36 28 20 12 4 54 46
INT8U tempbuf[20];
INT8U temppwd[8];
if(GPassModeFg)
{
passwordmode=parameter.Read(PAP0F5ADD,PAP0F5LEN, tempbuf);
passwordmode=tempbuf[0];
GPassModeFg=0;
}
if(passwordmode==0)
{
//if((tempbuf[1]==0x22)&&(tempbuf[2]==0x33))
// {
CProtocoTianJin::GPassWord[1]=0x88;
CProtocoTianJin::GPassWord[0]=0x88;
return TRUE;
// }
// else
// return FALSE;
}
QuestProcla(seq);
QuestKey(comfg);
switch(passwordmode)
{
case 128:
for(i=0;i<8;i++)
temppwd[i]=key[i]^proc[i];
break;
case 129:
// if(passkeyfg)
{
padeal.deskey(key,0);
passkeyfg=0;
}
padeal.des(proc, temppwd);
break;
default:
return FALSE;
break;
}
CProtocoTianJin:: GPassWord[0]=0x00;
CProtocoTianJin:: GPassWord[1]=0x00;
for(i=0;i<8;i++)
{
//(*password)<<=1;
temp=(keyfac[i]-1)/8;
//temp=0x01<<temp;
temp1=(keyfac[i]-1)%8;
temp1=0x01<<temp1;
if(temppwd[temp]&temp1)
CProtocoTianJin:: GPassWord[1]|=0x01<<i;
temp=(keyfac[i+8]-1)/8;
//temp=0x01<<temp;
temp1=(keyfac[i+8]-1)%8;
temp1=0x01<<temp1;
if(temppwd[temp]&temp1)
CProtocoTianJin::GPassWord[0]|=0x01<<i;
}
}
void CPassWordExp:: QuestProcla(INT8U seq)
{
INT8U tempbuf[20];
if(GProclaFg)
{
parameter.Read(PAP0F85ADD_TJ+2,4, tempbuf);
proc[0]=tempbuf[1];
proc[1]=tempbuf[0];
proc[2]=tempbuf[3];
proc[3]=tempbuf[2];
parameter.Read(PAP0F5ADD,1, tempbuf);
proc[7]=tempbuf[0];
proc[4]=0x93;
proc[5]=0x33;
GProclaFg=0;
}
proc[6]=seq;
}
void CPassWordExp:: QuestKey(INT8U comfg)
{
//INT8U j,i;
INT8U tempbuf[20];
//INT8U temp;
if(GKeyFg)
{
/*j=0;
parameter.Read(PAP0F84ADD_TJ,1, &temp);
if((GComMode==SleepMode)||(comfg!=ComModeGprs))
{
key[j++]=127;
key[j++]=0;
key[j++]=0;
key[j++]=1;
}
else
{
// parameter.Read(PAP0F3ADD,6, tempbuf);
for(i=0;i<4;i++)
key[j++]=GLocalIp[i];
}*/
// for(i=0;i<4;i++)
//key[j++]=GLocalIpkey[i];
//key[j++]=0x33;
//key[j++]=0x93;
parameter.Read(PAP0F5ADD,3, tempbuf);
key[6]=tempbuf[2];
key[7]=tempbuf[1];
GKeyFg=0;
passkeyfg=1;
}
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -