2017-06-10 8 views
0

QTのSimple encryption with SimpleCryptのC#での暗号化と復号化に相当するものは何ですか?私はSimpleCryptメソッドを使ってC++で暗号化されたファイルを解読したい。QtのSimpleCryptに相当するC#

+0

Sha1:QCryptographicHashハッシュ(QCryptographicHash :: Sha1)のように見えます。 Sha1にはコードのような20バイトのキーがあります。 – jdweng

+4

"SimpleCryptクラスは、64ビットのキーを' quint64'の形で受け取ります... " - おそらくSimpleCryptは避けるべきです。代わりに、SealやUnsealのような高水準のプリミティブを提供するライブラリを使用してください。ボックスとアンボックス。以下は、[Bernsteinの 'libsodium'](https://download.libsodium.org/doc/public-key_cryptography/sealed_boxes.html)の例です。ここには、[OpenSSL EVPインタフェース](https://wiki.openssl.org/index.php/EVP_Asymmetric_Encryption_and_Decryption_of_an_Envelope)の例があります。ここには[Lloyd's Botan](https://botan.randombit.net/manual/cryptobox.html)の例があります。 – jww

答えて

0

SimpleCryptは標準暗号化アルゴリズムではありません。他のよく知られている暗号化アルゴリズム(AESなど)を使用する方が良いです。こうすることで、任意の言語で実装を見つけることがより簡単になり、より強力な暗号化が可能になります。

C++プログラムで使用されているアルゴリズムを制御できない場合は、独自のSimpleCrypt実装を記述する必要があります。まず、アルゴリズムの詳細hereを読んでから、the C++ codeを読んで、C#でそれを書きます。

+0

うわー、RC4を使うことをお勧めします! – zaph

+0

@zaph、申し訳ありませんが、私はここ数年で私の暗号知識を更新していません。指摘してくれてありがとう。 – Mike