si ho usato un metodo simile a questo però il problema è che, una volta criptato il messaggio, il valore che ho in un array di byte lo converto in stringa per poterlo salvare e quando provo a decifrarlo, l'array di byte che mi creo è diverso da quello iniziale.

dal codice di msn qui viene criptato il messaggio
Dim encryptedData() As Byte= RSAEncrypt(dataToEncrypt, RSA.ExportParameters(False), False)

io poi converto da byte in testo
Dim ByteConverter As New UnicodeEncoding()
Dim testo As String = ByteConverter.GetString(encryptedData)

se ora lo riconverto in byte
Dim bb As Byte() = ByteConverter.GetBytes(testo)

mi ritrovo che bb<>encryptedData e ovviamente il decript poi da errore