Heim > Backend-Entwicklung > PHP-Tutorial > Neue Funktionen in PHP 8: Verifizierung und Signierung hinzugefügt

Neue Funktionen in PHP 8: Verifizierung und Signierung hinzugefügt

王林
Freigeben: 2024-03-27 08:22:01
Original
751 Leute haben es durchsucht

PHP 8 新特性:增加了验证和签名

PHP 8 ist die neueste Version von PHP und bietet Programmierern mehr Komfort und Funktionalität. Bei dieser Version liegt ein besonderer Schwerpunkt auf Sicherheit und Leistung, und eine der bemerkenswerten neuen Funktionen ist die Hinzufügung von Verifizierungs- und Signierungsfunktionen. In diesem Artikel werfen wir einen genaueren Blick auf diese neuen Funktionen und ihre Verwendung.

Verifizierung und Signierung sind sehr wichtige Sicherheitskonzepte in der Informatik. Sie dienen häufig dazu, sicherzustellen, dass die übermittelten Daten vollständig und authentisch sind. Verifizierung und Signaturen werden besonders wichtig, wenn es um Online-Transaktionen und vertrauliche Informationen geht, denn wenn jemand die Daten manipulieren könnte, könnte dies zu unvorhersehbaren Schäden für das Unternehmen und die Kunden führen.

In PHP 8 gibt es zwei neue Erweiterungen für die Handhabung von Verifizierung und Signierung: Sodium und OpenSSL. Diese Erweiterungen erleichtern die Verwendung moderner Kryptografie- und Sicherheitsprotokolle in PHP.

Natrium-Erweiterung

Natrium ist eine moderne Kryptografiebibliothek, die API-Zugriff auf viele kryptografische Algorithmen und Sicherheitsfunktionen bietet. Sie ist zur bevorzugten Bibliothek für Entwickler geworden, die mit sicherer Kryptografie arbeiten, da sie auf modernsten Kryptografiestandards wie Curve25519 und Chacha20 basiert.

In PHP 7.2 wurde die Sodium-Erweiterung zur PHP-Standardbibliothek hinzugefügt und wurde in PHP 7.2 zu einer optionalen Erweiterung. In PHP 8 ist es zur Standarderweiterung geworden.

Verwenden Sie die Sodium-Erweiterung zur Verifizierung

Die Sodium-Erweiterung bietet eine Funktion namens Sodium_crypto_sign_scribed(), die zum Signieren von Daten verwendet werden kann. Die Signatur generiert eine bestimmte Zeichenfolge, mit der überprüft werden kann, ob die Daten manipuliert wurden.

Hier ist ein Beispiel für das Signieren und Verifizieren mit der Funktion „sodium_crypto_sign_scribed()“:

<?php
$data = "hello world";
$keys = sodium_crypto_sign_keypair();

$signature = sodium_crypto_sign_detached($data, $keys['secret']);

if (sodium_crypto_sign_verify_detached($signature, $data, $keys['public'])) {
   echo "签名有效";
} else {
   echo "签名无效";
}
Nach dem Login kopieren

In diesem Beispiel generieren wir zunächst ein Paar aus öffentlichen und privaten Schlüsseln. Verwenden Sie dann die Funktion $sodium_crypto_sign_scribed(), um die Zeichenfolge zu signieren und das Signaturergebnis in der Variablen $signature zu speichern. Verwenden Sie abschließend die Funktion $sodium_crypto_sign_verify_scribed(), um zu überprüfen, ob die Signatur gültig ist.

Wenn die Signatur gültig ist, wird „Signatur ist gültig“ auf dem Bildschirm gedruckt, andernfalls wird „Signatur ist ungültig“ gedruckt.

Authentifizierung mit der OpenSSL-Erweiterung

OpenSSL ist eine beliebte Verschlüsselungs- und Sicherheitsbibliothek, die viele Verschlüsselungsalgorithmen und Sicherheitsfunktionen bietet. OpenSSL-Erweiterungen wurden in PHP integriert, was die Verwendung von OpenSSL in PHP komfortabler macht.

Die OpenSSL-Erweiterung bietet eine weitere Funktion namens openssl_sign(), die Daten signieren kann. Ebenso stellt die Erweiterung auch die Funktion openssl_verify() zur Überprüfung von Signaturen bereit.

Hier ist ein Beispiel für das Signieren und Verifizieren mit den Funktionen „openssl_sign()“ und „openssl_verify()“:

<?php
$data = "hello world";
$key = openssl_pkey_new(['digest_alg' => 'sha512']);

openssl_sign($data, $signature, $key);

if (openssl_verify($data, $signature, $key)) {
   echo "签名有效";
} else {
   echo "签名无效";
}
Nach dem Login kopieren

In diesem Beispiel generieren wir zunächst ein öffentliches und privates Schlüsselpaar mit der Funktion „openssl_pkey_new()“. Verwenden Sie dann die Funktion openssl_sign(), um die Zeichenfolge zu signieren und das Signaturergebnis in der Variablen $signature zu speichern. Verwenden Sie abschließend die Funktion openssl_verify(), um zu überprüfen, ob die Signatur gültig ist.

Wenn die Signatur gültig ist, wird „Signatur ist gültig“ auf dem Bildschirm gedruckt, andernfalls wird „Signatur ist ungültig“ gedruckt.

Fazit

Verifizierung und Signierung sind wichtige Methoden zur Gewährleistung der Datensicherheit. In PHP 8 erleichtern die Erweiterungen Sodium und OpenSSL die Verifizierung und Signatur. Entwickler können diese neuen Funktionen nutzen, um Unternehmen und Kunden sicherere Dienste bereitzustellen. Wenn Sie ein PHP-Entwickler sind, empfehlen wir Ihnen, sich eingehend mit den Sodium- und OpenSSL-Erweiterungen zu befassen, um die Sicherheit zu maximieren und Ihre Benutzer zu schützen.

Das obige ist der detaillierte Inhalt vonNeue Funktionen in PHP 8: Verifizierung und Signierung hinzugefügt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage