SM4(암호화기)

SM4 (cipher)
SM4
SM4 round.svg
일반
디자이너Academy of Sciences, Data Assurance & Communication Security Center(데이터 보증 및 통신 보안 센터)
초판2006년 (비공개,[1] 2012년 3월 21일 표준화)
암호 상세
키 사이즈128비트
블록 크기128비트
구조.언밸런스 페이스
라운드32
최고의 퍼블릭 암호 분석
22라운드에 대한 선형 및 차등 공격

ShangMi 4(SM4) ( SMS4)[2]는 중국 전국무선랜 WAPI(WLAN Authentication and Privacy Infrastructure)에서 사용되는 블록 암호로 트랜스포트 레이어 [3]보안에서도 사용됩니다.

SM4는 IEEE 802.11i 표준용으로 제안된 암호였지만, 지금까지 ISO에 의해 거부되었습니다.거부 이유 중 하나는 [citation needed]IEEE의 WAPI 패스트트랙 제안에 반대했기 때문입니다.

SM4 알고리즘은 CAS의 Data Assurance & Communication Security Center와 미국암호관리국의 Commercial Cryptogrophy Testing Center에 의해 작성되었습니다.주로 Lü Shuwang(중국어: ( ( ()에 의해 개발되었습니다.이 알고리즘은 2006년 1월에 기밀 해제되었으며 2016년 [4]8월에 국가 표준(GB/T 32907-2016)이 되었습니다.

암호 상세

SM4 암호는 키사이즈와 블록사이즈가 [5][6]각각 128비트입니다.데이터 블록 1개의 암호화 또는 복호화는 32라운드로 구성됩니다.비선형 키 스케줄은 라운드 키를 생성하기 위해 사용되며, 복호화에서는 암호화와 동일한 라운드 키가 사용됩니다.단, 순서는 반대입니다.

키 및 키 파라미터

암호화 키의 길이는 128비트입니다. K ( M 0 , 1, K, 3 MK (MK_, \ , \ 2} , \ )i( ,) 、 1 ) 。

라운드 키는 ( k , ,… , 31 { (_ { , \ _ {, \, \ _ { } )로 표시됩니다서 각 i ( , , { _ { } ( i , , \ ) \ ldots , 31 )는 단어입니다암호화 키에 의해 생성됩니다.

K ( 0, 1 , , F K ){ FK = ( , \ , \ , \ )는 시스템 파라미터입니다.

K ( 0 , K , , K = ( _ {, \ , \ _ })는 하기 위해 사용되는 고정 파라미터입니다.

FK_}) 및 })는 알고리즘 확장에 사용되는 단어입니다.

둥글다

각 라운드는 4개의 출력 , + ,+ + +1+2{i3})에서 계산됩니다. 4 F( i + 1 + 1 2

F(\ F 비선형 변환, S박스 및 선형 L L로 구성된 대체 함수입니다.

S박스

S박스는 8비트 입력 및 8비트 출력용으로 고정되며 Sbox()로 표기됩니다.AES와 마찬가지로 S박스는 GF(2)8 대한 곱셈 역수를 기반으로 합니다.아핀 변환과 다항식 베이스는 AES와 다르지만, AES Rijndael [7]S-box가 주어지면 아핀 동형성에 의해 효율적으로 계산될 수 있다.

발언

2012년 3월 21일 중국 정부는 산업 표준 "GM/T 0002-2012 SM4 블록 암호 알고리즘"을 발표하여 SMS4를 [2]SM4로 공식 명칭 변경했습니다.

SM4에 대한 영어 설명은 인터넷 드래프트로 제공됩니다.ANSI [8]C에서의 참조 실장이 포함되어 있습니다.

SM4는 ARMv8.4-A의 [9]ARM 아키텍처 확장의 일부입니다.

레퍼런스

  1. ^ "SM4 Block Cipher Algorithm". CNNIC. 2013-12-04. Retrieved 2016-07-24.
  2. ^ a b "Announcement No.23 of the State Cryptography Administration" (in Chinese (China)). The Office of Security Commercial Code Administration (OSCCA). 2012-03-21. Archived from the original on 2016-08-14. Retrieved 2016-07-24.
  3. ^ Yang, P (March 2021). RFC 8998. IETF. doi:10.17487/RFC8998. Retrieved 2022-07-30.
  4. ^ 루수왕.SM4 알고리즘의 개요[J]정보보안연구저널, 2016년, 2(11) : 995-1007.
  5. ^ 어카이브 2007-07-10 at the Wayback Machine (중국어)
  6. ^ 무선 네트워크용 SMS4 암호화 알고리즘
  7. ^ Saarinen, Markku-Juhani O. (17 April 2020). "mjosaarinen/sm4ni: Demonstration that AES-NI instructions can be used to implement the Chinese Encryption Standard SM4". GitHub.
  8. ^ Tse, Ronald; Kit, Wong; Saarinen, Markku-Juhani. "The SM4 Blockcipher Algorithm And Its Modes Of Operations". tools.ietf.org.
  9. ^ "Introducing 2017's extensions to the Arm Architecture". community.arm.com.

외부 링크