7.12 풀이
7.12 풀이는, Feistel network 와 DES 구조를 알고있다는가정하에, 작성되었습니다.
(a)
7.11 번의 (b) 에 의해서 다음과 같이 DES 의 특징을 알 수 있다.
또한위 식을 이용하여, x, y를 다음 과 같이 나타낼 수 있다.
이는 다음 식이 필요 충분조건을 만족하는 명제임을 알 수 있다.
고로, DES_k^(-1) 은, 일반적인 DES_k 와 다르게, 키를 역 순으로 사용하는 것을 알 수 있다.
(b)
크기가 56bits 이고, 모두 0으로 이루어진 key 이므로, 0-key 에서 subkey들은 다음 과 같다. (Palindrom)
이를 통해, 라운드 함수는 1개로 고정됨을 알 수 있고,
고로 위 준식 이 성립함 을 알 수 있으며, 위의 (a) 의 결과를 이용하여,
임을 보일 수 있다.
(c)
(a)를 통하여 Decryption 하는 과정은 Encryption 과정에서 라운드키 순서를 반대로 쓰는 것 과 같다.
위의 특징을 이용하여, DES를 취약하게 하는 키는 앞뒤가 대칭인
Palindrome 을 만족하면 된다.
고로 가능한 키는 (b)에서 언급한 키와, 56비트로 이루어진 1, 28비트로 이루어진 01, 10 이 weak key 의 후보가 된다.
(d)
Triple-DES(3DES) 는 다음과 같이 정의 된다.
이때 우리는 Week Key 에 대한 성질이 다음과 같음을 (a)~(c)를 통해 알 수 있다.
(즉, 만약 어떤 k_i가 week key 라면, 암호화와 복호화에서 그 키를 쓸때 효과 가 같은 성질이 있다)
이를 통해, k2 가 week key 에 해당한다면,
Last updated