Microsoft CryptoAPIを使用するWindowsアプリケーション(Visual Studioが使用されています)があります。これで、WinAppで暗号化されたデータを読み取ることができるMac OS X アプリケーションを開発する必要があります。 とWinAppで解読されるMac OS Xのデータを暗号化します。このように初期化さWinAppで 暗号化/ decription:私は理解したようMicrosoft CryptoAPIをMac OSに移植する
::CryptEncrypt(m_hCryptKey, 0, TRUE, 0, pBuf, &dwCnt, dwLen);
::CryptDecrypt(m_hCryptKey, 0, TRUE, 0, pBuf, &dwCnt);
が、私はMD5を実装したライブラリを見つける必要がある:
::CryptAcquireContext(&m_hCryptProv, NULL, MS_DEF_PROV, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT);
::CryptCreateHash(m_hCryptProv, CALG_MD5, 0, 0, &m_hCryptHash);
::CryptHashData(m_hCryptHash, pbtPSW, dwPSWLen, 0);
::CryptDeriveKey(m_hCryptProv, CALG_RC4, m_hCryptHash, 0, &m_hCryptKey);
と暗号化のために/ decription使用され、次の ハッシング+ RC4エンコード/デコードそのようなライブラリの数は あると思われます。たとえば、matrixSSL、OpenSSLなどです。しかし 私の子犬のための図書館の使用は明白ではありません(特に を考慮して、私はSequrity/Crypting APIに精通していません)。誰かが特定の暗号化ライブラリを推奨できますか? 5月 私のタスクのコード例はありますか?
ADDITION:
(すなわち、同じキーを生成)主な問題は、私は:: CryptDeriveKeyのポータブルアナログを必要とするということであるが、Microsoftのバージョンと互換性があるようです。誰もそのようなものを知っていますか?または:: CryptDeriveKeyによってキーを作成するアルゴリズム?
うーん、あなたもソースが何をするか理解せずにポート暗号化関連のコードしようとしています。セキュリティの観点からはあまり意味がありません... –
ユージーン、私は何をしたいのですか?元のCryptoAPI関数を移植可能なライブラリのアナログに置き換えてください。そして、この仕事はできるだけ短い時間を要することが望ましい。これは重要なアプリケーションではありません。暗号化/復号化は、単に小さくて重要な部分ではありません。 – VitalyVal
重要なセキュリティは重要ではありません。あなたはあなたが何をしているのかを理解することなく、正しいことをしません。 –