©SQL :: Manager
HomeProgramm-InformationenTechnische DetailsKostenloser DownloadKaffee für den Autor
Netzwelt
SQL-FunktionMySQLMariaDB

MariaDB ENCRYPT SQL-Funktion - Mit Unix-crypt() verschlüsseln

ENCRYPTSyntax:ENCRYPT(Zeichenkette [, Salt])
Rückgabe-Wert:CHAR
Funktions-Typ:Verschlüsselung & Komprimierung
Funktions-Beschreibung

Die SQL-Funktion ENCRYPT() verschlüsselt die ersten 8 Zeichen einer "Zeichenkette" mit dem Unix-Systemaufruf crypt() und gibt einen verschlüsselten binären String zurück.

Das optionale Argument "Salt" sollte mindestens zwei Zeichen lang sein, ansonsten gibt die Funktion NULL zurück.

Wenn "Salt" nicht angegeben wird, wird ein Zufallswert abhängig von der Zeit verwendet.

ENCRYPT() sollte nicht mit utf16, utf32 oder ucs2-Multibyte-Zeichensätzen verwenden werden, da crypt() eine Zeichenfolge mit einem Null-Byte am Ende erwartet.

"Zeichenkette" wird bei verschlüsseln nach 8 Zeichen abgeschnitten.


Wenn die Systemvariable have_crypt nicht aktiviert ist, gibt die ENCRYPT()-Funktion immer NULL zurück.

Unter Windows gibt Funktion immer NULL zurück, da die UNIX-Funktion crypt() nicht vorhanden ist und have_crypt nicht aktiviert werden kann.


Numerische Werte in den Argumenten "Zeichenkette" und "Salt" werden als Zeichenfolge interpretiert.

Wenn "Zeichenkette" keine Zeichen enthält, wird ein Leerstring zurückgegeben.

Wenn der Wert des Arguments "Zeichenkette" oder "Salt" NULL ist, gibt die ENCRYPT()-Funktion NULL zurück.


Diese Funktion ist in MySQL 8.0 nicht vorhanden.

SQL Beispiele für die ENCRYPT-Funktion

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22

select encrypt('Test');
select encrypt('Test');
DO SLEEP(1);                      /* Waiting 1 second */
select encrypt('Test');

select encrypt('Test''Salt');
select encrypt('Test''Salt');
DO SLEEP(1);                      /* Waiting 1 second */
select encrypt('Test''Salt');

select encrypt(123456, '789');
select encrypt(123456, 789);

select encrypt('TestTest''Salt');
select encrypt('TestTestTest''Salt');

select encrypt('''Salt');
select encrypt('Test''S');
select encrypt(null'Salt');
select encrypt('Test'null);

encrypt('Test')
varchar(13) BINARY
7IGXksZ4Yqlzg
encrypt('Test')
varchar(13) BINARY
7IGXksZ4Yqlzg
encrypt('Test')
varchar(13) BINARY
8IfmSV7R/QO1g
encrypt('Test', 'Salt')
varchar(13) BINARY
Sa9IoEm4G2IBE
encrypt('Test', 'Salt')
varchar(13) BINARY
Sa9IoEm4G2IBE
encrypt('Test', 'Salt')
varchar(13) BINARY
Sa9IoEm4G2IBE
encrypt(123456, '789')
varchar(13) BINARY
781oWEAeAowtk
encrypt(123456, 789)
varchar(13) BINARY
781oWEAeAowtk
encrypt('TestTest', 'Salt')
varchar(13) BINARY
Saej54y9rHXdo
encrypt('TestTestTest', 'Salt')
varchar(13) BINARY
Saej54y9rHXdo
encrypt('', 'Salt')
varchar(13) BINARY
 
encrypt('Test', 'S')
varchar(13) BINARY
NULL
encrypt(null, 'Salt')
varchar(13) BINARY
NULL
encrypt('Test', null)
varchar(13) BINARY
NULL
Die Beispiele wurden mit dem MyWAY SQL-Manager erstellt: Download

Verwendung der ENCRYPT() Funktion in MySQL und MariaDB-Datenbanken

In MariaDB wird die Funktion ENCRYPT() verwendet, um eine Zeichenfolge mithilfe der Unix-Verschlüsselungsbibliothek zu verschlüsseln. Dabei ist zu beachten, dass die ENCRYPT()-Funktion eine plattformabhängige Einweg-Hash-Funktion anstelle eines Verschlüsselungsalgorithmus verwendet und nicht für reversible Verschlüsselung geeignet ist. Als Ergebnis liefert die Funktion eine Zeichenkette zurück.

Der verwendete Algorithmus kann je nach verwendetem Betriebssystem und Version des Datenbank-Servers variieren oder nicht vorhanden sein. Die Funktion kann zum Passwort-Hashing und zur Überprüfung von Benutzerpasswörtern verwendet werden. Zur Überprüfung, ob eine bestimmte Zeichenfolge mit einem verschlüsselten Hash übereinstimmt, kann die Funktion ENCRYPT() in einem Vergleichsausdruck verwendet werden.
DES_ENCRYPTELTENCODEENCRYPTEXPEXPORT_SETEXTRACT

Weitere MySQL und MariaDB SQL Verschlüsselung & Komprimierung

AES_DECRYPTAES_DECRYPT(Zeichenkette, Schlüssel)
Mehr zur AES_DECRYPT-Funktion

AES_ENCRYPTAES_ENCRYPT(Zeichenkette, Schlüssel)
Mehr zur AES_ENCRYPT-Funktion

COMPRESSCOMPRESS(Zeichenkette)
Mehr zur COMPRESS-Funktion

DECODEDECODE(Binärstring, Passwort)
Mehr zur DECODE-Funktion

DES_DECRYPTDES_DECRYPT(Binärstring [, Schlüssel])
Mehr zur DES_DECRYPT-Funktion

DES_ENCRYPTDES_ENCRYPT(Zeichenkette [, Schlüssel])
Mehr zur DES_ENCRYPT-Funktion

ENCODEENCODE(Zeichenkette, Passwort)
Mehr zur ENCODE-Funktion

FROM_BASE64FROM_BASE64(Zeichenkette)
Mehr zur FROM_BASE64-Funktion

MD5MD5(Zeichenkette)
Mehr zur MD5-Funktion

OLD_PASSWORDOLD_PASSWORD(Zeichenkette)
Mehr zur OLD_PASSWORD-Funktion

PASSWORDPASSWORD(Zeichenkette)
Mehr zur PASSWORD-Funktion

RANDOM_BYTESRANDOM_BYTES(Länge)
Mehr zur RANDOM_BYTES-Funktion

SHASHA(Zeichenkette)
Mehr zur SHA-Funktion

SHA1SHA1(Zeichenkette)
Mehr zur SHA1-Funktion

SHA2SHA2(Zeichenkette, Länge)
Mehr zur SHA2-Funktion

TO_BASE64TO_BASE64(Zeichenkette)
Mehr zur TO_BASE64-Funktion

UNCOMPRESSUNCOMPRESS(Binärstring)
Mehr zur UNCOMPRESS-Funktion

Numerische FunktionenZeichenketten-FunktionenReguläre AusdrückeDatum und Zeit-Funktionen
Vergleichs-FunktionenVerschlüsselung & KomprimierungKonvertierungs-FunktionenNULL-Funktionen
Aggregat-FunktionenWindow-FunktionenJSON-FunktionenGeometrische Funktionen
Sequenz-FunktionenInformations-FunktionenDynamische Tabellen-SpaltenSonstige Funktionen
Weitere Informationen zur SQL-Funktion ENCRYPT: mariadb.com
Aktualisiert: 17.09.2023ImpressumKontaktGeschäftsbedingungenDatenschutz & CookiesUpdatesSitemapFacebookLinkedinTwitterStatistics©2020-2024 Heino Cunze-Fischer