4. 암호학

    1. ADFGVX


    전치 + 환자

    여섯개의 문자를 행과 열로 나열하고 26개의 문자와 10개의 숫자를 무작위로 대입


    1. 먼저 행을 선택하고 다음 열을 선택하여 중간 암호문을 생성한다.

    2. 중간 암호문은 전치 키워드의 길이에 따라 나열하고 키워드 순서에 따라 전치를 시행한다.



    2. Shannon 의 암호 이론

    ★ Confusion(혼돈) - 평문과 암호문의 상관관계를 숨김

    ★ Diffusion(확산) - 평문의 통계적 특성을 암호문 전반에 확산, 이를통해 암호문과 평문사이의 관계를 어렵게 함


    치환형 암호화 - 혼돈특성

    전치형 암호화 - 확산특성

    안정성을 위해서는 두개를 결합하여 사용하여야 한다.


    3. 블록암호화 스트림암호


    3.1 블록암호

    몇글자 단위로 글자로 나누어 암호화


    3.2 스트림 암호

    1 bit, 혹은 한글자식 나누어 암호화



    4. One-Time Pad(일회용 암호)

    Vernam 암호


    - 키 계열이 반복되지 않고 난수를 발생한다.

    - 평문의 길이와 키의 길이가 같아야한다.

    - 키를 한번쓰고 버린다.

    - 해독할 수 없는 암호이다. Brute Force로 알 수 없다.


    키가 없을때를 해독이라고 하고

    키가 있을때를 복호화라고 한다.


    - 난수표를 이용해 만든 비밀키의 길이가 평문의 길이가 같고, 한번 사용한 비밀키를 다시 사용하지 않으면 완전 암호가 된다.

    - 일회용 암호를 사용하여 안전성을 보장받으려면 상당한 비용과 자원이 소모된다.


    5. 선형궤환 시프트 레지스터(LFSR - Linear Feedback Shift Register)


    레지스터의 단위를 플립/플롭(1bit) 이라고 한다.

    1 비트씩 사용하여 다음과 같은 난수를 배출한다.


    6. 케르크호프의 원리

    암호의 안전성은 암호 알고리즘의 비밀에 의존하는 것이 아니라 키의 비밀을 지킴으로써 보장된다.


    ★7. 암호 해독

    - 암호문 단독공격(Cipher Text Only Attack)

    암호문밖에 없을 때 키와 평문을 알아내는 것


    - 기지 평문 공격(Known PlainText Attack)

    약간의 평문과 암호문을 알고 있는 상태에서 해독


    - 선택 평문 공격(Chosen PlainText Attack)

    평문에 대한 암호문을 얻을 수 있는 경우 


    - 선택 암호문 공격(Chosen CipherText Attack)

         암호문에 대한 평문을 얻을 수 있는 경우


    8. Feistel 구조

    블록암호

    - 특징

    라운드 함수에 관계없이 역변환 가능 , 즉 암,복호화 과정이 같다.

    두번의 수행으로 완전한 확산니 이루어진다.

    수행속도가 빠르다

    H/W , S/W 의 구현이 용이하다.


    cf ) 블록암호와 스트림암호

    블록 암호 - Feistel 암호 - DES

       SPN 암호 - AES


    스트림 암호


    9. DES(Data Encryption Standard)


    Key = 64bit, 실 사용은 56bit(Parity Bit가 8비트마다 붙기 때문에)

    암호는 계속해서 안전성을 검토해야한다.

    평문을 64비트로 나누어 암호화한다.

    64비트의 키를 사용

    ' > 암호학' 카테고리의 다른 글

    6. 암호학  (0) 2017.09.26
    5. 암호학  (0) 2017.09.24
    3. 암호학  (0) 2017.09.08
    2. 암호학  (0) 2017.09.02
    1. 암호학  (0) 2017.08.26
    Posted by Config