暗号化と電子署名アプリの解説
Windows Crypto API による暗号化と電子署名の方法Windowsの新しい暗号化API(Cryptography Next Genaration(CNG) API)の解説をしています。こちらです。
(Java暗号化拡張機能(JCE)による暗号化は、こちらです)
このページでは、WindowsにバンドルされたCryptoAPIを使って暗号化・復号する方法や電子証明と検証の方法を解説します。
このページでは、WindowsにバンドルされたCrypto APIを使って、データを暗号化・復号する方法や電子署名の方法を解説します。
解説では、暗号化の手法にとどまらず、電子証明書やそれを使った電子署名の方法さらにはデータ形式も解説します。電子署名を利用しますと、データの改ざん(「改竄」と書いて「かいざん」と読みます)を検知できるようになります。変更されたくないデータを記録しておくためには有効な手段のひとつです。
CryptoAPI は、PKI(公開鍵暗号基盤)で利用するための関数郡ですが、簡単な暗号化やハッシュ値の計算などに利用することができます。解説では、関数の使い方を中心に行いますが、PKIがわからなければ関数の使い方を理解できないものもあります。そのため、必要に応じてPKIの解説も行っています。
なお、本ページで対象にする環境は、こちらです。
C#対応について:
本解説では、.NET Framework(マネージコード)による暗号化や電子署名の手法を解説していませんでした。
.NET Frameworkでは、より簡単に利用できるようになっています。それらは、名前空間「System.Security」に用意されています。これらの解説は、C# XML文書への署名をご参照ください。
ご質問:
メールで support@TrustSS.co.jp 宛てにお願いします。
または、質問のページからお送りいただくようお願いします。なお、ご質問・ご要望は、匿名でも送信できます。
解説では、暗号化の手法にとどまらず、電子証明書やそれを使った電子署名の方法さらにはデータ形式も解説します。電子署名を利用しますと、データの改ざん(「改竄」と書いて「かいざん」と読みます)を検知できるようになります。変更されたくないデータを記録しておくためには有効な手段のひとつです。
CryptoAPI は、PKI(公開鍵暗号基盤)で利用するための関数郡ですが、簡単な暗号化やハッシュ値の計算などに利用することができます。解説では、関数の使い方を中心に行いますが、PKIがわからなければ関数の使い方を理解できないものもあります。そのため、必要に応じてPKIの解説も行っています。
なお、本ページで対象にする環境は、こちらです。
C#対応について:
本解説では、.NET Framework(マネージコード)による暗号化や電子署名の手法を解説していませんでした。
.NET Frameworkでは、より簡単に利用できるようになっています。それらは、名前空間「System.Security」に用意されています。これらの解説は、C# XML文書への署名をご参照ください。
ご質問:
メールで support@TrustSS.co.jp 宛てにお願いします。
または、質問のページからお送りいただくようお願いします。なお、ご質問・ご要望は、匿名でも送信できます。
目次 − Index −
- 簡単な暗号化
- 電子証明書による暗号化
- 電子署名の実装
- 電子証明書、暗号化データ、署名データのデータ形式
- 電子証明書、暗号化データ、署名データと CryptoAPI
- 電子署名の概要
- 補足.
- CSPについて
- データの大きさがわからないとき
- バイナリーデータを簡単に表示させる方法
- Windows98などで電子証明書選択ダイアログを使う。
- C#による簡単な暗号化
(共通鍵による暗号化を説明します)
簡単なアプリケーションをソースコードと共に公開しました。
暗号化したデータを掲載しましたので、他のコンピュータで暗号化したデータの復号試験をしてください。
CSP(Cryptography Service Provider)の説明を追加
鍵の生成について を追加
簡単なアプリケーションをソースコードと共に公開しました。
暗号化したデータを掲載しましたので、他のコンピュータで暗号化したデータの復号試験をしてください。
CSP(Cryptography Service Provider)の説明を追加
鍵の生成について を追加
(公開鍵による暗号化を説明します)
(電子署名の実装方法を説明します)
(データ形式の規定を説明します)
(それぞれのデータをCryptoAPIで扱う方法)
Crypto API を使う上での共通の認識などを説明します。
(無償で利用できるDLLを公開しています。)
C#(.NET Framework)で簡単な暗号化の手順を説明します。
(記載の会社名および製品名は、各社の登録商標および商標です。)