6

大きなビデオ ファイルをダウンロードしてハード ドライブに保存する必要があります。次に、XAML メディア要素を使用してこのビデオ ファイルを再生する必要があります。ただし、ファイルは AES 256 アルゴリズムと暗号化キーを使用して暗号化する必要があります。暗号化されていないデータは、いつでもハード ドライブに書き込んではなりません。

たとえば、暗号化されていないデータをファイルに、またはその逆に変換できるストリームを持つことができます。

WinRT には、 バッファーを暗号化できるAPIがあります。ただし、ファイルが大きい場合、これは機能しません。WinRT には、ストリームDataProtectionProviderを暗号化できる API があります。しかし、魔法の protectionDescriptor パラメーターがあり、アルゴリズムとキーを指定する方法に関する情報は見つかりませんでした。

私ができたのは、C# で IRandomAccessStream を実装することです。それは動作しますが、遅いです。

WinRT プラットフォームに関係のない回答は提供しないでください。他の助けをいただければ幸いです。

4

2 に答える 2

0

AES_CBC_PKCS7 アルゴリズムを使用して、オンザフライでデータを暗号化または復号化する IRandomAccessStream を実装することができました。シーケンシャル書き込みとランダムアクセス読み取りをサポートしています。残念ながら、ソース コードを共有することはできません。

于 2013-01-22T19:53:31.707 に答える
0

ここの例: http://msdn.microsoft.com/en-us/library/windows/apps/xaml/windows.security.cryptography.dataprotection.dataprotectionprovider.aspxは、protectionDescriptor とは何かについての情報を提供します。暗号化のキーを提供するユーザー、グループ、またはコンピューターを特定します。例では次のようになります。

String strDescriptor = "LOCAL=user";

以降:

DataProtectionProvider Provider = new DataProtectionProvider(strDescriptor);

これは、キーのプロバイダーが現在のユーザーになることを意味します。このクラスの外観では、ユーザーの情報を保護することを目的としているように見えます。おそらく、ユーザー自身が生成した証明書と、オーバーライドできないデフォルトのアルゴリズムを使用して、キーとアルゴリズムを明示的に期待する方法を探していると、行き詰まる可能性がありますCryptographicEngine

于 2012-11-12T19:36:13.100 に答える