Gibt den angegebenen Wert in einem Hash-Format zurück
HASH(Zeichenfolgenausdruck[,,Algorithmus ] ) )
Zeichenfolgenausdruck Der Wert, der im Hash-Format zurückgegeben werden soll. Dieser Parameter beachtet die Groß- und Kleinschreibung, sogar in Datenbanken, die das nicht tun.
Algorithmus Der für den Hash-Vorgang zu verwendende Algorithmus. Mögliche Werte sind: MD5, SHA1, SHA1_FIPS, SHA256, SHA256_FIPS. Standardmäßig wird der MD5-Algorithmus verwendet.
Die FIPS-Algorithmen sind nur für Systeme bestimmt, die FIPS 140-2-zertifizierte Software von Certicom verwenden.
VARCHAR
Wenn die Hash-Funktion verwendet wird, wird der Wert in eine Bytesequenz konvertiert, die für jeden Wert, der an die Funktion übergeben wird, eindeutig ist.
Wenn der Server mit der Option -fips gestartet wurde, kann sich der verwendete Algorithmus oder das Verhalten ändern, und zwar folgendermaßen:
SHA1_FIPS wird verwendet, wenn SHA1 angegeben ist.
SHA256_FIPS wird verwendet, wenn SHA256 angegeben ist.
Ein Fehler wird zurückgegeben, wenn MD5 angegeben ist.
Es folgen die Rückgabetypen, abhängig vom verwendeten Algorithmus:
Jeder Algorithmus ist ein Einweg-Hash. Es ist nicht möglich, den ursprünglichen Wert anhand des Hash-Werts wieder herzustellen.
SQL/2003 Erweiterung des Herstellers
Das folgende Beispiel erstellt eine Tabelle namens user_info, um Daten über die Benutzer einer Anwendung, wie Benutzer-ID und Kennwort, zu speichern. In die Tabelle wird auch eine Zeile eingefügt. Das Kennwort wird mit der HASH-Funktion und dem SHA256-Algorithmus verarbeitet. Das Speichern von Hash-Kennwörten auf diese Weise kann nützlich sein, wenn Sie Kennwörter nicht in lesbarer Form speichern wollen, aber eine externe Anwendung haben, die Kennwörter vergleicht.
CREATE TABLE user_info ( employee_id INTEGER NOT NULL PRIMARY KEY, user_name CHAR(80), user_pwd CHAR(80) ); INSERT INTO user_info VALUES ( '1', 's_phillips', HASH( 'mypass', 'SHA256' ) ); |
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |