S박스

S-box

암호학에서 S박스(substitution-box)는 치환을 실행하는 대칭키 알고리즘의 기본 컴포넌트입니다.블록 암호에서는 일반적으로 키와 암호문 사이의 관계를 모호하게 하기 위해 사용되며, 따라서 섀넌의 혼동을 보증합니다.수학적으로 S박스는 벡터 부울 [1]함수입니다.

일반적으로 S박스는 일정 수의 입력 비트 m을 취득하여 출력 비트 n으로 변환합니다.여기서 n은 반드시 [2]m과 같을 필요는 없습니다.n S박스는 각각 n비트의 2단어를 가진m 룩업 테이블로 구현할 수 있다.고정 테이블은 일반적으로 Data Encryption Standard(DES; 데이터 암호화 표준)와 같이 사용되지만 일부 암호에서는 테이블이 에서 동적으로 생성됩니다(: Blowfish 및 Twofish 암호화 알고리즘).

고정 테이블의 좋은 예로는 6비트 입력을 4비트 출력에 매핑하는 DES(S5)의 S-box가 있습니다.

S5. 중간 4비트 입력
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
외부 비트 00 0010 1100 0100 0001 0111 1010 1011 0110 1000 0101 0011 1111 1101 0000 1110 1001
01 1110 1011 0010 1100 0100 0111 1101 0001 0101 0000 1111 1010 0011 1001 1000 0110
10 0100 0010 0001 1011 1010 1101 0111 1000 1111 1001 1100 0101 0110 0011 0000 1110
11 1011 1000 1100 0111 0001 1110 0010 1101 0110 1111 0000 1001 1010 0100 0101 0011

6비트 입력의 경우, 4비트 출력은 외부 2비트(첫 번째 및 마지막 비트)를 사용하여 행을 선택하고 내부 4비트를 사용하여 열을 선택합니다.예를 들어 입력 "011011"에는 외부 비트 "01"과 내부 비트 "1101"이 있으며, 이에 대응하는 출력은 "1001"[3]이 됩니다.

DES의 8개의 S박스는 백도어(설계자에게만 알려진 취약성)가 암호에 심어져 있을 수 있다는 우려 때문에 수년간 집중적인 연구의 대상이었다.S박스 설계기준은 차분 암호해석의 공개 재발견 후 최종적으로 (Coppersmith 1994에서) 발표되었으며, 이 특정 공격에 대한 내성을 높이기 위해 신중하게 조정되었음을 보여준다.Biham과 Shamir는 S-box를 조금만 수정해도 [4]DES를 크게 약화시킬 수 있다는 것을 발견했습니다.

분석 및 속성

좋은 S박스의 설계에 대한 많은 연구가 있어 DES가 [citation needed]출시되었을 때보다 블록 암호에서의 사용에 대해 훨씬 더 많이 이해되고 있다.

입력 비트의 구부러진 함수에 의해 출력 비트의 선형 조합이 생성되는 모든 S박스를 [5]완전 S박스라고 부릅니다.

S-box는 LAT(Linear Ascurration Table) 또는 DDT(Walsh transform and difference Distribution Table) 또는 자기상관표 및 스펙트럼 형태의 선형암호미분암호분석을 이용하여 분석할 수 있다.강도는 비선형성(굴곡, 거의 구부러짐)과 미분 균일성(완벽하게 비선형, 거의 완벽하게 비선형)[6][7][8][1]으로 요약할 수 있다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b Carlet, Claude (2010), Hammer, Peter L.; Crama, Yves (eds.), "Vectorial Boolean Functions for Cryptography", Boolean Models and Methods in Mathematics, Computer Science, and Engineering, Encyclopedia of Mathematics and its Applications, Cambridge: Cambridge University Press, pp. 398–470, ISBN 978-0-521-84752-0, retrieved 2021-04-30
  2. ^ Chandrasekaran, J.; et al. (2011). "A Chaos Based Approach for Improving Non Linearity in the S-box Design of Symmetric Key Cryptosystems". In Meghanathan, N.; et al. (eds.). Advances in Networks and Communications: First International Conference on Computer Science and Information Technology, CCSIT 2011, Bangalore, India, January 2-4, 2011. Proceedings, Part 2. Springer. p. 516. ISBN 978-3-642-17877-1.
  3. ^ Buchmann, Johannes A. (2001). "5. DES". Introduction to cryptography (Corr. 2. print. ed.). New York, NY [u.a.]: Springer. pp. 119–120. ISBN 978-0-387-95034-1.
  4. ^ Gargiulo의 "S-box 수정과 DES 유사 암호화 시스템에서의 효과"는 Wayback Machine 9페이지에서 2012-05-20을 아카이브했습니다.
  5. ^ RFC 4086.섹션 5.3 "S박스를 혼합에 사용"
  6. ^ Heys, Howard M. "A Tutorial on Linear and Differential Cryptanalysis" (PDF).{{cite web}}: CS1 maint :url-status (링크)
  7. ^ "S-Boxes and Their Algebraic Representations — Sage 9.2 Reference Manual: Cryptography". doc.sagemath.org. Retrieved 2021-04-30.
  8. ^ Saarinen, Markku-Juhani O. (2012). Miri, Ali; Vaudenay, Serge (eds.). "Cryptographic Analysis of All 4 × 4-Bit S-Boxes". Selected Areas in Cryptography. Lecture Notes in Computer Science. Berlin, Heidelberg: Springer. 7118: 118–133. doi:10.1007/978-3-642-28496-0_7. ISBN 978-3-642-28496-0.

추가 정보

  • Chuck Easttom (2018). "A Generalized Methodology for Designing Non-Linear Elements in Symmetric Cryptographic Primitives". 2018 IEEE 8th Annual Computing and Communication Workshop and Conference (CCWC). IEEE Computing and Communication Workshop and Conference (CCWC), 2018 IEEE 8th Annual. IEEE. pp. 444–449. doi:10.1109/CCWC.2018.8301643. ISBN 978-1-5386-4649-6. S2CID 3659645.

외부 링크