Start · Sprachen · PHP · Referenz · rnp_backend_string

rnp_backend_string

Funktion

Liefert den Namen der kryptografischen Backend-Bibliothek, die von der RNP-Erweiterung verwendet wird.

seit PHP 8.0.0 Kategorie: crypto

Signatur

rnp_backend_string(): string

Beschreibung

rnp_backend_string() gibt den Namen der zugrundeliegenden kryptografischen Bibliothek zurück, auf der die PHP-RNP-Erweiterung aufsetzt. Typische Rückgabewerte sind beispielsweise Botan oder OpenSSL, je nachdem, gegen welche Bibliothek RNP beim Kompilieren gebunden wurde.

Diese Funktion ist besonders nützlich, wenn man zur Laufzeit prüfen möchte, welches kryptografische Backend aktiv ist – etwa um Feature-Kompatibilität sicherzustellen oder Diagnoseinformationen in Fehlerberichten bereitzustellen. Unterschiedliche Backends können unterschiedliche Algorithmen und Fähigkeiten unterstützen.

Die Funktion erwartet keine Parameter und liefert stets einen nicht-leeren String zurück, solange die RNP-Erweiterung korrekt geladen und initialisiert ist.

Rückgabewert

Typ
string
Beschreibung
Gibt den Namen der kryptografischen Backend-Bibliothek als String zurück, z. B. "Botan" oder "OpenSSL".

Beispiele

Backend-Namen ausgeben

<?php
$backend = rnp_backend_string();
echo "Verwendetes RNP-Backend: " . $backend . PHP_EOL;
Verwendetes RNP-Backend: Botan

Backend-Kompatibilität zur Laufzeit prüfen

<?php
$backend = rnp_backend_string();

if ($backend === 'Botan') {
    echo "Botan-Backend ist aktiv – alle erweiterten Algorithmen verfügbar." . PHP_EOL;
} elseif ($backend === 'OpenSSL') {
    echo "OpenSSL-Backend ist aktiv." . PHP_EOL;
} else {
    echo "Unbekanntes Backend: " . $backend . PHP_EOL;
}
Botan-Backend ist aktiv – alle erweiterten Algorithmen verfügbar.

// Wichtig · Fallstricke

Die verfügbaren Backends hängen davon ab, wie die RNP-Bibliothek auf dem jeweiligen System kompiliert wurde. In Produktionsumgebungen sollte man nicht davon ausgehen, dass immer dasselbe Backend vorhanden ist – insbesondere wenn die Anwendung auf verschiedenen Systemen betrieben wird. Eine Laufzeitprüfung mit rnp_backend_string() schafft hier Klarheit.

Ergänzend liefert rnp_backend_version() die genaue Versionsnummer des aktiven Backends, was für eine vollständige Kompatibilitätsprüfung hilfreich ist.