어떤 메시지를 암호화하여 전송할 때, 과연 그 메시지가 정상적으로 전달되었는가를 테스트하는 방법에 관한 생각이다.  

A.
1. 평문을 암호화한다. 암호문의 해시값을 구하여 암호문과 해시값을 전달한다.
2. 받은 쪽에서는 암호문을 풀기전에 암호문의 해시값을 구하여 전달받은 해시값과 같은지 비교한다.
3. 같을 경우 암호문을 푼다. 

위 방법과

B.
1. 암호문만을 전달한다. 암호문을 풀어 보면, 평문과 그 해시값이 복원된다.
2. 받은 쪽에서 평문에 대한 해시값을 다시 계산해서 복원하여 얻은 해시값과 같은지 비교한다.
3. 같을 경우만 평문을 인정한다.

이 방법 중 어떤 것이 좋을까? 아니면 둘을 합한,

C.
1. 평문을 암호화한다. 암호문의 해시값을 구하여 암호문과 해시값을 전달한다.
2. 받은 쪽에서는 암호문을 풀기전에 암호문의 해시값을 구하여 전달받은 해시값과 같은지 비교한다.
3. 같을 경우 암호문을 풀어 평문과 해시값을 구한다.
4. 평문에 대한 해시값을 구한 뒤, 해시값을 다시 계산해서 복원하여 얻은 해시값과 같은지 비교한다.
5. 같을 경우만 평문을 인정한다.

이 셋중에서.... B가 제일 매력적인거 같아 보임.
신고

+ Recent posts