問題タブ [private-key]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 配布証明書と秘密鍵
これが私の状況です。私は2台のMacbook(それらを#1と#2と呼びましょう)を持っており、2010年に#1で開発を開始しました。
2011年6月、配布証明書の有効期限が切れたため、更新する必要がありました。私の#1 Macbookでは、証明書をキーチェーンに更新することができ、アプリを再度更新するときにすべてが正常でした。
さて、2011年8月に、#2の証明書も更新したいと思い、dev.appleページからダウンロードしてキーチェーンに追加できると思いました。しかし、私がそれをしたとき、証明書の下の秘密鍵がありませんでした!何故ですか?2010年の配布プロファイルの秘密鍵は、(期限切れの)証明書の下にまだ表示されていました。
それは私をとても夢中にさせたので、私はMacbook#1に戻って、そこにある両方のキーを#2にエクスポートしました。もちろんそれはうまくいきましたが、将来の解決策にはなり得ません!Macbookがクラッシュし、新しいMacbookを介してすべてを実行したい場合はどうなりますか?#1からのエクスポートを実行できなかったとしましょう。#2の証明書の下にあるフリークイン秘密鍵を取得するにはどうすればよいですか?
第二に、私は少し混乱しています:どのキーをバックアップする必要がありますか?秘密鍵だけだと思っていたのですが、新しいMacbook#2の配布証明書の「下」で取得できなかったので、少し怖かったです。
ところで:Appleとの証明書戦争は大きな冗談ですが、それは別のトピックです。
java - 秘密鍵で文字列に署名する方法
SHA1withRSA
またはとして秘密鍵を既に持っている場合、文字列の署名を取得するにはどうすればよいですbyte[]
かString
?
c++ - 一時的なクライアント証明書(秘密鍵を含む)の作成
私が作成しているアプリケーションの一部として、プログラムがローカルマシンに証明書を一時的にインストールし、WinHTTPがWebサーバーに接続するときにそれをクライアント証明書として使用することを望んでいます。これの目的は、不正アクセスからWebサーバーを保護することです(この証明書はセキュリティの層にすぎません。誰かが.exeから抽出できることを知っています)。ユーザーが証明書をインストールする必要がないようにし、アプリケーションが実行されていないときに証明書をPCに残したくない。
現在、私はこれを試しています:
.p12ファイルから証明書を手動でインストールします
C ++アプリケーションを使用して、バイナリデータをローカル証明書からアプリケーションのC配列に取得します(CryptExportKeyおよびPCCERT_CONTEXT :: pbCertEncodedを使用)
証明書をアンインストールします
アプリケーションの起動時:
証明書の一時ストアを開きます
CertAddEncodedCertificateToStoreを呼び出して、証明書を追加します
CryptAcquireContextを呼び出して、秘密鍵を格納する場所を取得します(現時点では、実行ごとに鍵の名前を変更します。理想的には、CRYPT_VERIFYCONTEXTを使用して鍵を非永続化する予定ですが、今のところ無視する必要があります)
CryptImportKeyを呼び出して、秘密鍵を鍵ストアにロードします
CertSetCertificateContextPropertyを呼び出して、証明書を秘密鍵にリンクします
秘密鍵にアクセスできることを確認します(動作し、アプリケーションにハードコーディングしたものとまったく同じデータを出力します)
クライアント証明書が期待どおりに機能することを確認してください
この段階で秘密鍵は検出されますが、CryptExportKeyの呼び出しはNTE_BAD_KEY_STATEで失敗します。WinHTTPでクライアント証明書を使用しようとすると、ERROR_WINHTTP_CLIENT_CERT_NO_ACCESS_PRIVATE_KEYが表示されます。誰かが疑問に思っている場合は、WinHTTPに次のコードでクライアント証明書を使用するように指示します。
私の見方では、秘密鍵と証明書を何らかの方法でリンクし、CryptAcquireCertificatePrivateKeyとCryptExportKeyを使用して鍵データを取り戻すことができるようになるまで、WinHTTPは成功する可能性がありません。
秘密鍵を使用するための証明書を取得できないように見える理由について何か考えはありますか?
.net - エクスポートできないキー コンテナーから snk をエクスポートする
sn -k KeyFile.snk
テスト マシンにインストールし、ライセンス ファイルとして使用するためにいくつかのファイルに署名して、snk ファイルを作成しました。
ライセンスを確認するために、公開鍵をエクスポートしてアプリケーションに埋め込みました。
問題は、私が紛失したことKeyfile.snk
であり、本番サーバーにキーペアをインストールしたいと考えています。古いキーペアを使用してライセンスを既に発行しており、アプリケーションが複数の顧客の PC に既にインストールされているため、新しいキーペアを生成できません。
テスト マシンのキー コンテナーからエクスポートしようとしましたが、エクスポート不可に設定されています。
mimikatz を使用してエクスポートを強制しました。動作しましたが、.pvk ファイルが返されました。
そして今、私は立ち往生しています。
どのように進めるべきかについて何か考えはありますか?
ありがとうございました。
java - Java: Windows-MY 証明書 (エクスポート不可) から PrivateKey を取得して SSL 認証に使用する
Windows-MY (MSCAPI) 証明書 (エクスポート不可としてマークされている) から PrivateKey を取得して、それを HTTPS 接続で使用してクライアントを認証するにはどうすればよいですか。
ありがとう
.net - PEMファイルから秘密鍵を取得するには?
次のようなSSLデータ転送用の公開鍵と秘密鍵を含む.PEMファイルがあります。
次のコードで .PEM ファイルをロードしたい場合:
「要求されたオブジェクトが見つかりません」という例外が発生します。、フルスタック:
秘密鍵セクションと公開鍵セクションの場所を交換すると、コードが機能してデータがロードされ、オブジェクトから公開鍵情報だけを取得できます。IssuerName であり、その HasPrivateKey は false です。なぜ?私は誤解していて、何か間違ったことをしていますか?
android - Androidの秘密鍵ストレージ
アプリの秘密鍵をAndroidデバイスの安全な場所に保存する必要があります。certStoreについて読みましたが、ファイルを保存できません。安全に保管でき、アプリを再インストールしても削除されない場所はありますか?
putty - SSH サーバーにログインするときに PuTTY が独自の秘密鍵形式を使用するのはなぜですか?
少し興味深いのですが、なぜ PuTTY は独自のバージョンの秘密鍵形式を使用して SSH を実行するのでしょうか?
python - Pythonで公開鍵によって文字列をエンコードするための最良の方法は何ですか
公開鍵で文字列をエンコードする方法はありますか?
pycryptoとm2cryptoの2つのパッケージが見つかりました。しかし、私はそれらの使い方を見つけることができません。
c++ - スマート カードのキー コンテナーから公開/秘密キーのペアを取得できますか?
PKCS #11 または CryptoAPI を使用して、スマート カード内のキー コンテナーから公開/秘密キーのペアを取得できますか?