Heim >Backend-Entwicklung >PHP-Tutorial >Wie erstelle ich sichere zufällige alphanumerische Zeichenfolgen für Verifizierungslinks in PHP?

Wie erstelle ich sichere zufällige alphanumerische Zeichenfolgen für Verifizierungslinks in PHP?

Susan Sarandon
Susan SarandonOriginal
2024-12-22 21:47:18468Durchsuche

How to Generate Secure Random Alphanumeric Strings for Verification Links in PHP?

Generieren einer zufälligen, eindeutigen alphanumerischen Zeichenfolge für Verifizierungslinks in PHP

Bei der Registrierung auf einer Website erhalten Sie häufig eine E-Mail mit einem Link um Ihr Konto zu verifizieren. Dieser Link erfordert eine eindeutige, zufällige Zeichenfolge, um seine Authentizität sicherzustellen. Hier erfahren Sie, wie Sie eine solche Zeichenfolge in PHP generieren.

Verwendung der PHP 7-Standardbibliothek (empfohlen)

PHP 7 führte die Funktion „random_bytes($length)“ zur Generierung kryptografisch sicherer Pseudonyme ein -zufällige Bytes.

$bytes = random_bytes(20);
var_dump(bin2hex($bytes));

PHP 5 (Veraltet)

Verwenden Sie für veraltete PHP-Versionen bin2hex(openssl_random_pseudo_bytes($bytes)), das eine zufällige alphanumerische Zeichenfolge mit der Länge = $bytes * 2 generiert.

Erweiterte kryptografisch sichere Funktion

Die folgende Funktion erfüllt alle Sicherheitskriterien:

function getToken($length)
{
    $token = "";
    $codeAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    $max = strlen($codeAlphabet);

    for ($i = 0; $i < $length; $i++) {
        $token .= $codeAlphabet[crypto_rand_secure(0, $max - 1)];
    }

    return $token;
}

crypto_rand_secure($min, $max) verwendet openssl_random_pseudo_bytes, um eine Zufallszahl zwischen $min und $max zu generieren. getToken($length) erstellt ein benutzerdefiniertes Alphabet und generiert eine Zeichenfolge mit der Länge $length.

Fazit

Mit diesen Funktionen können Sie robuste zufällige und eindeutige Zeichenfolgen für generieren verschiedene sicherheitsrelevante Zwecke, wie Verifizierungslinks und Passwort-Abruf-Tokens.

Das obige ist der detaillierte Inhalt vonWie erstelle ich sichere zufällige alphanumerische Zeichenfolgen für Verifizierungslinks in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn