ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Integrity
    보안/컴퓨터보안 2019. 10. 13. 18:00

    Integrity에 문제가 생긴 경우

    - 데이터를 중간에 가로채서 수정

    - 공격자가 Alice인 척 메세지를 보내는 일

     

     

    Data Integrity

    - 허용되지 않은 writing을 탐지하는 것이 목표

    - Encryption Confidenciality를 보장하지만 단독으로는 Integrity를 보장하지 못함

     

     

     

     

    MAC ( Message Authentication Code )

    - Integrity를 보장하기 위해 사용된다.

    - CBC residue(CBC의 마지막 ciphertext block)을 사용한다.

    - MAC은 IV와 plaintext와 같이 보내진다.0

    - Receiver반드시 key를 알아야 하고 계산을 해야한다.

     

    MAC 사용 예

    Plaintext를 보내야하는데 alice가 bob에게 그냥보내면 중간에 누가 조작하여도 알 수 없음. 
    confidenciality(암호화)는 필요 없고 integrity만 필요할때 
    =>키 쉐어하고 잘게 쪼개서 CBC인크립션 .. 나오는 Cn이 MAC이 되고, IV와 plaintext에 붙여서 보냄.

     

     

    * Encryption에 사용되는 key와 MAC에 사용되는 key는 달라야 한다.

    Alice가 Bob에게 4블록으로 나누어 plaintext를 전달하고 Trudy는 P1을 X로 변조했다고 가정했을 때..

    같은 키를 사용하게 되면 C1은 변조된 메세지를 encryption한 결과물이고 체인 형태로 쭉 잘못된 메세지를 Encryption 하게된다. 그리고 마지막 ciphertext block인 C3가 MAC이 되는데, 이미 그 ciphertext block 조차 잘못된 메세지를 encryption한 결과이고, 변조되었는데 그 변조된 C3가 MAC이 되었으니 잘못되었다.

     

     

     

    c1~cn 보내고 다른키를 써서 다시 Cn`을 만들어야함
    => 시간이 2배로 걸린다.  (Symmetric에서 단점)

    댓글

Designed by Tistory.