排他的論理和の性質
X=A
Bが成り立つとする。排他的論理和での計算をするときにはA,B,Xのうち2つが既知であれば残りの1つを求めることが出きる。つまり、この場合には
- A=B
X
- B=A
X
が同時に成り立つ。
具体的には次の通りである。図17はDESアルゴリズムの抜粋である。
図17 DESアルゴリズムの抜粋
|
図中において、次の3つの値が排他的論理和の計算に関わっている。
- L15
- f(R15,K16) 但し、R15=L16
- R16
暗号化をするときには、L15,f(R15,K16)から、R16を求める。ここで仮にそれぞれの値を次のように定める(簡単化のため4ビットにする)。
- L15=1011(2進数)
- f(R15,K16)=1001
このときR16=0010となる。
復号化をするときにはR16,f(R15,K16)からL15を求める。なお、R15=L16である。上記での暗号化したときのデータを利用すると、それぞれの値は次のようになる。
このときL15=1011となる。
以上より暗号化する前のL15と、復号化した後のL15が同じ値になっていることが分かる。このことを一般化したのが冒頭での式である。すなわち排他的論理和の計算では、3つの値のうち2つの値が既知であれば、残りの値を求めることができる。