Ver- und Entschlüsselung von Datenwerten unter MySQL

Um Datenwerte mittels AES-Verschlüsselung (Advanced Encryption Standard) in eine MySQL-Datenbank zu schreiben, kann die Funktion AES_ENCRYPT verwendet werden. Die Verschlüsselung ist standardmäßig auf eine 128-bit Schlüssellänge eingestellt. (Es besteht die Möglichkeit, die Schlüssellänge im Quelltext auf 256 Bit hochzusetzen)

Beispiel:

1
2
3
4
5
6
7
CREATE TABLE `crypt` (
  `EMAIL` varbinary(255) NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
INSERT INTO `crypt` VALUES (AES_ENCRYPT('mail@example.com', 'password'));
 
SELECT AES_DECRYPT(`EMAIL`, 'password') FROM `crypt`;

Hinterlasse einen Kommentar

*