恰巧這兩天剛看的一種思路,很簡單的加密解密算法,我說一下吧。
算法原理很簡單,假設你的原密碼是A,用A與數B按位異或后得到C,C就是加密后的密碼,用C再與數B按位異或后能得回A。即(A異或B)異或B=A。用C實現很簡單的。這就相當于,你用原密碼A和特定數字B產生加密密碼C,別人拿到這個加密的密碼C,如果不知道特定的數字B,他是無法解密得到原密碼A的。對于密碼是數字的情況可以用下面的代碼:
#include<stdio.h>#defineBIRTHDAY19880314intmain(){longa,b;scanf("%ld",&a)
;printf("原密碼:%ld\n",a);b=BIRTHDAY;a^=b;printf("加密密碼:%ld\n",a);a^=b;printf("解密密碼:%ld\n",a);return0;
}如果密碼是字符串的話,最簡單的加密算法就是對每個字符重新映射,只要加密解密雙方共同遵守同一個映射規則就行啦。