再說對稱式密碼前,還有一個東西想說的是XOR
這個符號是我第一次在數位邏輯上看到,在密碼學裡也很常出現。
XOR的運算很簡單,看以下例子就能明白了:
0 0 = 0
0 1 = 1
1 0 = 1
1 1 = 0
只要有相同的就會消掉,留下唯一不一樣的。(這在找出唯一不一樣的地方可以很快算出)
以昨天的例子來看我們也可以使用XOR做對稱式加密(加密跟解密使用同一把金鑰K)
A要傳訊息M給B,A先使用K做加密(M K),之後傳給B。
B收到密文C後,使用K做解密(C K) 會得到M。
也就是說(M K K) = M
這是一個簡單的加解密,但一樣會有昨天的問題
如果是只用一次的密碼,如OTP就可以使用XOR,但也可以直接做比對就好
假設A要登入某個系統,該系統可以產生一組亂數給A,要求A登入系統還需要附上該組亂數才能登入成功。