SM4 (国密) 暗号化 & 復号
無料オンライン SM4 (国密) 暗号化 & 復号 ツール。100% ローカル処理 — データは端末の外に出ません。
結果がここに表示されます...
入力 → 暗号化
Usage Guide
SM4について
SM4は、中国国家暗号管理局が2012年に公開した対称暗号化アルゴリズムであり、中国商用暗号標準(GM/T 0002-2012)の重要なコンポーネントです。SM4は128ビットの鍵と128ビットのブロック長を使用し、AES-128と同等のセキュリティを持ち、中国の暗号アプリケーションシナリオ向けに特別に設計されています。SM4は中国の金融、政府、通信セクターで広く使用されており、国家暗号アルゴリズムシステムの主要コンポーネントの一つです。中華人民共和国暗号法によれば、国家安全保障と国民の生活に関わる重要な分野では国家暗号アルゴリズムを使用する必要があります。
使用手順
SM4は暗号化と復号化に同じ鍵を使用する対称暗号化アルゴリズムです:
アルゴリズムの特徴
SM4はFeistel構造に基づいており、以下の技術的特徴を持っています:
暗号化モードの選択
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 は国家暗号アルゴリズムシステムの3つの主要コンポーネントであり、しばしば一緒に使用されます。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を使用して鍵交換とデジタル署名を行います。これは中国人民銀行や中国銀行保険監督管理委員会などの規制機関の要件に準拠しています。
- ✅ SM4-CBC(国家標準、金融に推奨)
- ✅ SM2(鍵交換と署名)
- ✅ SM3(整合性検証)
- ✅ 国家暗号認定の暗号モジュールを使用
- 💡 互換性向上のためデュアルアルゴリズムアプローチ(SM4 + AES)を検討
推奨:政府システムのデータ暗号化
電子政府と政府データ交換プラットフォームは、データの機密性を保護するために国家暗号アルゴリズムを使用する必要があります。SM4-CBCを使用して機密データを暗号化し、保存と伝送中のデータセキュリティを確保します。SM2署名と SM3 ハッシュと組み合わせて、完全なセキュリティシステムを構築します。
- ✅ SM4-CBC(データ暗号化)
- ✅ SM2(デジタル署名)
- ✅ SM3(整合性検証)
- 💡 「政府情報システムにおける暗号アプリケーションの技術要件」に従う
推奨:国家暗号SSL/TLS通信
国家暗号SSL/TLSはSM2-SM3-SM4スイートを使用し、従来のRSA-SHA256-AESスイートを置き換えます。SM4はセッション鍵の暗号化に使用され、伝送データの機密性を保護します。暗号法の要件に準拠する必要がある政府ウェブサイト、金融機関、重要情報インフラ、その他のシナリオに適用できます。
- ✅ SM2-SM3-SM4(国家暗号SSL標準スイート)
- ✅ デュアル証明書アプローチ(国家暗号 + RSA、国内外で互換性あり)
- ✅ 国家暗号をサポートするブラウザとサーバーを使用
- 💡 「SSL VPN技術仕様」(GM/T 0024-2014)を参照
推奨:ファイルとデータベースの暗号化
政府や企業内の機密ファイルとデータベースフィールドの暗号化にはSM4を使用する必要があります。SM4-CBCモードを使用してファイルまたはデータベースフィールドを暗号化し、鍵管理サービス(KMS)を通じて鍵を管理します。暗号化ごとに異なるランダムIVを使用し、IVはファイルヘッダーまたはデータベースに保存できます。機密ファイルには、信頼できるファイルソースを確保するためにSM2デジタル署名を組み合わせる必要があります。
- ✅ SM4-CBC(推奨)
- ✅ 国家暗号KMSを使用して鍵を管理
- ✅ 暗号化ごとに異なるIVを使用
- ✅ SM2署名と組み合わせる(最高のセキュリティ)
- 💡 定期的に鍵をローテーション
推奨:IoTデバイス通信の暗号化
通信事業者、スマートホーム、産業用IoTなどのシナリオでは国家暗号アルゴリズムを使用する必要があります。SM4はリソース制約のあるIoTデバイスに適しており、AES-256よりも優れたパフォーマンスとAES-128と同等のセキュリティを持ちます。SM4-CBCを使用してデバイス通信データを暗号化し、SM2をデバイス認証に組み合わせ、 SM3 でファームウェアの整合性を検証します。
- ✅ SM4-CBC(軽量暗号化)
- ✅ SM2(デバイス認証)
- ✅ SM3(ファームウェアの整合性)
- 💡 「IoTにおける暗号アプリケーションの技術要件」を参照
推奨:クラウドストレージのファイル暗号化
クラウドストレージにアップロードされる機密ファイルは、クラウドサービスプロバイダーが平文にアクセスできないようにするために、アップロード前にクライアント側でSM4を使用して暗号化する必要があります。SM4-CBCを使用してファイルを暗号化し、鍵はクライアントが管理します(クラウドにアップロードしない)。国際化が必要なアプリケーションでは、SM4と AES の両方を同時にサポートし、ユーザーの地域に基づいてアルゴリズムを選択できます。
- ✅ SM4-CBC(国家標準)
- ✅ クライアント側暗号化、鍵はアップロードしない
- ✅ デュアルアルゴリズムアプローチ(SM4 + AES)を検討
- 💡 鍵をバックアップする;鍵を失うとデータを復元できない
ベストプラクティスの推奨事項
- 中国の金融、政府、通信などの重要セクターでは、暗号法の要件に準拠するためにSM4を優先すべきです。
- アプリケーションを国際化する必要がある場合は、SM4とAESの両方をサポートし、地域またはユーザーに基づいてアルゴリズムを選択することをお勧めします。
- 本番環境ではCBCモードを使用し、ECBモードを避け、暗号化ごとに異なるランダムIVを使用してください。
- 国家暗号アルゴリズムを使用する場合は、コンプライアンスとセキュリティを確保するために国家暗号管理局が認定した暗号モジュールを選択する必要があります。
- SM4は通常、完全な国家暗号セキュリティシステムを構築するためにSM2(鍵交換、署名)とSM3(整合性検証)と一緒に使用されます。
- 鍵管理は重要です;国家暗号KMSを使用して鍵を管理し、定期的に鍵をローテーションし、アクセス権限を制限してください。