當前位置:首頁 » 密碼管理 » c對字元串加密

c對字元串加密

發布時間: 2025-09-17 07:32:28

c語言密碼加密原理是什麼

恰巧這兩天剛看的一種思路,很簡單的加密解密演算法,我說一下吧。
演算法原理很簡單,假設你的原密碼是A,用A與數B按位異或後得到C,C就是加密後的密碼,用C再與數B按位異或後能得回A。即(A異或B)異或B=A。用C實現很簡單的。這就相當於,你用原密碼A和特定數字B產生加密密碼C,別人拿到這個加密的密碼C,如果不知道特定的數字B,他是無法解密得到原密碼A的。對於密碼是數字的情況可以用下面的代碼:
#includestdio.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;
}如果密碼是字元串的話,最簡單的加密演算法就是對每個字元重新映射,只要加密解密雙方共同遵守同一個映射規則就行啦。

⑵ 利用C語言給文字加密,急~

這裡面用到的大部分都是對字元串的基本操作。譚浩強C語言書上都能找到的。裡面我都有注釋了。有什麼疑問再說
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>

int key[3][3]={6,24,1 , //密鑰
13,16,10 ,
20,17,15 ,};

int prech(char a[],char b[][3]) //預處理,返回明文的組數
{
int i=0,j=0;
for (; *a!='\0'; ++a)
if (isalpha(*a)) //isalpha判斷是否為字母
{
b[i][j]=tolower(*a)-'a'; //b[][]存放每一組明文,3個字母為一組。tolower函數是把大寫變小寫,並-a使之變成對應的數字
++j;
if (j==3)
{
j=0;
++i;
}
}
while(j!=3 && j!=0) //後面不夠的用a補齊
{
b[i][j]=0;
j++;
}
return i;
}

void solve(char b[][3],int n) //求密文
{
int i,j;
char c[3];
for(i=0;i<n;i++)
{
for(j=0;j<3;j++) //算出b[i]組的值存放到c數組中
{
c[j]=(b[i][0]*key[j][0]+b[i][1]*key[j][1]+b[i][2]*key[j][2])%26+'A';
}
for(j=0;j<3;j++)
b[i][j]=c[j]; //把c數組的內容還給b[i]組
}
return ;
}

int main(void)
{
int len,i,j;
char s[100]; //明文
char b[40][3]; //3個為一組,存放每一組的字母對應的數字
scanf("%s",s);
len=prech(s,b);
solve(b,len);
for(i=0;i<len;i++)
for(j=0;j<3;j++)
printf("%c",b[i][j]);
printf("\n");
return 0;
}

⑶ C語言編程問題:從鍵盤上輸入一個字元串按照以下規則對其加密。

#include<stdio.h>
intmain()
{
inti=0;
charstring[50];
gets(string);
puts(string);
while(string[i]!='')
{
if(string[i]>='a'&&string[i]<='z')
{
string[i]=(string[i]+3-'a')%26+'a';
}
elseif(string[i]>='A'&&string[i]<='Z')
{
string[i]=(string[i]+3-'A')%26+'A';
}
i++;
}
puts(string);
return0;
}

熱點內容
怎麼進網站伺服器 發布:2025-09-17 09:18:15 瀏覽:460
小火箭伺服器訂閱是什麼 發布:2025-09-17 09:01:40 瀏覽:735
c語言入門基礎 發布:2025-09-17 08:54:30 瀏覽:667
副卡服務密碼是多少位 發布:2025-09-17 08:45:44 瀏覽:438
白條密碼是什麼情況 發布:2025-09-17 08:43:01 瀏覽:319
高中信息演算法與程序 發布:2025-09-17 08:41:34 瀏覽:26
伺服器禁止設置幾個ip 發布:2025-09-17 08:41:26 瀏覽:504
側限壓縮儀 發布:2025-09-17 08:41:24 瀏覽:174
php登陸系統 發布:2025-09-17 08:35:55 瀏覽:420
wincc全局腳本中加減運算 發布:2025-09-17 08:05:48 瀏覽:338