凱撒密碼 C語言 加密解密

2021-07-28 21:55:11 字數 1078 閱讀 4082

凱撒加密(caesarcipher)是一種簡單的訊息編碼方式:它根據字母表將訊息中的每個字母移動常量位k。

舉個例子如果k等於3,則在編碼後的訊息中,每個字母都會向前移動3位:

a會被替換為d;b會被替換成e;依此類推。字母表末尾將回卷到字母表開頭。

於是,w會被替換為z,x會被替換為a。

如果是將移動的位數用隨機數進行代替,並且記錄下該隨機數,則破解密碼的難度將大大增加。

利用ascii碼 來計算對應密文

利用陣列下標 計算對應密文 (簡潔)

利用雙向鍊錶和指標

#include 

#include

int main ();

char big_letter[26]=;

char text[1000],result[1000];

int c,count=0,k,p;

char function;

printf("insert text:");

c=getchar();

while(1) //讀取字串

printf("\n");

printf("encrypt or decrypt? e or d :");

scanf("%c",&function);

if (function == 'e')

//找出加密後字元在字元陣列裡的對應位置

else

if (text[i]>='a'&&text[i]<='z')

else result[i]=text[i];

printf("%c",result[i]);

}}else

//找出解密後字元在字元陣列裡的對應位置

//這裡要注意不要讓它超出範圍(下表位置為負數)

else

if (text[i]>='a'&&text[i]<='z')

else result[i]=text[i];

printf("%c",result[i]);

}printf("\n");

}return0;}

// vero's code

凱撒密碼解密加密(C語言)

一 凱撒密碼 在密碼學中,愷撒密碼 英語 caesar cipher 或稱愷撒加密 愷撒變換 變換加密,是一種最簡單且最廣為人知的加密技術。它是一種替換加密的技術,明文中的所有字母都在字母表上向後 或向前 按照乙個固定數目進行偏移後被替換成密文。例如,當偏移量是3的時候,所有的字母a將被替換成d,b...

凱撒密碼,凱撒加密解密

using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using system.text u...

凱撒密碼加密解密

加密方法 凱撒密碼需要事先設定乙個偏移量值 如 3,4,5等 然後將自己明文中每個字母加上該偏移量轉變為另一字母 如偏移量為3,a字母轉變為d字母 加密程式 string encrypt string mingwen,int k else if mingwen i a mingwen i z els...