問題タブ [cryptoapi]

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.

0 投票する
1 に答える
2016 参照

c++ - wincrypt を使用したデータ ファイルの復号化。困っている。例は、CBase64Utils?

wincrypt を使用していくつかのデータ ファイルを復号化する必要がありますが、オンラインでの例はほとんどありません。私が見つけた最も堅実な例はhereです。ただし、これは、情報を見つけることができないと思われるあらゆる種類の型 (CBase64Utils、CString など) を使用しています。

私はプロセスを理解しようとしている最終的な解決策を読んでおり、これに到達しました:

これは私にとって純粋な中国語です。誰かがそれを理解して、うまくいけば濁った水をきれいにすることができますか? ありがとう

0 投票する
1 に答える
1658 参照

c++ - 無効なアルゴリズムが指定されました CryptoAPI

128BIT AES Decryption を使用して何かを解読しようとしています。CryptDecrypt を呼び出そうとすると、「無効なアルゴリズムが指定されました」というエラーが表示されます。ここに投稿されたライブラリを使用すると、同じ問題が発生します: http://www.codeproject.com/KB/security/WinAES.aspx

このエラーの原因は何ですか?

Visual Studio 2008 を使用して vista64bit で CryptoAPI を使用しています。レジストリをチェックインすると、AES ライブラリが存在します...

編集

InitWinCrypt 関数

AesOffering 構造体:

EDIT2

コンピューターを再起動し、CBC チャンクを削除した後。現在、Bad Data エラーが発生しています。データは C# で正常に復号化されます。しかし、wincrypt を使用してこれを行う必要があります。

0 投票する
2 に答える
2412 参照

windows - cryptoapiwindows7のサポート

Microsoftは、VistaおよびServer 2008以降から暗号化次世代(CNG)を導入しました。しかし、私の質問は、MicrosoftがWindows7およびServer2008で古いMSCAPI(たとえば、Windows2003およびWindowsXP)をサポートしているかどうかを知ることです。

ありがとう

ラージ

0 投票する
1 に答える
2486 参照

c - WinHttp: 一時的な証明書ストアを使用するには?

サーバーの 1 つに HTTPS 接続を行う C++ アプリケーションがあります。私の理想の世界では、次のことが起こることを望みます。

  1. アプリの起動
  2. アプリは、Windows がサーバーのルート CA を信頼するようにします (GUI は使用せず、システム コールのみを使用してください)。
  3. アプリはサーバーと通信し、その作業を行います。
  4. アプリは Windows にサーバーのルート CA を忘れさせます
  5. 終わり

このルート CA が他のアプリから信頼される必要はありません。したがって、証明書をシステム全体にインストールしたくありません。ユーザーが管理者権限を必要としない場合も希望します。

私の最初の計画は、インメモリ (CERT_STORE_PROV_MEMORY) ストアを作成し、そこに証明書を追加してから、CertAddStoreToCollection を使用してそのインメモリ ストアをシステム ストアに追加することでした。

すべての CryptoAPI 関数呼び出しは成功しますが、WinHttp はそれを好みません。

これが私がやっていることの骨子です - おそらく誰かがトリックを知っていますか? それとも、そもそもこれは頭がおかしいのでしょうか?

いくつかのメモ:

ありがとう!

0 投票する
1 に答える
783 参照

winapi - CryptEncrypt()API

この関数が戻ったときにバッファの最後でジャンクバイトを取得するのは正常ですか?

0 投票する
2 に答える
1166 参照

cryptography - Window CryptoAPI: RSA キー ペアを生成するときに公開指数を選択できますか?

Windows CryptoAPI を使用して、新しいキー ペアを生成するときに使用する公開指数 (つまり、65537 ではなく 3) を指定する方法はありますか?

おまけの質問: .NET を使用してこの機能にアクセスするにはどうすればよいRSACryptoServiceProviderですか?

編集:答えは「いいえ」だと思いますが、確認したいと思います。

0 投票する
1 に答える
1382 参照

c# - Windows CryptoAPI PRIVATE KEY BLOB を弾む城に変換する RsaPrivateCrtKeyParameters

Windows CryptoAPI PRIVATE KEY BLOB を Bouncy Castle で使用される RsaPrivateCrtKeyParameters に変換する方法 (Mono の FromCapiPrivateKeyBlob と同様) はありますか?

0 投票する
1 に答える
864 参照

encryption - プライベートとパブリックの交換キーペアのインポート

RSA1024プライベートパブリックエクスチェンジキーペアをMachine-1からMachine-2にエクスポートしたいと思います。XPでcryptoAPIを使用しています。

Machine-1で、キーペアを生成しました。実際にいくつかの実際のデータを暗号化するセッションキーをラップしました。キーコンテナ名は「PAIR1」です。

Machine-2では、セッションキーを秘密キー(Machine-1で生成したもの)でアンラップしたいと思いました。この目的のために、キーペアをMachine-1からMachine-2にエクスポートしたいと思いました。

永続キーをエクスポートする際のセキュリティ上の欠陥を認識しています。

私は何を試しましたか?

キーペアをMachine_1からPKCS#12-pfxファイルとしてエクスポートしました。Machine-2にインポートしたところ、キーコンテナ名が「PAIR1」から「none」に変更されました。私のアプリケーションでは、交換キーペアで正しい秘密キーを選択するために同じコンテナ名が必要です。キーコンテナ名を変更することはできますか?

これは機能しますか?

交換鍵ペアをMachine-2の公開鍵でラップし、Machine-2にインポートします。この場合、キーコンテナ名は同じままですか、それとも変更されますか?これが正しいアプローチかもしれないと思います。

編集済み: このクエリを実行した理由は、セッションキーを交換キーペア(公開キー)でラップし、ラップされたキーと暗号化されたデータをサーバーのメディアに配置したためです。このメディアはさまざまなクライアントを迂回し、サーバーに戻ります。この時点で、ラップされていないセッションキーを使用してデータを復号化します。このアンラッピングには、交換秘密鍵が必要です。私はこれをデモ目的で行っており、マーケティング担当者が鍵交換などを実行することは期待できません。クライアントにセキュリティの側面を示し、マーケティング担当者との設定の手間を減らしたいと考えました。

最後に、キーペアをエクスポートし、Ramsusアプローチが正しい方法ですが、必要な場所に同じものをインポートしました。