Crypter un flux XML pour l'enregistrer
Bonjour,
Je suis en train de faire une application et j'ai besoin de crypter un flux XML.
Je m'explique.
J'ai créé un objet (oCustomer) et je voudrais le sérialiser et ensuite l'enregistrer dans un fichier crypter.
J'ai réussi à le faire mais je passe par la génération d'un fichier xml sur le poste. Le but serait de prendre mon objet, le sérialiser, le crypter et l'enregistrer.
Mais je n'y arrive pas. Je crois qu'un an sans faire de .Net m'a un peu rouiller.
Voici ce que j'arrive à faire
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Private Sub saveXml(ByVal customer As oCustomer)
'Sérialisation et création du fichier XML
Dim objStreamWriter As New StreamWriter("D:\Product.xml")
Dim x As New XmlSerializer(customer.GetType)
x.Serialize(objStreamWriter, customer)
objStreamWriter.Close()
'Lecture du fichier XML pour le crypter
Dim fsInput As New FileStream("D:\Product.xml", FileMode.Open, FileAccess.Read)
Dim fsEncrypted As New FileStream("D:\monxml.crypt", FileMode.Create, FileAccess.Write)
Dim DES As New DESCryptoServiceProvider()
DES.Key = ASCIIEncoding.ASCII.GetBytes("Password")
DES.IV = ASCIIEncoding.ASCII.GetBytes("Password")
Dim desencrypt As ICryptoTransform
desencrypt = DES.CreateEncryptor()
Dim cryptostream As New CryptoStream(fsEncrypted, desencrypt, CryptoStreamMode.Write)
Dim bytearrayinput(fsInput.Length) As Byte
fsInput.Read(bytearrayinput, 0, bytearrayinput.Length)
cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length)
cryptostream.Close()
fsInput.Close()
fsEncrypted.Close()
End Sub |
Merci d'avance pour votre aide.