Το οποίο σημαίνει ότι έχεις κάνει ήδη trust τον άλλο?

Η κρυπτογράφηση δεν είναι κάτι που γίνεται έτσι εύκολα. Πρέπει να καταλάβεις τις βασικές έννοιες αλλιώς η υλοποίησή σου θα είναι επισφαλής κι ας έχεις χρησιμοποιήσει AES για την κρυπτογράφηση.
Το .NET περιέχει την κλάση RSACryptoServiceProvider για ασύμμετρη κρυπτογράφηση. Δεν χρειάζεται certificates, της δίνεις το public key σε κάποια μορφή και μετά καλείς την μέθοδο
Encrypt για να πάρεις το κρυπτογραφημένο μύνημα. Το help της μεθόδου περιέχει και sample για τη χρήση της. Δες επίσης και
το κεφάλαιο για την κρυπτογράφιση στο MSDN. Δες επίσης και το άρθρο
RSA in VB.Net στο DevX για μια περιγραφή της διαδικασίας και άλλο ένα sample. Στο google θα πρέπει να ψάξεις για την RSACryptoServiceProvider.Encrypt.
Τέλος, μην βιαστείς να χρησιμοποιήσεις το απλούστερο sample που θα βρεις, ή αρχικά κλειδιά ή message block με απλές τιμές (π.χ. όλα τα bytes 0).
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos