SM2 (国密) 암호화 & 복호화
무료 온라인 SM2 (国密) 암호화 & 복호화 도구. 100% 로컬 처리 — 데이터가 기기를 벗어나지 않습니다.
결과가 여기에 표시됩니다...
입력 → 암호화
Usage Guide
SM2 소개
SM2는 중국의 국가 타원 곡선 암호화(ECC) 표준으로, GM/T 0003-2012에 정의되어 있으며 2010년 국가암호관리국(SCA/OSCCA)에 의해 발표되었습니다. 사용자 지정 SM2 곡선 매개변수를 가진 256비트 타원 곡선을 기반으로 하며, RSA-3072에 상응하는 보안성을 제공하면서 더 짧은 키와 빠른 계산 속도를 자랑합니다. SM2는 비대칭 암호화, 디지털 서명, 키 교환의 세 가지 기능을 정의합니다. 이 도구는 암호화 기능을 다룹니다 — 공개 키로 암호화하고, 개인 키로 복호화합니다.
사용 단계
SM2 암호화 및 복호화는 다음 단계를 따릅니다:
암호화 모드: C1C3C2 vs C1C2C3
SM2 암호문은 특정 순서로 배열된 세 가지 구성 요소로 이루어집니다:
키 형식
SM2는 RSA처럼 PEM 인증서가 아닌 원시 16진수 문자열을 키로 사용합니다:
FAQ
Q: SM2와 RSA의 차이점은 무엇인가요?
A: SM2와 RSA 는 모두 비대칭 알고리즘입니다. 주요 차이점: 수학적 기반: RSA는 정수 인수분해를 사용; SM2는 타원 곡선 이산 대수를 사용. 키 크기: SM2 256비트 ≈ RSA-3072. 성능: SM2는 동등한 보안 수준에서 더 빠름. 규정 준수: SM2는 중국 규정에 의해 의무화; RSA는 국제 표준.
Q: RSA나 ECC 대신 SM2를 사용해야 하는 경우는 언제인가요?
A: 중국의 암호화법(2020)은 국가 안보, 중요 인프라, 공공 금융 서비스에 SM 알고리즘을 요구합니다. 구체적인 시나리오: 정부 시스템, 금융 기관(PBOC 의무), 전자 청구서 및 라이선스. 국제 전용 시스템에는 표준 RSA 또는 ECDSA(P-256)를 사용하세요.
Q: 올바른 개인 키를 사용하고 있는데도 복호화가 실패하는 이유는 무엇인가요?
A: 가장 일반적인 원인은 암호화 모드 불일치입니다: C1C3C2로 암호화했지만 C1C2C3으로 복호화하는 경우(또는 그 반대). 다른 원인들: 잘린 암호문(최소 97바이트), 잘못된 키, 인코딩 문제(일부 시스템은 C1에 선두 "04" 바이트 접두사를 추가함).
Q: SM2는 안전한가요? 표준 ECC(P-256)와 비교하면 어떤가요?
A: SM2의 256비트 키는 ~RSA-3072에 상응하는 보안을 제공하며, 현재 권장 수준을 훨씬 상회합니다. NIST P-256과 비교: 둘 다 유사한 128비트 보안 수준을 제공합니다. SM2에 대한 실용적인 공격은 알려져 있지 않습니다. SM2는 중국 외부에서는 광범위하게 지원되지 않으며 — 국제 사용에는 표준 ECC(P-256)가 더 나은 선택입니다.
Use Cases
권장: 정부 시스템 인증
권장: 금융 기관 거래 암호화
중국인민은행(PBOC)은 중국 은행 핵심 시스템 및 결제 플랫폼에 SM2/SM3/SM4를 의무화하고 있습니다. 중국에서 운영되는 외국 은행도 중국 금융 규정의 적용을 받는 거래를 처리할 때 준수해야 합니다.
- ✅ SM2 (중국 금융 시스템에 PBOC 요구)
- ✅ C1C3C2 모드 사용 (현행 표준)
- 💡 은행 파트너와 암호화 모드 및 키 인코딩 형식 조율
- ❌ RSA는 PBOC 규제 시스템에서 단독 알고리즘으로 허용되지 않습니다
권장: 전자 청구서 및 공식 라이선스
중국의 전자 청구서 시스템, 전자 영업 허가증, 디지털 인증서는 모두 SM2를 사용합니다. 국가세무총국의 청구서 시스템과 통합하는 경우 암호화 구현에 SM2를 사용해야 합니다.
- ✅ 문서 서명 및 암호화에 SM2
- ✅ 서명된 콘텐츠의 다이제스트 계산에 SM3
- 💡 CFCA 인증 CA에서 발급한 SM2 인증서 사용
- ❌ 표준 TLS 인증서(RSA/ECDSA)는 규제된 문서 서명에 부적합합니다
권장: 중요 인프라 보안 통신
중국에서 중요 정보 인프라(CII)로 분류된 전력망, 수도 시스템, 교통 네트워크, 통신 사업자는 국가 암호화 표준을 사용해야 합니다.
- ✅ 장치 및 운영자 인증에 SM2
- ✅ 대용량 데이터 암호화에 SM4 (큰 페이로드에 SM2보다 효율적)
- 💡 인증서 갱신 및 키 수명 주기 관리 구현
- 💡 특정 부문 요구 사항에 대한 OSCCA 가이드라인 참조
비권장: 국제 또는 크로스보더 프로젝트
시스템이 국제적으로 운영되는 경우 SM2는 적합한 선택이 아닙니다. 대부분의 국제 라이브러리, 브라우저, 클라우드 제공업체, HSM은 SM2를 기본적으로 지원하지 않습니다. 국제 프로젝트에는 RSA-2048/4096 또는 표준 ECC(P-256/P-384)를 사용하세요.
- ✅ RSA-2048 또는 RSA-4096 (국제 표준)
- ✅ ECC P-256 / P-384 (현대적인 국제 표준)
- ❌ SM2는 중국 생태계 외부에서 지원이 매우 제한적입니다
- 💡 이중 지역 시스템의 경우 중국에는 SM2, 국제 구성 요소에는 RSA/ECC 사용
모범 사례 권장 사항
- 중국 규제 준수(암호화법, PBOC, 정부 표준)가 필요한 경우에만 SM2를 사용하세요.
- 새 구현에는 항상 C1C3C2 모드를 사용하세요. C1C2C3는 레거시 시스템과의 하위 호환성을 위해서만 존재합니다.
- 개인 키를 비밀번호와 동일한 주의로 취급하세요: 암호화하여 저장하고, 절대 로그에 남기지 말고, 주기적으로 키를 교체하세요.
- 완전히 규정을 준수하는 국가 암호화 스위트를 구성하기 위해 SM2를 SM3(해시) 및 SM4(대칭)와 결합하세요.
- 키를 교환하기 전에 통합 파트너와 키 인코딩 형식(hex vs. PEM/DER, '04' 접두사 유무)을 확인하세요.