evo primjera kako sam ja kriptovao XML fajl. Na osnovu ovoga mozes da kriptujes bilo koji string. Koristio sam TripleDES metodu. Prvo napravi ovaj XML fajl:
Code:
<?xml version="1.0"?>
<order>
<items>
<item quantity="1">.NET Framework Enkripcija</item>
<item quantity="1">Isprobavanje sigurnosti</item>
</items>
<shipping>
<to>Ognjen Pejanovic</to>
<street>Novo Naselje bb</street>
<city>Han Pijesak</city>
<zip>71360</zip>
</shipping>
<billing>
<paymentInfo type="Visa">
<number>0000-0000-0000-0000</number>
<expirationDate>09/15/80</expirationDate>
<billingAddress>
<who>JPS Sume RS</who>
<street>Romanijska 1</street>
<city>Sokolac</city>
<zip>71350</zip>
</billingAddress>
</paymentInfo>
</billing>
</order>
I snimi ga na npr c:\
Sledece pravimo proceduru kojom to kriptujemo.
Code:
Imports System
Imports System.Security.Cryptography
Imports System.Security.Cryptography.Xml
Imports System.XML
Sub Kriptovanje
Dim tDESkey As New TripleDESCryptoServiceProvider()
Dim xmldoc As New XmlDocument()
Try
xmldoc.Load("c:\order.xml")
Catch ex As Exception
MsgBox(ex.Message)
End Try
Dim billingElem As XmlElement = _
CType(xmldoc.SelectSingleNode("/order"), XmlElement)
Dim exml As EncryptedXml = New EncryptedXml(xmldoc)
Dim encryptedBilling As Byte() = _
exml.EncryptData(billingElem, tDESkey, False)
Dim ed As New EncryptedData()
ed.Type = EncryptedXml.XmlEncElementUrl
ed.EncryptionMethod = _
New EncryptionMethod(EncryptedXml.XmlEncTripleDESUrl)
ed.CipherData = New CipherData()
ed.CipherData.CipherValue = encryptedBilling
EncryptedXml.ReplaceElement(billingElem, ed, False)
xmldoc.Save("c:\enkriptovan_fajl.xml")
End Sub
kada sve to obavis dobijamo enkriptovan fajl koji ovako izgleda
Code:
<?xml version="1.0"?>
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element" xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
<CipherData>
<CipherValue>GHCqqUwzC6WSuCOP7rwAkRdQkrDlJG5H6lkxf8/zsokth3Ao3EqKLJrBf40KQZh5ZRirwkRGuG6Q9arCasV8OIm9Re4V9blNMfhUafHjAne4oGeT0MlHyhOcfvrnpQY5sHGV5cMdnKqS797erPwwePUla2QnYy9MmHlPmiBHmcC8OzF7yt/1EZ3nZ40wHqBnALVBA6XZQxCfE9STvdh6iG2RB+Cnxxkll+hNEMuuXPU8JFOz2ZSVAcdLlmmnF+hWHX3uSgIPmhAKL3+h/pXur+XSKC8drgaNWypqxgoU3e3Le4L+P4yXGMseYgfMf0+A8XCrDw3QdEymCd1ARRTEgBMjKZ8wv38ML1FeCRov2yZFVxIHdUyMuwaOvEA0bart3d1a6/TByWqxZ3KPci0gFOLX363JYnbP38fYgR6uxP3kLDtm0cMkjKBxjnMBmh8ldJxv8PurDObO7ou5f3Okzbb6U3YRVrXugNTKgcSrDtV1tf0lgB+Cr+S0TQZaZhPk7TJaanbwAbHP+zQFMG6kAUx4YLFp0rub4JpGkNhfSGReaV6SSop6m8U5UbkNtR5JbyGn6IS3Jf0DAX4X3AVZHQc0fLPqIE18a6KqIYvirRDCCUsV1NJPeQWKxhHGDgHybbF52KAyWn9GW7cU+iWc5VRFxdJ3SS+DHjG6AaJ6PFg=</CipherValue>
</CipherData>
</EncryptedData>
Valjda ce ti pomoci