其實加密演算法有很多種,前邊我講到過base 64、32、16、bcd,說到底都是要跟機器碼進行打交道,即二進位製碼,無論用什麼樣的加密演算法,都要將資料變成二進位制資料後再處理,轉來轉去再轉回來,這個模二加演算法其實很簡單。大體的過程是這樣的:
字元—->二進位制—->十進位制—–>異或(加密)—->二進位制—->十進位制—->異或(解密)—->字元
我直接上**吧!
#include "stdafx.h"
#include "string.h"
#pragma warning(disable:4996) //防止 strncpy()提示不安全
void ten_two(int *ten,int tlen, unsigned
char * data);
void sencond_ten(unsigned
char *q, int len);
void str_two(unsigned
char *p,int strlen,unsigned
char *q);
void two_str(unsigned
char *outdata,int tlen,unsigned
char *str);
int _tmain(int argc, _tchar* argv)
void sencond_ten(unsigned
char *q, int len)
//10進製做異或運算
*ten=l^yh; //加密 位元組模2加 即 異或
// printf(":%d\t",*ten);
ten++;
}//將指標轉向頭
ten=thead;
ten_two(ten,tlen,q);
delete ten;
ten=null;
}void ten_two(int *ten,int tlen,unsigned
char * q)
else
}//printf(" \n");
}q++;
*q=0;
}void str_two(unsigned
char *p,int strlen,unsigned
char *q)
else
}//printf(" \n");
}q++;
*q=0; //結束字串
q=qhead; //指向頭指標
p=phead;//指向頭指標
}void two_str(unsigned
char *outdata,int twolen,unsigned
char *str)
++kk;
}str[kk]='\0';
}
字串加解密
題目 1 對輸入的字串進行加解密,並輸出。2加密方法為 當內容是英文本母時則用該英文本母的後乙個字母替換,同時字母變換大小寫,如字母a時則替換為b 字母z時則替換為a 當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0 其他字元不做變化。3 解密方法為加密的逆過程。輸入 輸入一串要加密的密...
字串加解密
題目描述 1 對輸入的字串進行加解密,並輸出。2 加密方法為 當內容是英文本母時則用該英文本母的後乙個字母替換,同時字母變換大小寫,如字母a時則替換為b 字母z時則替換為a 當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0 其他字元不做變化。3 解密方法為加密的逆過程。介面描述 實現介面...
字串加解密
描述 1 對輸入的字串進行加解密,並輸出。2 加密方法為 當內容是英文本母時則用該英文本母的後乙個字母替換,同時字母變換大小寫,如字母a時則替換為b 字母z時則替換為a 當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0 其他字元不做變化。3 解密方法為加密的逆過程。輸入輸入一串要加密的密...