想寫個好簡單的加密

本帖最後由 主人 於 2010-1-19 15:13 編輯

真係好簡單, 純係想加密小階英文

方法係這種
a-z = 0-25
key = 3
encrypt 'z'

(25+3)mod 26 = 2 = 'c'


我問題是在decrypt

decrypt 'c'

(2-3) mod 26

如果用人腦計, 2-3要係=25

但電腦就唔識咁諗, 會變成 -1mod26

所以我想問問, 有沒有甚麼算法, 可以將運算結果鎖死在一部範圍內不斷遁還呢?
以我這個例如就是 0-25


改少少, 想問
除了 if <0 then +26 這種方法, 仲有無更好的方法?

唔用loop?

TOP

考考你
((2-3)+26) mod 26=?
((2-3)+52) mod 26=?
((2-3)+78) mod 26=?

TOP

(x + n * 26)  mod 26 == x (where x and n are integer and >= 0)

即係, 你加左26先mod咪得囉

題外話: 呢種encryption方法叫Caesar cipher

TOP

本帖最後由 jj2a3 於 2010-1-19 13:52 編輯

可以 +3 if > 25 就 -25

TOP

回復 5# jj2a3


del.....

TOP

try AES-128

TOP