トップQs
タイムライン
チャット
視点

暗号ライブラリの比較

ウィキメディアの一覧記事 ウィキペディアから

Remove ads

暗号ライブラリの比較(あんごうライブラリのひかく)では、暗号化アルゴリズムを扱い、サポートする各機能を呼び出すAPIを持つ暗号ライブラリを比較する。

暗号ライブラリ

さらに見る 実装, 開発元 ...
  1. 実際のcryptlibはFIPS 140検証されていないが、第三者の独自の商用製品の一部として使われたcryptlibが検証されている。
  2. Crypto ++は2003年から2008年の3回のFIPS 140検証を受けた。2016年にNISTはCrypto ++をHistorical Validation Listに移行。このによりFIPS検証が取り消され、連邦政府機関は検証された暗号としてはこのモジュールを使用することができなくなっている。
Remove ads

鍵処理

要約
視点

鍵処理には鍵生成アルゴリズム、鍵交換合意、公開鍵暗号標準が含まれる。

鍵生成と鍵交換

さらに見る 実装, ECDH ...
  1. 下位レベルのインターフェイス使用による。

楕円曲線暗号サポート

さらに見る 実装, NIST ...

公開鍵暗号標準

さらに見る 実装, PKCS#1 ...
  1. ライブラリは、デフォルトでPEMなしでX.509およびPKCS#8エンコーディングを提供。公開鍵と秘密鍵のPEMエンコーディングでは、PEM Packが必要。
  2. Public Key Cryptographic Standards(PKCS)は、実際のlibgcryptライブラリではないが、GnuPGフレームワークの一部でもある付随するライブラリとツールでサポートされている。
Remove ads

ハッシュ関数

サポートされている暗号化ハッシュ関数を比較する。メッセージのMACタグを生成するために使用される暗号を含む。ここではハッシュ関数は、任意の長さのメッセージから、元のメッセージの復号が実質不可能な固定サイズの出力を生成するものとして定義する。

さらに見る 実装, MD5 ...

MACアルゴリズム

メッセージ認証コード(MAC)アルゴリズムの実装を比較する。MACは、メッセージを認証するために使用される短い情報である。メッセージが指定された送信者から送信されたもので(真正性)、送信中に変更されていない(完全性)ことを確認するために用いられる。

さらに見る 実装, HMAC-MD5 ...
Remove ads

ブロック暗号

要約
視点

ブロック暗号の実装を比較する。ブロック暗号は、決定論的であり、対称鍵を用いて設定された数のビット(ブロックと呼ばれる)上で動作するものとして定義される。 各ブロック暗号は、実行可能な鍵サイズとブロック暗号モードに分割することができる。

ブロック暗号 アルゴリズム

さらに見る Implementation, AES ...
  1. Crypto ++は、1990年代からGOSTの64ビット版を提供。2015年からGOSTの128ビット版は提供していない。
  2. libsodiumはAES-256のみを提供。AES-128、AES-192は提供していない。

暗号モード

さらに見る 実装, ECB ...
Remove ads

ストリーム暗号

ストリーム暗号の実装を比較する。ストリーム暗号は、擬似乱数暗号の文字列と結合した平文文字列を使用する。ストリーム暗号は通常、ブロック暗号より高速でハードウェアの複雑さは減るが、攻撃の影響を受けやすくなる。

さらに見る 実装, RC4 ...
Remove ads

ハードウェアによるサポート

要約
視点

ハードウェア暗号の使用可否を比較する。特定のハードウェアを利用できる場合、ライブラリは高速化、および/またはセキュリティを向上させることができる。

Smartcard, SIMHSM プロトコルサポート

さらに見る 実装, PKCS #11 ...
  1. PKCS#11プロバイダ、または基本操作へのアクセスを提供するオペレータインターフェイスの実装を使用。

汎用 CPU / プラットフォームアクセラレーションサポート

さらに見る 実装, AES-NI ...
  1. AltiVecには、POWER4からPOWER8までのSIMD処理が含まれる。POWER8は、SSEやARMv8.1に似たAESアクセラレータ、SHA、PMULを提供するメモリー内暗号化を追加。
  2. Crypto ++は、Padlock乱数ジェネレータへのアクセスを提供。 AESアクセラレータのような他の機能は提供されていない。
  3. OpenSSL RDRANDのサポートは、ENGINEインターフェースを介して提供される。 RDRANDジェネレータはデフォルトでは使用されていない。

マイクロコントローラ 暗号化アクセラレータサポート

さらに見る 実装, STM32F2 ...
Remove ads

コードサイズとコードコメント比率

さらに見る 実装, ソースコードサイズ (kSLOC = 1000行のソースコード) ...

移植性

さらに見る 実装, サポートOS ...
  1. Crypto ++はオブジェクトレベルでスレッドセーフである。インスタンス間で共有データはない。2つの異なるスレッドが同じオブジェクトにアクセスする場合、ロックはユーザーが行う必要がある。
Remove ads

参考文献

外部リンク

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads