- PR -

C#でCryptImportKeyを使いたいのですが

1
投稿者投稿内容
neigh
会議室デビュー日: 2007/11/22
投稿数: 1
投稿日時: 2007-11-22 17:07
現在C#でソフトを作成していて、既に作成済みソースは無しなので変更不能のC++で書かれているソフトと、1024bitRSAでの通信を行おうとしています。

作成しているソフト側ではC#のRSACryptoServiceProvider使用しているのですが、
これだとお互いが複合したときにエラーを起こすような動作をしています。(使用している鍵は生成して送信しています)

デバッガにかけたところC++ではCryptImportKeyで公開鍵をインポートした後、
CryptEncryptやCryptDecryptで暗号複合を行っているようなので、
もしやC#のRSACSPとC++で使用しているCrypt〜が互換性がないのかと思い、
C#側でCryptImportKey→CryptoEncryptを使えたらなと思っています。

ですが、C#でそれらを使う方法がわかりません。

どなたかわかるかたいらっしゃったらお願いします。
あと、互換性があるかないか知っている方いましたらお願いします。
Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2007-11-22 20:46
DllImport すりゃまあできるとは思いますが。

まず、MSDN で RSACryptoServiceProvider クラスの解説をご覧ください。
CAPI (Microsoft Cryptographic API) との相互運用について記述があります。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-11-23 08:18
どうぞ http://www.pinvoke.net/default.aspx/advapi32/CryptImportKey.html
こっちかも? http://msdn2.microsoft.com/ja-jp/library/system.security.cryptography.cspparameters(vs.80).aspx
1

スキルアップ/キャリアアップ(JOB@IT)