密碼學
從李佳珊網誌摳來的 密碼學 挺有趣的 哈哈 來個最簡單的vigenere加密法教學 很簡單啦 一般範例都是給明文要你加密 但是我給密文讓大家破解 第一個解出來的有小禮物 雖然還不知道要送啥 小教學:假設我要加密NIJI這個單字 key是:sky 就以key的字母為序列第一個單字把26個字母循環排完 產生三個序列: STUVWXYZABCDEFGHIJKLMNOPQR KLMNOPQRSTUVWXYZABCDEFGHIJ YZABCDEFGHIJKLMNOPQRSTUVWX 因為英文字排版的關係 每個字都不一樣大 所以大家可以用手寫對對看喔 然後以sky循環對上NIJI: NIJI skys 最後把原本相對位置找出來就對了 ABCDEFGHIJKLMNOPQRSTUVWXYZ STUVWXYZABCDEFGHIJKLMNOPQR KLMNOPQRSTUVWXYZABCDEFGHIJ YZABCDEFGHIJKLMNOPQRSTUVWX N:對上s那行的f I:對上K那行的S J:對上y那行的h I:對上s那行的a 因為英文字排版的關係 每個字都不一樣大 所以大家可以用手寫對對看喔 所以加密後就是:fsha 出題囉------------------------------ key:fuck 密文:NBCDJSQE 明文是??? 文章分類: 未分類文章 Niji6666 at 無名小站 於 04:52 PM 發表 手癢寫的一隻程式 #include<stdio.h> #include<string.h> #define MAX 100 int main(int argc, char**argv) { char mesg[MAX]={}; int lenth=0; int i=0; int key=0; key = strlen(argv[2]); lenth = strlen(argv[1]); for(i=0;i<lenth;i++) { if( (argv[1][i]-argv[2][i%key]) >= 0) mesg[i] = 'a'+(argv[1][i]-argv[2][i% key]); else mesg[i] = 'a'+('z'-argv[2][i%key])+(a...