自制新型文字密碼葡盗,聊天記錄的畫風都不一樣了,再也不怕被女朋友偷窺手機了啡浊!

前言:當今社會是一個信息社會戳粒,你的個人信息和聊天記錄極有可能被別有用心的人時時刻刻監(jiān)視著,那么你想不想實現(xiàn)專屬于兩個人或一個小圈子的人在社交軟件上的交流不被任何其他人讀懂呢虫啥?下面就給大家提供一個原理極其簡單程序極其容易實現(xiàn)的C語言文字加密小程序的實現(xiàn)算法蔚约。

PS:文章末尾有驚喜哦!

原理:ASCLL碼的加減乘除運算涂籽。舉一個最簡單的例子苹祟,從鍵盤輸入一行字符"LANGUAGE",將所有字符的ASCLL碼加1后再打印出來就變成了"MBOHVBHF",將所有字符的ASCLL碼加2评雌,則打印出來是"NCPIWCIG"树枫,試問從打印出來的字符串的字里行間誰還可以一眼就看出最初想要傳達的信息是"LANGUAGE"?

同理景东,將加密文字所有字符的ASCLL碼減1再打印出來就可以實現(xiàn)對加密文字的翻譯砂轻,例如將"MBOHVBHF"中每個字符的ASCLL碼都減1再打印出來就可以還原出"LANGUAGE"。

如果你足夠聰明斤吐,可以看出"MBOHVBHF"是"LANGUAGE"中的所有字母在英文字母表里的順序后移一位形成的搔涝、"NCPIWCIG"是"LANGUAGE"中的所有字母在英文字母表中的順序后移兩位形成的,那么請大家再來看一下漢字的情況和措。

我在鍵盤上錄入了"今天晚上我不回家吃飯了"庄呈,將這串字符的ASCLL碼全部加1,打印出來是這樣的"掘晚晤市嫌臣假接湊負綠"派阱。

怎么樣诬留,哈哈哈,是不是看完后丈二和尚摸不著頭腦贫母?所以文兑,用這種算法實現(xiàn)對漢字的加密和翻譯絕對隱蔽!

漢字在計算機中的編碼比較復雜腺劣,一個漢字在Windows 10系統(tǒng)下的CodeBlocks編譯器里占2個字符的位置绿贞,我記得我有做過測試,在Cent OS Linux系統(tǒng)下占3個字符的位置誓酒。

然而不管一個漢字占幾個字符的位置樟蠕,對每個字符的ASCLL碼做加減乘除的運算和逆運算就可以實現(xiàn)對文字的加密和翻譯。

下面向大家展示一下源代碼(加密算法為將所有字符的ASCLL碼加1靠柑,翻譯算法為將所有字符的ASCLL碼減1):

頭文件部分:

//Trans.h

#ifndef TRANS_H_INCLUDED

#define TRANS_H_INCLUDED

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void creat(char txt[])

{

? for(int i=0;i<strlen(txt);i++)

? {

? txt[i]+=1;

? }

? printf("生成的加密文字為:%s\n",txt);

}

void trans(char txt[])

{

? for(int i=0;i<strlen(txt);i++)

? {

? ? ? txt[i]-=1;

? }

? printf("解密后文字為:%s\n",txt);

}

#endif // TRANS_H_INCLUDED

主函數(shù)部分:

#include "Trans.h"

void main()

{

? char txt[1024];

? int choice;

? printf("---------------歡迎使用譯碼機!---------------\n");

? printf("****************************************************\n");

? printf("生成加密文字請輸入1? ? ? 翻譯加密文字泣請輸入2\n");

? printf("退出程序請輸入0\n");

? while(1)

? {

? ? ? printf("****************************************************\n");

? ? ? printf("請輸入您的選擇:");

? ? ? scanf("%d",&choice);

? ? ? fflush(stdin);

? ? ? switch(choice)

? ? ? {

? ? ? case 1:

? ? ? ? ? printf("請輸入文字:");

? ? ? ? ? gets(txt);

? ? ? ? ? creat(txt);

? ? ? ? ? break;

? ? ? case 2:

? ? ? ? ? printf("請輸入加密文字:");

? ? ? ? ? gets(txt);

? ? ? ? ? trans(txt);

? ? ? ? ? break;

? ? ? case 0:

? ? ? ? ? printf("退出成功!\n");

? ? ? ? ? exit(0);

? ? ? default:

? ? ? ? ? printf("您的輸入有誤,請重新輸入!\n");

? ? ? }

? ? ? system("pause");

? }

}

下面向大家展示一下加密與翻譯的效果:

思考與提高:僅僅將所有字符的ASCLL碼加1就實現(xiàn)對文字信息的加密了寨辩,會不會很容易被破譯呢?請恕博主我不是密碼學專家歼冰,這一點我無法回答靡狞,但是直觀感覺這樣加密確實有點簡單。

那么我們就可以對字符進行多種更為復雜的處理隔嫡,比如給所有字符加上一個正負變換的數(shù)列甸怕、給所有字符加上斐波那契數(shù)列等∪鳎總之梢杭,直觀感覺就是越復雜越不容易被破譯。

下面向大家展示一下給所有字符加上一個正負變換的數(shù)列的加密算法的源代碼:

頭文件部分:

//Trans.h

#ifndef TRANS_H_INCLUDED

#define TRANS_H_INCLUDED

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void creat(char txt[])

{

? int f=1;

? for(int i=0;i<strlen(txt);i++)

? {

? txt[i]+=f;

? f=-f;

? }

? printf("生成的加密文字為:%s\n",txt);

}

void trans(char txt[])

{

? int f=-1;

? for(int i=0;i<strlen(txt);i++)

? {

? ? ? txt[i]+=f;

? ? ? f=-f;

? }

? printf("解密后文字為:%s\n",txt);

}

#endif // TRANS_H_INCLUDED

主函數(shù)部分主要是用來調試的秸滴,與上面那個簡單加密算法的主函數(shù)部分相同武契。

————————

看到這里你是不是對“Linux”又有了一點新的認知呢~

如果你喜歡這篇文章的話,動動小指荡含,點個贊再走~

如果你想學編程咒唆,小編推薦一個編程學習俱樂部【下圖進入】!

一個活躍释液、高逼格全释、高層次的編程學習殿堂;編程入門只是順帶误债,思維的提高才有價值浸船!

涉及:編程入門、游戲編程寝蹈、網(wǎng)絡編程糟袁、Windows編程、Linux編程躺盛、Qt界面開發(fā)项戴、黑客等等....

下面向大家展示一下使用這種復雜加密算法加密與翻譯的效果:

用了加密程序后,畫風是這樣的:

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末槽惫,一起剝皮案震驚了整個濱河市周叮,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌界斜,老刑警劉巖仿耽,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異各薇,居然都是意外死亡项贺,警方通過查閱死者的電腦和手機君躺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來开缎,“玉大人棕叫,你說我怎么就攤上這事∞壬荆” “怎么了俺泣?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長完残。 經(jīng)常有香客問我伏钠,道長,這世上最難降的妖魔是什么谨设? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任熟掂,我火速辦了婚禮,結果婚禮上扎拣,老公的妹妹穿的比我還像新娘打掘。我一直安慰自己,他們只是感情好鹏秋,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布尊蚁。 她就那樣靜靜地躺著,像睡著了一般侣夷。 火紅的嫁衣襯著肌膚如雪横朋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天百拓,我揣著相機與錄音琴锭,去河邊找鬼。 笑死衙传,一個胖子當著我的面吹牛决帖,可吹牛的內容都是我干的。 我是一名探鬼主播蓖捶,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼地回,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了俊鱼?” 一聲冷哼從身側響起刻像,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎并闲,沒想到半個月后细睡,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡帝火,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年溜徙,在試婚紗的時候發(fā)現(xiàn)自己被綠了湃缎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡蠢壹,死狀恐怖嗓违,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情知残,我是刑警寧澤靠瞎,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布比庄,位于F島的核電站求妹,受9級特大地震影響,放射性物質發(fā)生泄漏佳窑。R本人自食惡果不足惜制恍,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望神凑。 院中可真熱鬧净神,春花似錦、人聲如沸溉委。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瓣喊。三九已至坡慌,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間藻三,已是汗流浹背洪橘。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留棵帽,地道東北人熄求。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像逗概,于是被迫代替她去往敵國和親弟晚。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355