SM4 (国密) 암호화 & 복호화

무료 온라인 SM4 (国密) 암호화 & 복호화 도구. 100% 로컬 처리 — 데이터가 기기를 벗어나지 않습니다.

National Standards
Legacy
출력

결과가 여기에 표시됩니다...

입력 암호화

Usage Guide

SM4 정보

SM4는 2012년 중국 국가암호관리국에서 발표한 대칭 암호화 알고리즘이며, 중국 상용 암호 표준(GM/T 0002-2012)의 중요한 구성 요소입니다. SM4는 128비트 키와 128비트 블록 길이를 사용하며, AES-128과 비교할 수 있는 보안성을 가지고 있으며, 중국의 암호화 응용 시나리오를 위해 특별히 설계되었습니다. SM4는 중국의 금융, 정부 및 통신 부문에서 광범위하게 사용되고 있으며, 국가 암호 알고리즘 시스템의 핵심 구성 요소 중 하나입니다. 중화인민공화국 암호법에 따르면, 국가 안보 및 국민 생활과 관련된 중요 분야는 국가 암호 알고리즘을 사용해야 합니다.

국가 암호 표준: SM4는 중국 상용 암호 표준의 대칭 암호화 알고리즘이며, SM3 (해시), SM2 (비대칭 암호화) 및 SM9 (신원 기반 암호화)와 함께 완전한 국가 암호 알고리즘 시스템을 형성합니다. 중국 내 금융, 정부 및 통신과 같은 중요 부문에서는 국가 암호 알고리즘의 사용이 권장되거나 필수입니다.

사용 단계

SM4는 암호화와 복호화 모두에 동일한 키를 사용하는 대칭 암호화 알고리즘입니다:

1. 모드 선택암호화 모드(CBC, ECB) 선택, CBC 모드 권장
2. 키 설정128비트 키(16바이트) 입력 또는 생성, 키는 비밀로 유지해야 함
3. IV 설정CBC 모드는 초기화 벡터(IV) 필요, 각 암호화마다 다른 무작위 IV 사용
4. 데이터 암호화평문 입력, '암호화' 버튼 클릭하여 암호문 획득
5. 데이터 복호화동일한 키, IV 및 모드 사용, 암호문 입력, '복호화' 버튼 클릭하여 평문 복구
개인정보 보호: 모든 계산은 브라우저에서 로컬로 수행되며, 데이터는 서버에 업로드되지 않으며, 완전히 오프라인 처리됩니다.

알고리즘 특징

SM4는 Feistel 구조를 기반으로 하며 다음과 같은 기술적 특징을 가지고 있습니다:

국가 표준중국 상용 암호 표준(GM/T 0002-2012), 암호법 요구사항 준수
128비트 키고정 128비트 키, AES-128과 비교할 수 있는 보안성
128비트 블록128비트 블록 길이, AES와 동일
32 라운드32라운드의 비선형 반복 사용, 높은 보안성
지역화 설계중국 응용 시나리오에 최적화, 국가 암호 알고리즘 시스템과 완벽하게 통합
준수 요구사항: 중화인민공화국 암호법 및 관련 산업 규정에 따르면, 금융, 정부, 통신 등 중요 부문의 암호화 응용은 국가 암호 알고리즘을 사용해야 합니다. 귀사의 응용이 이러한 부문에 관련된 경우, SM4를 AES보다 우선적으로 사용해야 합니다.

암호화 모드 선택

SM4는 여러 암호화 모드를 지원하며, 각 모드는 서로 다른 보안 및 성능 특성을 가지고 있습니다:

CBC (권장)암호 블록 연쇄 모드, 높은 보안성, IV 필요, 대부분의 시나리오에 적합
ECB (권장하지 않음)전자 코드북 모드, IV 불필요, 하지만 보안성 낮음, 동일한 평문은 동일한 암호문 생성
보안 경고: ECB 모드는 보안 취약점이 있으며, 동일한 평문 블록은 동일한 암호문 블록을 생성하여 공격자가 패턴을 쉽게 식별할 수 있습니다. 프로덕션 환경에서는 CBC 모드를 사용해야 하며, 각 암호화마다 다른 무작위 IV를 사용해야 합니다.

응용 시나리오

SM4는 중국의 중요 정보 기반시설 및 상용 암호 부문에서 광범위하게 사용됩니다:

금융 산업은행, 증권, 보험 기관의 데이터 암호화 및 거래 보호
정부 시스템전자정부, 전자 라이선스, 정부 데이터 교환을 위한 데이터 암호화
통신모바일 통신 및 IoT 기기의 데이터 암호화 및 전송 보호
국가 암호 SSL국가 암호 SSL 인증서(SM2-SM3-SM4 제품군)는 대칭 암호화를 위해 SM4 사용
파일 암호화정부 및 기업 내 민감한 파일의 암호화된 저장
데이터베이스 암호화데이터베이스 필드 및 백업 파일 암호화

FAQ

Q: SM4와 AES의 차이점은 무엇입니까?

A: 표준 출처: SM4는 중국 국가암호관리국에서 발표한 상용 암호 표준(2012년), AES 는 미국 NIST에서 발표한 연방 표준(2001년)입니다. 키 길이: SM4는 128비트 키만 지원하고, AES는 128/192/256비트를 지원합니다. 알고리즘 구조: SM4는 Feistel 구조(32 라운드)를 기반으로 하고, AES는 SPN 구조(10/12/14 라운드)를 기반으로 합니다. 보안성: SM4는 AES-128과 비교할 수 있는 보안성을 가지며, 둘 다 2^128 복잡도를 가집니다. 성능: AES는 하드웨어 가속이 있는 플랫폼에서 더 나은 성능을 보이고, SM4는 소프트웨어 구현에서 비교할 수 있는 성능을 가집니다. 준수: 중국의 중요 부문에서 SM4는 암호법 요구사항을 준수하지만, AES는 그렇지 않습니다. 권장사항: 중국 내 중요 부문에서는 SM4를 사용하고, 국제 응용에서는 AES를 사용하세요.

Q: SM4의 필수 사용이 필요한 시나리오는 무엇입니까?

A: 중화인민공화국 암호법(2020년 1월 1일 발효) 및 관련 산업 규정에 따르면: 필수 사용: 국가 안보, 국민 경제 및 생활, 사회 공공 이익과 관련된 상용 암호 제품은 국가암호관리국의 인증을 받아야 하며 국가 암호 알고리즘(SM4 포함)을 사용해야 합니다. 권장 사용: 금융(은행, 증권, 보험), 정부(전자정부, 전자 라이선스), 통신(모바일 통신, IoT), 에너지(전력, 석유), 운송(철도, 민간항공) 등 중요 부문. 선택적 사용: 일반 상용 응용 및 개인 응용은 독립적으로 선택할 수 있지만, 국가 암호 알고리즘을 사용하면 보안 및 준수를 개선하는 데 도움이 됩니다. 참고: 구체적인 요구사항은 최신 법률, 규정 및 산업 표준을 따릅니다.

Q: SM4가 128비트 키 길이만 가지는 이유는 무엇입니까?

A: SM4의 128비트 키 선택은 보안과 성능 고려사항의 균형을 기반으로 합니다. 충분한 보안성: 128비트 키의 파괴 복잡도는 2^128(약 3.4×10^38)이며, 전 세계의 모든 컴퓨터를 사용해도 수십억 년이 걸립니다. 성능 이점: 128비트 키는 256비트 키보다 더 나은 성능을 보이며, 더 빠른 암호화 속도를 가집니다. 국제 표준: AES-128도 널리 사용되는 표준이며, 128비트 키가 충분히 안전함을 증명합니다. 향후 확장: 향후 더 높은 보안이 필요한 경우, SM4의 변형 또는 업그레이드된 버전을 사용할 수 있습니다. 실제 응용: 대부분의 응용 시나리오에서 SM4의 128비트 키는 이미 충분한 보안성을 제공합니다.

Q: 국제 응용에서 SM4를 어떻게 사용합니까?

A: 호환성 고려사항: SM4는 주로 중국에서 사용되며 국제 지원이 제한적입니다. 응용이 국제화되어야 하는 경우, SM4와 AES를 모두 지원하는 것이 권장됩니다. 이중 알고리즘 접근: 1) 협상 메커니즘: 클라이언트와 서버가 사용할 알고리즘을 협상합니다(중국 내에서는 SM4, 해외에서는 AES). 2) 이중 암호화: SM4와 AES 암호화를 동시에 사용하여 국내 및 국제 복호화를 보장합니다. 3) 알고리즘 식별: 데이터에 사용된 알고리즘을 식별하고, 복호화 중에 식별자를 기반으로 알고리즘을 선택합니다. 라이브러리 지원: OpenSSL 1.1.1+는 SM4를 지원하며, GmSSL은 전문 국가 암호 알고리즘 라이브러리입니다.

Q: SM4, SM2, SM3 간의 관계는 무엇입니까?

A: SM4, SM2, 그리고 SM3 는 국가 암호 알고리즘 시스템의 세 가지 핵심 구성 요소이며, 종종 함께 사용됩니다. SM4: 대칭 암호화 알고리즘, 데이터 암호화에 사용, 빠른 속도, 대량의 데이터에 적합. SM2: 비대칭 암호화 및 디지털 서명 알고리즘, 키 교환 및 서명에 사용, 높은 보안성이지만 느린 속도. SM3: 해시 알고리즘, 데이터 무결성 검증 및 메시지 다이제스트에 사용. 결합 사용: 일반적인 워크플로우는 SM2를 사용하여 SM4 키를 교환하고, SM4를 사용하여 데이터를 암호화하고, SM3를 사용하여 무결성을 검증하고, SM2를 사용하여 서명합니다. 국가 암호 제품군: SM2-SM3-SM4는 완전한 국가 암호 알고리즘 제품군이며, RSA-SHA256-AES 제품군과 유사합니다. 응용: 국가 암호 SSL 인증서는 SM2-SM3-SM4 제품군을 사용하여 기존 RSA-SHA256-AES 제품군을 대체합니다.

Q: SM4 구현의 정확성을 어떻게 검증합니까?

A: 표준 테스트 벡터: GM/T 0002-2012 표준은 공식 테스트 벡터를 제공합니다. 예를 들어, 특정 키와 평문을 사용하면 SM4는 특정 암호문을 생성해야 합니다. 비교 도구: 여러 독립적인 구현(예: OpenSSL, GmSSL, 이 도구)을 사용하여 동일한 데이터를 암호화하고 결과의 일관성을 비교합니다. 복호화 검증: 암호화 직후 복호화하여 원본 데이터를 복구할 수 있는지 확인합니다. 인증된 제품: 상용 암호 제품에 사용되는 경우, 국가암호관리국에서 인증한 암호화 모듈을 사용합니다. 오픈 소스 구현: GmSSL (GitHub)는 국가 암호 알고리즘의 권위 있는 오픈 소스 구현이며 참고로 사용할 수 있습니다.

Use Cases

권장: 금융 산업 데이터 암호화

은행, 증권, 보험 등 금융 기관의 데이터 암호화는 국가 암호 알고리즘을 사용해야 합니다. 일반적인 응용에는 거래 데이터 암호화, 고객 정보 보호, 데이터베이스 필드 암호화가 포함됩니다. SM4-CBC 모드가 권장되며, SM3 와 함께 무결성 검증을 수행하고, SM2를 사용하여 키 교환 및 디지털 서명을 수행합니다. 이는 중국인민은행 및 중국 은행보험감독관리위원회 등 규제 기관의 요구사항을 준수합니다.

Recommended Configuration:
  • ✅ SM4-CBC (국가 표준, 금융 권장)
  • ✅ SM2 (키 교환 및 서명)
  • ✅ SM3 (무결성 검증)
  • ✅ 국가 암호에서 인증한 암호화 모듈 사용
  • 💡 호환성 개선을 위해 이중 알고리즘 접근(SM4 + AES) 고려
권장: 정부 시스템 데이터 암호화

전자정부 및 정부 데이터 교환 플랫폼은 데이터 기밀성을 보호하기 위해 국가 암호 알고리즘을 사용해야 합니다. SM4-CBC를 사용하여 민감한 데이터를 암호화하고, 저장 및 전송 중 데이터 보안을 보장합니다. SM2 서명 및 SM3 해싱과 결합하여 완전한 보안 시스템을 구축합니다.

Recommended Configuration:
  • ✅ SM4-CBC (데이터 암호화)
  • ✅ SM2 (디지털 서명)
  • ✅ SM3 (무결성 검증)
  • 💡 '정부 정보 시스템의 암호화 응용 기술 요구사항' 준수
권장: 국가 암호 SSL/TLS 통신

국가 암호 SSL/TLS는 SM2-SM3-SM4 제품군을 사용하여 기존 RSA-SHA256-AES 제품군을 대체합니다. SM4는 세션 키 암호화에 사용되어 전송된 데이터의 기밀성을 보호합니다. 정부 웹사이트, 금융 기관, 중요 정보 기반시설 및 암호법 요구사항을 준수해야 하는 기타 시나리오에 적용됩니다.

Recommended Configuration:
  • ✅ SM2-SM3-SM4 (국가 암호 SSL 표준 제품군)
  • ✅ 이중 인증서 접근(국가 암호 + RSA, 국내 및 국제 호환)
  • ✅ 국가 암호를 지원하는 브라우저 및 서버 사용
  • 💡 'SSL VPN 기술 사양' 참고(GM/T 0024-2014)
권장: 파일 및 데이터베이스 암호화

정부 및 기업 내 민감한 파일 및 데이터베이스 필드의 암호화는 SM4를 사용해야 합니다. SM4-CBC 모드를 사용하여 파일 또는 데이터베이스 필드를 암호화하고, 키 관리 서비스(KMS)를 통해 키를 관리합니다. 각 암호화마다 다른 무작위 IV를 사용하며, IV는 파일 헤더 또는 데이터베이스에 저장할 수 있습니다. 기밀 파일의 경우, SM2 디지털 서명을 결합하여 신뢰할 수 있는 파일 출처를 보장해야 합니다.

Recommended Configuration:
  • ✅ SM4-CBC (권장)
  • ✅ 국가 암호 KMS를 사용하여 키 관리
  • ✅ 각 암호화마다 다른 IV 사용
  • ✅ SM2 서명과 결합(최고 보안)
  • 💡 정기적으로 키 회전
권장: IoT 기기 통신 암호화

통신 사업자, 스마트 홈, 산업용 IoT 등의 시나리오는 국가 암호 알고리즘을 사용해야 합니다. SM4는 리소스가 제한된 IoT 기기에 적합하며, AES-256보다 더 나은 성능을 가지고 AES-128과 비교할 수 있는 보안성을 가집니다. SM4-CBC를 사용하여 기기 통신 데이터를 암호화하고, SM2를 사용하여 기기 인증을 수행하며, SM3 를 사용하여 펌웨어 무결성을 검증합니다.

Recommended Configuration:
  • ✅ SM4-CBC (경량 암호화)
  • ✅ SM2 (기기 인증)
  • ✅ SM3 (펌웨어 무결성)
  • 💡 'IoT의 암호화 응용 기술 요구사항' 참고
권장: 클라우드 저장소 파일 암호화

클라우드 저장소에 업로드되는 민감한 파일은 업로드 전에 클라이언트 측에서 SM4로 암호화되어야 하며, 클라우드 서비스 제공자가 평문에 접근할 수 없도록 합니다. SM4-CBC를 사용하여 파일을 암호화하고, 키는 클라이언트에서 관리합니다(클라우드에 업로드되지 않음). 국제화가 필요한 응용의 경우, SM4 및 AES 를 동시에 지원할 수 있으며, 사용자 지역에 따라 알고리즘을 선택합니다.

Recommended Configuration:
  • ✅ SM4-CBC (국가 표준)
  • ✅ 클라이언트 측 암호화, 키 업로드 안 함
  • ✅ 이중 알고리즘 접근 고려(SM4 + AES)
  • 💡 키 백업; 키를 잃으면 데이터를 복구할 수 없음

모범 사례 권장사항

  • 중국 내 금융, 정부, 통신 등 중요 부문에서는 암호법 요구사항을 준수하기 위해 SM4를 우선적으로 사용해야 합니다.
  • 응용이 국제화되어야 하는 경우, SM4와 AES를 모두 지원하는 것이 권장되며, 지역 또는 사용자에 따라 알고리즘을 선택합니다.
  • 프로덕션 환경에서는 CBC 모드를 사용하고, ECB 모드를 피하며, 각 암호화마다 다른 무작위 IV를 사용해야 합니다.
  • 국가 암호 알고리즘을 사용할 때는 준수 및 보안을 보장하기 위해 국가암호관리국에서 인증한 암호화 모듈을 선택해야 합니다.
  • SM4는 일반적으로 SM2(키 교환, 서명) 및 SM3(무결성 검증)과 함께 사용되어 완전한 국가 암호 보안 시스템을 구축합니다.
  • 키 관리가 중요합니다. 국가 암호 KMS를 사용하여 키를 관리하고, 정기적으로 키를 회전하며, 접근 권한을 제한합니다.

토론 및 피드백

0개의 댓글