ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 암호학 기초 - 2
    Cryptography - Security/Dreamhack - Basic 2023. 4. 2. 13:24

     

    배타적 논리합

    배타적 논리합( eXclusive OR, XOR )

        → 입력으로 들어온 2개의 값이 서로 다를 때, 참 거짓을 반환하는 연산이다.

     

    Dreamhack - Cryptography

    위 사진에서는 입력으로 2가지의 값이 들어오고 출력으로는 참, 거짓으로 나타나게 된다.

    • 입력값 → 0 , 0 : 2개의 입력값이 0으로 같으므로 0을 출력( 반환 )
    • 입력값 → 0 , 1 : 2개의 입력값이 0과 1로 다르므로 1을 출력( 반환 )
    • 입력값 → 1 , 0 : 2개의 입력값이 1과 0으로 다르므로 1을 출력( 반환 )
    • 입력값 → 1 , 1 : 2개의 입력값이 1로 같으므로 0을 출력( 반환 )

     

     

    Dreamhack - Cryptography

    위 사진은 배타적 논리합 연산의 예이다.

    • 숫자 5와 7을 이진수로 변환하게 되면 각각 101 , 111 로 변환이 된다.

     

    • 숫자 3과 10을 이진수로 변환하게 되면 각각 0011 , 1010 으로 변환이 된다.

     

    따라서 임의의 정수를 x 라고 할 경우 임의의 정수 x 와 자기 자신을 배타적 논리합 하게 된다면 아래와 같은 결과인 0이 반환된다.

    Dreamhack - Cryptography

     

     

     

    합동식

    합동식이란 두 정수 a, b 를 각각 정수 m 으로 나누었을 때 나머지가 같은지를 판별하는 식이다.

    위 예시에서 숫자 7과 17을 10으로 나누었을 경우 나머지는 둘 다 7로 같다.

    따라서 7과 17은 mod 10 에 대해 합동이라고 하며 기호로는 아래와 같이 나타낼 수 있다.

    Dreamhack - Cryptography

     

     

    반대로 숫자 12와 5는 3으로 나누었을 경우 나머지가 같지 않게 된다.

     

    따라서 12와 5는 mod 3 에 대해 합동이 아니며 기호로는 아래와 같이 나타낼 수 있다.

    Dreamhack - Cryptography

     

     

     

    Dreamhack - Cryptography 공부내용 정리

    https://dreamhack.io/

    관련된 문제는 사이트에 수록되어 있습니다

    728x90

    'Cryptography - Security > Dreamhack - Basic' 카테고리의 다른 글

    고전암호 - 3  (0) 2023.04.06
    고전암호 - 2  (0) 2023.04.05
    고전암호 - 1  (0) 2023.04.04
    암호학 기초 - 3  (0) 2023.04.03
    암호학 기초 - 1  (0) 2023.04.01
Designed by Tistory.