Cryptographic API(CryptoAPI、CAPI)は、Microsoft Windows オペレーティングシステムのAPIの1つであり、Windows での暗号を使ったセキュアなアプリケーション開発のためのサービスを提供する。一種の抽象化レイヤーを提供する一連のダイナミックリンクライブラリで構成され、データの暗号化を行うコードをアプリケーションから分離する。
CryptoAPI は公開鍵暗号と共通鍵暗号をサポートしている。データの暗号化/復号機能、公開鍵証明書を使った認証機能を含む。また、暗号論的擬似乱数生成器関数 CryptGenRandom
も含まれる。CryptoAPI はマシン上にインストールされた CSP (Cryptographic Service Provider)を使って動作する。CSP は実際のデータの暗号化/復号を行うモジュールである。
Windows Vista では、CryptoAPI が Cryptography API: Next Generation (CNG) に更新された。使える暗号化アルゴリズムが増え、アメリカ国家安全保障局 (NSA) Suite B の一部の新しいアルゴリズムを含んでいる。また、プラグイン形式で独自暗号APIを追加できる柔軟性を備えている。CNG はカーネルモードでもユーザーモードでも動作し、従来の CryptoAPI での全アルゴリズムをサポートしている。CNG を実装したマイクロソフト製プロバイダは Bcrypt.dll にある。
CNG はRSAよりも短い鍵でセキュアな楕円曲線暗号もサポートしている ⇒[1]。CNG API は、Base Smart Card Cryptographic Service Provider (Base CSP) モジュールを使うことでICカード用のAPIも提供する。
関連項目
公開鍵暗号
外部リンク
⇒Cryptography Reference on MSDN
.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox{font-size:90%}.mw-parser-output .asbox-note{font-size:90%}.mw-parser-output .asbox .navbar{position:absolute;top:-0.90em;right:1em;display:none}
この項目は、ソフトウェアに関連した書きかけの項目です。この項目を加筆・訂正などしてくださる協力者を求めています(PJ:コンピュータ/P:コンピュータ)。
.mw-parser-output .hlist ul,.mw-parser-output .hlist ol{padding-left:0}.mw-parser-output .hlist li,.mw-parser-output .hlist dd,.mw-parser-output .hlist dt{margin-right:0;display:inline-block;white-space:nowrap}.mw-parser-output .hlist dt:after,.mw-parser-output .hlist dd:after,.mw-parser-output .hlist li:after{white-space:normal}.mw-parser-output .hlist li:after,.mw-parser-output .hlist dd:after{content:" ・\a0 ";font-weight:bold}.mw-parser-output .hlist dt:after{content:": "}.mw-parser-output .hlist-pipe dd:after,.mw-parser-output .hlist-pipe li:after{content:" |\a0 ";font-weight:normal}.mw-parser-output .hlist-hyphen dd:after,.mw-parser-output .hlist-hyphen li:after{content:" -\a0 ";font-weight:normal}.mw-parser-output .hlist-comma dd:after,.mw-parser-output .hlist-comma li:after{content:"、";font-weight:normal}.mw-parser-output .hlist-slash dd:after,.mw-parser-output .hlist-slash li:after{content:" /\a0 ";font-weight:normal}.mw-parser-output .hlist dd:last-child:after,.mw-parser-output .hlist dt:last-child:after,.mw-parser-output .hlist li:last-child:after{content:none}.mw-parser-output .hlist dd dd:first-child:before,.mw-parser-output .hlist dd dt:first-child:before,.mw-parser-output .hlist dd li:first-child:before,.mw-parser-output .hlist dt dd:first-child:before,.mw-parser-output .hlist dt dt:first-child:before,.mw-parser-output .hlist dt li:first-child:before,.mw-parser-output .hlist li dd:first-child:before,.mw-parser-output .hlist li dt:first-child:before,.mw-parser-output .hlist li li:first-child:before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child:after,.mw-parser-output .hlist dd dt:last-child:after,.mw-parser-output .hlist dd li:last-child:after,.mw-parser-output .hlist dt dd:last-child:after,.mw-parser-output .hlist dt dt:last-child:after,.mw-parser-output .hlist dt li:last-child:after,.mw-parser-output .hlist li dd:last-child:after,.mw-parser-output .hlist li dt:last-child:after,.mw-parser-output .hlist li li:last-child:after{content:")\a0 ";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li:before{content:" "counter(listitem)" ";white-space:nowrap}.mw-parser-output .hlist dd ol>li:first-child:before,.mw-parser-output .hlist dt ol>li:first-child:before,.mw-parser-output .hlist li ol>li:first-child:before{content:" ("counter(listitem)" "}.mw-parser-output .navbar{display:inline;font-size:75%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}.mw-parser-output .infobox .navbar{font-size:88%}.mw-parser-output .navbox .navbar{display:block;font-size:88%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}
表示
編集
表
話
編
歴
マイクロソフトのAPIとフレームワーク
グラフィック
Desktop Window Manager
Direct2D
Direct3D (拡張)
GDI / GDI+
WPF
Silverlight
WinUI
Windows Color System
Windows Image Acquisition
Windows Imaging Component
オーディオ
DirectMusic
DirectSound
DirectX plugin
XACT
Speech API
マルチメディア
DirectX (Media Objects
Video Acceleration)
DirectInput
DirectPlay
DirectShow
Image Mastering API
Managed DirectX
Media Foundation
XNA
Windows Media
Video for Windows
ウェブ
MSHTML
EdgeHTML
RSS Platform
JScript
VBScript
BHO
XDR
SideBar Gadgets
データアクセス
Data Access Components
Extensible Storage Engine
ADO.NET
ADO.NET Entity Framework
Sync Framework
Jet Engine
MSXML
OLE DB
OPC
ネットワーク
Winsock (LSP)
Winsock Kernel
Filtering Platform
Network Driver Interface Specification
Windows Rally
BITS
P2P API
MSMQ
MS MPI
コミュニケーション
Messaging API
Telephony API
WCF
管理
Win32 console
Windows Script Host
WMI
PowerShell
Task Scheduler
Offline Files
Shadow Copy
Windows Installer
Error Reporting
Event Log
Common Log File System
コンポーネントモデル
COM
COM+
ActiveX
Distributed Component Object Model
.NET Framework
ライブラリ
Base Class Library (BCL)
Microsoft Foundation Classes (MFC)
Active Template Library (ATL)
Windows Template Library (WTL)
デバイスドライバ
Windows Driver Model
Windows Driver Foundation