Mysql
 sql >> Datenbank >  >> RDS >> Mysql

AES _Verschlüsselung in Mysql, Entschlüsselung in C#.Net

Was du tust, ist einem Weg des Schmerzes zu folgen. Entschlüsseln/verschlüsseln Sie entweder auf MySQL und verwenden Sie eine verschlüsselte Verbindung zur Datenbank (wenn das wichtig ist) oder verschlüsseln/entschlüsseln Sie auf Ihrer .NET-Anwendung und speichern Sie die verschlüsselten Daten in einer geeigneten Spalte.

Das Mischen von AES-Implementierungen ist fehleranfällig und Dinge können leichter kaputt gehen, wenn Sie Versionen von .NET oder MySQL ändern.

Um nun genau zu wissen, was falsch ist, müssen wir wissen, ob die IV zwischen MySQL und .NET kompatibel ist, oder sonst herausfinden, was MySQLs Implementierung IV ist, und diese angeben.

Und die andere potenzielle Problemquelle ist, wie Sie die Byte-Arrays generiert haben (das sehen wir in Ihrem Beispiel nicht). Sie müssen beim Generieren der Arrays Probleme mit der Zeichencodierung berücksichtigen, wenn der Schlüssel textuell ist.

In den Kommentaren von diesem MySQL-Docs-Link gibt es Informationen zu den fehlenden Parametern.