密碼學,你也可以學會的表白

大家也許經常收到心上人發的奇奇怪怪的字符,有人說,可以無腦當作I LOVE YOU處理,該說不說,這些字符大多來自編碼和古典密碼,那麼520我們也來分享一些常見編碼和古典密碼錶白。

最基礎的基於置換的方法,比如從1開始到26,分別表示從A到Z,即:A(1)B(2) C(3) D(4) E(5) F(6) G(7) H(8) I(9) J(10) K(11) L(12) M(13) N(14) O(15) P(16) Q(17) R(18) S(19) T(20) U(21) V(22) W(23) X(24) Y(25) Z(26)。

那麼9 12 15 22 5 21就是 I LOVE U

或者很基礎的莫斯密碼,··   ·—·· ——— ···— ·   ··—,也是i love you的意思。

還有小學就學過的凱撒移位:j mpwf v,這個有點過於小兒科了。

除此之外,還要維吉尼亞密碼,柵欄密碼,棋盤密碼,希爾密碼,它們的共同點都是基於字母置換,

下面講解一下一個貼吧上經典的多重置換表白案例,密文是“****—****—*————***——**———/—********—/”

該摩斯密碼相應密碼對應的數字組合和英文字母組合分別是“4194418141634192622374”和“daiddahadafcdaibfbbcgd”。

觀察第一段數字,其是從1-9的數字,考慮來自手機鍵盤,將摩爾斯密碼對應的數字“4194418141634192622374”轉換成了手機鍵盤字母。以“41”爲例,它對應的就是傳統手機鍵盤上的“4”的第1個字母,“94”則是“9”的第4個字母。這樣,便得到了第二步的答案“GZGTGOGXNCS”。

第三步有些難想,因爲QWE格式(即QWERTY電腦鍵盤佈局)是應用最廣泛的鍵盤格式,所以也就可能成爲密碼的置換碼錶。假設這段密碼的碼錶爲‘QWE=ABC’,以此類推Q=A,W=B,E=C,R=D,T=E,Y=F,U=G,I=H,O=I,P=J,A=K,S=L,D=M,F=N,G=O,H=P,J=Q,K=R,L=S,Z=X,X=T,C=U,V=V,B=N,N=W。按照這樣的次序,置換上面的來自於手機鍵盤的字母,就轉換到了第三步答案“OTOEOIOUYVL”。

第四步,應用柵欄密碼,柵欄密碼是一種簡單的移動字符位置的加密方法。即把文本按照一定的字數分成多個組,取每組第一個字連起來得到密文1,再取每組第二個字連起來得到密文2……最後把密文1、密文2……連成整段密文。

將這組字母分成“OTOEOI”和“OUYVL”兩排,然後對插重組,得到第四步的字母排列“OOTUOYEVOLI”。

最後,將“OOTUOYEVOLI”倒序排列,即“I LOVE YOU TOO”。

我們密碼人真是太深情了

當然,除了古典密碼和編碼,也可以用現代密碼學來加密,但是如果對方不是工科的話,難度有點大。

比如基於RSA的表白(本案例來自freebuf),首先引入RSA的加密過程

選擇兩個大素數p和q,計算n=p×q和z=(p-1)×(q-1)

選擇一個與z互質的數,令其爲d,找到一個 e 使滿足exd= 1 (mod z)

公開密鑰爲(e,m),私有密鑰爲(d,m)

對每個數據塊 P,計算 C= P^(mod n),C 即爲P的密文

對每個密文塊 C,計算 P=C^d(mod n),P即爲明文

首先選擇公鑰e:1314(或者520之類的,雖然說e必須是素數,不過表白嘛,不用太計較)

然後選擇p和q,要求

1.ϕ(pq)=(p−1)(q−1)

2.gcd(ϕ(n),e)=1

獲取到了that gilr 或者boy的個人信息,包括但不限於姓名、學號、生日,把它們當作p和q,加密你的表白,比如i love you,得到密文即可。

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com