Je dois télécharger un gros fichier vidéo et l'enregistrer sur le disque dur. Ensuite, j'ai besoin de lire ce fichier vidéo en utilisant un élément multimédia XAML. Mais le fichier doit être chiffré à l'aide de l'algorithme AES 256 et de la clé de chiffrement. Une donnée non cryptée ne doit pas être écrite sur le disque dur à tout moment.Cryptage de flux WinRT
E.g. Je peux avoir un flux qui peut transformer des données non chiffrées en un fichier et vice-versa.
WinRT a une API qui me permet de crypter des tampons. Mais si le fichier est volumineux, cela ne fonctionnera pas. WinRT a une API qui permet de chiffrer les flux DataProtectionProvider. Mais il y a un paramètre magique protectionDescriptor et je n'ai pas trouvé d'informations sur la façon de spécifier un algorithme et une clé.
Ce que j'ai pu faire est de mettre en œuvre IRandomAccessStream en C#. Cela fonctionne mais c'est lent.
S'il vous plaît ne fournissent pas des réponses qui ne sont pas liées à la plateforme WinRT. Toute autre aide serait appréciée.
Pourriez-vous préciser s'il vous plaît ce que vous entendez par « mettre en œuvre IRandomAccessStream en C# »? Avez-vous trouvé un moyen d'utiliser le cryptage symétrique avec les flux directement? J'utilise une méthode qui lit le flux dans les morceaux, crypte le morceau par morceau et écrit le résultat dans le flux de destination. Cela fonctionne même avec des fichiers très volumineux et n'est pas trop lent. –
J'ai résolu le problème dans ma mise en œuvre. Maintenant, cela fonctionne vite pour les deux opérations: lecture et écriture. –
Il est dommage que vous ne pouvez pas partager le code source. Cela ressemble à une très bonne solution. Pourriez-vous au moins partager quelques informations sur la façon dont vous avez résolu le problème? –