블록 암호 편집하기

IT위키

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.

편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.

최신판 당신의 편집
1번째 줄: 1번째 줄:
[[분류:암호학]][[분류:보안]]
; Block Cipher
; Block Cipher


* 평문을 일정한 크기의 블록으로 잘라낸 후 각 블록을 암호화하는 방식
* 평문을 일정한 크기의 블록으로 잘라낸 후 각 블록을 암호화하는 방식
* 일반적으로 블록의 크기는 8비트 또는 16비트의 배수
* 일반적으로 블록의 크기는 8비트 또는 16비트의 배수
* 복호화 알고리즘은 암호 알고리즘의 역함수
* 메시지의 길이가 n비트보다 작다면 n비트 블록을 만들기 위해 패딩(padding)이 추가
== 치환과 전치 ==
;Substitution and Transposition
* 블록 암호는 비트단위의 치환 혹은 전치 암호로 동작된다.
* 치환암호에서 평문과 암호문의 0과 1의 비트 개수는 다르다.
* 전치암호에서 메시지의 길이가 n일 떄, 평문 혹은 암호문의 개수는 2^n이다.
* 현대블록암호는 전수공격을 예방하고자 치환암호로 설계된다.
== 구성 요소 ==
이동요소(Shift) + 교환요소(Swap) + 분할요소(Split) + 조합요소 + 전치 장치(P-Box) + 치환 장치(S-Box) + XOR 연산(exclusive-OR)
혼돈과 확산의 성질을 만족시킨다.
=== P-박스 ===
* 단순 P-박스 : 전치 과정을 병렬적을 수행한다. 역함수가 존재한다.
* 축소 P-박스 : n비트를 입력 받아 m비트를 출력한다. (단, n > m)
* 확장 P-박스 : n비트를 입력 받아 m비트를 출력한다. (단, n<m)
=== S-박스 ===
* 치환 암호의 축소 모형으로 입력 비트와 출력 비트가 같은 경우에만 역함수가 존재한다.
== 합성 암호 ==
;Product Ciphers
* Shannon은 치환, 전치, 그리고 기타 요소를 결합한 합성 암호를 소개
* 혼돈(confusion)은 암호문과 키의 관계를 숨기는 것
* 확산(diffusion)은 평문의 통계적 성질을 숨기는 것, 평문과 암호문의 관계를 숨기는 것
== 라운드(Rounds) ==
* 반복적인 합성 암호를 라운드라고 하며 이를 통해 확산과 혼돈 성질을 얻는다.


== 종류 ==
== 종류 ==
* [[AES]]
* [[AES]]
* [[DES]]
* [[DES]]
* [[IDEA]]
* [[SEED]]
* [[HIGHT]]
* [[LEA]]
* [[RC5]]
== [[블록 암호 모드]] ==
* ECB : 간단, 고속, 위험
* CBC : 한 블록 내에서 에러 전파, 다른 블록에 1비트 영향
* CFB : 스트림 모드, 약한 에러전파
* OFB : 스트림 모드, CTR사용을 권장
* CTR : 스트림 모드, 권장됨
== [[블록 암호 공격]] ==
; 블록 암호의 키를 찾기 위한 공격 기법들
* 차분 공격(Differential Cryptanalysis)
** 1990년 Biham과 Sharmir가 개발
** 선택 평문 공격
** 두 평문 블록들의 비트 차이에 대응되는 암호문 블록의 비트 차이를 이용하여 키를 찾는다.
* 선형 공격(Linear Cryptanalysis)
** 1993년 Matsui가 개발
** 알려진 평문 공격
** 알고리즘 내부의 비선형 구조를 선형화시켜 키를 찾는다.
* 전수 공격(Exhaustive Key Search)
** 1977년 Diffie와 Hellan이 개발
** 암호화 시 발생 가능한 모든 경우에 대해 조사
** 현실적으로 적용하기 힘든 경우가 많음
* 통계적 분석 공격(Statistic Analysis)
** 암호문에 대한 평문의 단어 빈도등 통계적인 자료를 분석하여 해독
* 수학적 분석 공격(Mathematical Analysis)
** 통계적인 방법을 포함하여 수학적 이론을 이용하여 해독
IT위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는 IT위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다. 저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소 편집 도움말 (새 창에서 열림)