「そうか!そうだったのか!」 男は突然つぶやいた。男はCAPI(CryptoAPI)を使ってWindows証明書ストアから選択した(秘密鍵が関連付いている)証明書にてRSA方式のデジタル署名を生成するプログラムをデバッグしていた。これまでは問題無く動作していたのだが、Adobe Acrobatから「IDを追加」-「今すぐデジタルIDを新規作成」-「Windows証明書ストア」を使って登録した秘密鍵(署名鍵)を使うとエラーになると言う問題で苦しんでいたのである。CAPIの実装は以下のようになっていた。 HCRYPTPROV hProv = NULL; HCRYPTPROV hKeyProv = NULL; HCERTSTORE hStore = NULL; DWORD dwKeySpec; BOOL fCallerFreeProv = FALSE; HCRYPTHASH hHash = NU
![Windows証明書ストアからCNG署名 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/068fa2e96ffc8202815d72467898bf203b355664/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9V2luZG93cyVFOCVBOCVCQyVFNiU5OCU4RSVFNiU5QiVCOCVFMyU4MiVCOSVFMyU4MyU4OCVFMyU4MiVBMiVFMyU4MSU4QiVFMyU4MiU4OUNORyVFNyVCRCVCMiVFNSU5MCU4RCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjYxYjdkYTgwMzAxMjMxNTU3N2EyZTg5MzdlYTdmYTY%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbGVtaXlhY2hpJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz04NTg1ODI3YTMxYWMyYTQzMGFmYzcyYWVlZDc5ZDRkZA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D94727feed2dff4fede16fd44d94c3581)