공통 운영 모드 ( Mode of Operation )

황제낙엽 2013.03.07 13:49 조회 수 : 347

sitelink1  
sitelink2  
sitelink3  
sitelink4  
extra_vars5  
extra_vars6  
운영 모드 ( Mode of Operation )
 
스트림 사이퍼의 경우에는 비트 혹은 바이트 단위의 평문을 곧바로 처리하지만 블록 사이퍼의 경우에는 블록 단위로 처리하므로 몇 가지 고려할 점이 생기게 됩니다.
 
1) 패딩 ( Padding )
평문이 반드시 블록 비트 수의 배수 길이로 존재하지는 않으므로 마지막 블록을 처리할 때는 블록 비트 수보다 적은 경우가 많습니다.
(예) DES에서 입력 평문의 비트 수가 100비트라면 첫 블록 64비트를 처리한 후 36비트가 남게 됨
 
이런 경우 64비트를 맞추어 주기 위해 보통 100000000000... 과 같은 형태로 비트를 첨가하여 주는데 이렇게 비트열을 첨가하여 블록 길이를 맞추는 것을 패딩(padding)이라고 합니다.  대부분의 암호 알고리즘 표준에서는 여러 가지 패딩 방법을 명시해 둡니다.
 
2) 모드 ( Mode )
기본 암호화 연산 단위를 연결하여 큰 길이의 평문을 처리하는 방법을 모드(mode)라고 하며 암호 알고리즘에 따라 여러 가지 방법이 정의되어 있습니다. 여기에서는 일반적으로 대칭키 암호에 많이 활용되는 DES의 운용 모드(mode of operation) 네 가지를 살펴보도록 하겠습니다.

█ ECB(Electronic Code Book)
► 가장 기본적인 운용 방법으로 입력 평문 X1 X2 ... Xn에 대하여 각각의 대응되는 암호문 Y1 Y2 ... Yn을 생성하는 방법
► 앞뒤 블록 간에 아무런 연관이 없으므로 병렬 처리가 가능하고 속도가 빠름
► 평문-암호문의 상관 관계가 쉽게 드러나 known-plaintext attack이나 블록의 일부를
다른 것으로 바꾸는 블록 재생 공격(replay attack)에 대하여 매우 취약
 
█ CBC(Cipher Block Chaining)
► 이전 블록의 암호문을 평문 블록과 XOR한 후 암호화 하는 방법으로 가장 많이 사용되는 모드
► 최초 평문 블록에 대해서는 초기화 벡터(Initialization Vector)가 필요하며, 평문-암호문의 패턴이 감추어지고 평문의 첫 블록이 암호문의 마지막 블록까지 영향을 주므로 known-plaintext attack이나 재생 공격에 대해 강함
► 암호화 용도 뿐 아니라 인증을 위한 MAC을 생성할 때 많이 사용됨
 
█ CFB(Cipher Feedback)
► 이전 블록의 암호문을 암호화한 후 평문 블록과 XOR하는 것으로 블록 사이퍼를 스트림 사이퍼처럼 구현하는 방법
► 최초 평문 블록에 대해서는 초기화 벡터가 필요하며, 평문-암호문의 패턴이 감추어지고 평문의 첫 블록이 암호문의 마지막 블록까지 영향을 주는 특성을 갖고 있음
 
█ OFB(Output Feedback)
► 초기화 벡터로부터 반복적으로 암호화하면서 매 결과 블록을 평문 블록과 XOR하여 암호문을 구하는 것으로 역시 블록 사이퍼를 스트림 사이퍼처럼 구현하는 방식
► 암호화를 시작하기 전에 미리 초기화 벡터를 암호화한 비트 열을 계산해 둘 수 있어 효율적인 연산이 가능함


번호 제목 sitelink1 글쓴이 날짜 조회 수
공지 [계속 추가중] SBOM 용어 정의   황제낙엽 2025.04.10 52
공지 [계속 추가중] Keycloak 용어 및 설정 옵션 정의   황제낙엽 2024.02.02 631
30 OpenSSL 설치   황제낙엽 2024.11.12 115
29 서버의 인증서 파일을 갱신후 브라우저의 인증서 뷰어에서 새 인증서 정보가 조회되지 않을 경우   황제낙엽 2024.08.23 109
28 SSL 인증서 파일 포맷 종류 - crt, cer, csr, pem, der, pfx, p12, jks, key https://www.securesign.kr/guides/kb/54  황제낙엽 2020.07.20 165
27 SNI 기반 HTTPS 사이트 차단 file https://blog.naver.com/aepkoreanet/221465526990  황제낙엽 2020.03.04 170
26 사설인증서 공인인증서 구분 방법 file   황제낙엽 2019.07.16 186
25 Convert Certificate Format SSL 인증서 변환 가이드 https://www.securesign.kr/guides/SSL-Cer...ert-Format  황제낙엽 2019.03.29 199
24 *.key와 *.crt를 PKCS#12(*.pfx, *.p12)로 형식으로 변환하기 https://www.eznbiz.co.kr/help/qna/content/3  황제낙엽 2019.03.29 213
23 HOWTO: DER vs. CRT vs. CER vs. PEM Certificates and How To Convert Them http://info.ssl.com/article.aspx?id=12149  황제낙엽 2019.03.29 869
22 How to convert a certificate file from .crt to .cer? file https://www.sonicwall.com/support/knowle...597576961/  황제낙엽 2019.03.29 661
21 국내(KOREA) IP 사용 대역 file http://www.domain.kr  황제낙엽 2019.02.21 360
20 서버 보안 관리를 위한 백업과 점검 절차   황제낙엽 2017.05.30 201
19 정보 보안 개론 : 네이버 지식백과 http://terms.naver.com/list.nhn?cid=5843...ryId=58437  황제낙엽 2017.05.19 191
18 개발용 tomcat 운용시 tomcat-users.xml 의 관리 주의   황제낙엽 2017.04.07 391
17 윈도우 원격데스크톱(RDP) 접근 이력 조회 file http://skylit.tistory.com/196  황제낙엽 2017.04.06 243
16 SSL, TLS, OpenSSL 관련 http://kin.naver.com/qna/detail.nhn?d1id...K9fw%3D%3D  황제낙엽 2015.12.31 217
» 운영 모드 ( Mode of Operation )   황제낙엽 2013.03.07 347
14 암호화 알고리즘 스크랩   황제낙엽 2012.08.28 3076
13 미연방 표준 암호 알고리즘 http://rustican.com/board/zboard.php?id=paper&no=140  황제낙엽 2010.05.21 285
12 blowfish java source file http://www.angelfire.com/moon/dmp/  황제낙엽 2010.05.16 507
11 파일 해쉬 알고리즘 CRC   황제낙엽 2009.12.01 409