Przejdź do głównej zawartości
getnextpdf.com

Enterprise edycja

Security — szczegółowa referencja (HSM, PKCS#11, tryb FIPS)

Ta strona to połączona szczegółowa referencja powierzchni bezpieczeństwa NextPDF Enterprise. Obejmuje podpisywanie tokenem sprzętowym przez PKCS#11, podpisywanie w podprocesie przez interfejs wiersza poleceń OpenSSL (CLI), ustawienia wstępne polityki kryptograficznej FIPS, zabezpieczenie FIPS w czasie wykonywania oraz zabezpieczenie autotestem przy uruchomieniu. Istnieją dwa dedykowane opracowania towarzyszące: HSM — szczegółowa referencja dla szczegółów modułu podpisującego oraz FIPS 140 — szczegółowa referencja dla szczegółów modułu FIPS. Ścieżka podpisywania postkwantowego jest wersją zapoznawczą bez deklaracji zgodności. NextPDF nie posiada żadnej certyfikacji i żadnej nie udziela; wsparcie nie oznacza zgodności, a zgodność nie oznacza certyfikacji.

Ta funkcjonalność jest dostarczana w NextPDF Enterprise (nextpdf/enterprise) i aktywuje się z kopertą licencyjną poziomu Enterprise. Wdrożenie bez tego uprawnienia nie ładuje klas tej funkcjonalności. Porównaj edycje i uzyskaj licencję.

Okno terminala
composer require nextpdf/enterprise:^3

Typy podpisywania znajdują się w NextPDF\Enterprise\Security\Signature\Hsm; typy FIPS znajdują się w NextPDF\Enterprise\Security\Fips; korzeń kompozycji znajduje się w NextPDF\Enterprise\Bootstrap. Oba moduły podpisujące implementują kontrakt Core NextPDF\Contracts\HsmSignerInterface. Polityka implementuje kontrakty Core NextPDF\Contracts\CryptoPolicyInterface oraz NextPDF\Contracts\PreOperationalSelfTestInterface.

SymbolParametryZachowanie domyślneZwracaZgłasza lub kończy się niepowodzeniem zUwagi
Pkcs11Signer::__construct()string $libraryPath, int $slotId, string $pin, string $certLabel, ?string $keyLabel = null, array $chainDer = [], bool $enablePostQuantum = false, ?FipsSignatureEnforcer $fipsEnforcer = nullOtwiera bibliotekę dostawcy, loguje się do slotu, ładuje certyfikat i metadane algorytmu kluczaHsmOperationException, gdy brakuje ext-pkcs11 lub dostęp do tokenu zawodziPIN i etykiety są #[SensitiveParameter]; jeden uchwyt modułu jest buforowany na ścieżkę biblioteki na proces
Pkcs11Signer::isAvailable()BrakZgłasza, czy ext-pkcs11 jest załadowaneboolBrakStatyczna; sprawdź przed konstrukcją
Pkcs11Signer::sign()string $data, string $algorithm = 'sha256WithRSAEncryption'Podpisuje na tokenie; surowe wyjście ECDSA jest konwertowane do DER ECDSA-Sig-Valuestring surowe bajty podpisuHsmOperationException (nie znaleziono klucza, awaria tokenu); InvalidArgumentException (nieodwzorowany algorytm); FipsViolationException / FipsModuleErrorStateException przed podpisaniem, gdy podłączono egzekutorZamknięty zbiór algorytmów; zobacz sekcję Kontrakt zachowania
Pkcs11Signer::signPqs()string $data, Pkcs11PqsAlgorithm $algorithm, string $context = '', bool $randomized = trueOdrzucane, jeśli nie ustawiono $enablePostQuantum; wywołuje tymczasowy postkwantowy mechanizm PKCS#11string surowe bajty podpisuHsmOperationException (wyłączone, awaria tokenu, niezgodność długości podpisu); InvalidArgumentException (kontekst powyżej 255 bajtów)Wersja zapoznawcza; brak deklaracji zgodności
Pkcs11Signer powierzchnia akcesorówBrakWyniki konstrukcji tylko do odczytubool / string / array<string>BrakisPostQuantumEnabled, getCertificateDer, getCertificateChainDer, getPublicKeyAlgorithm
OpenSslCliSigner::__construct()string $keyUri, string $certPath, string $pin, array $extraCertPaths = [], OpenSslCliBackend $backend = OpenSslCliBackend::Auto, string $opensslBinary = 'openssl', int $timeoutSeconds = 30, ?string $modulePath = null, ?string $configPath = null, bool $legacyPinDelivery = false, ?FipsSignatureEnforcer $fipsEnforcer = nullWeryfikuje proc_open, sonduje binarium, rozwiązuje backend, ładuje certyfikatyHsmOperationException (proc_open wyłączone, brakujący plik modułu/konfiguracji/certyfikatu, brak backendu); InvalidArgumentException (pin-value wewnątrz $keyUri)Auto preferuje dostawcę OpenSSL 3.x, następnie silnik
OpenSslCliSigner::sign()string $data, string $algorithm = 'sha256WithRSAEncryption'Podpisuje w podprocesie openssl; PIN domyślnie przechodzi przez efemeryczny plik źródłowy PIN o uprawnieniach 0600string surowe bajty podpisuHsmOperationException (przekroczenie limitu czasu, odrzucony PIN, nie znaleziono klucza, puste wyjście); InvalidArgumentException (nieodwzorowany algorytm); wyjątki bramki FIPS przed podpisaniemPodproces jest zabijany po $timeoutSeconds; stderr jest redagowane
OpenSslCliSigner powierzchnia akcesorówBrakWyniki konstrukcji tylko do odczytustring / array<string> / OpenSslCliBackendBrakgetCertificateDer, getCertificateChainDer, getPublicKeyAlgorithm, getCertificatePem, getResolvedBackend, getOpensslVersion
OpenSslCliBackendEnum: Provider, Engine, AutoBrakWybór backendu dla modułu podpisującego CLI
Pkcs11PqsAlgorithmEnum zestawów parametrów ML-DSA i SLH-DSABrakPomocnicze: isMlDsa, isSlhDsa, mechanismId, parameterSetId, signatureLength, nistCategory
PqsCapabilityStatus::current()BrakBuduje rzetelną postawę postkwantową dla procesuPqsCapabilityStatusBrakKażda wartość logiczna deklaracji zgodności jest zakodowana na sztywno jako false; żadna flaga nie może jej włączyć
HsmSignerProviderAdapterHsmSignerInterface $hsm, string $providerId, SignatureAlgorithm $algorithm = SignatureAlgorithm::Pkcs1v15Udostępnia konkretną implementację HSM jako ujednolicony SignerProviderInterfaceZgodnie z SPIKeyManagementException (niepusta wersja klucza); SignatureFailedException (awaria sterownika, pusty podpis)Identyfikatory dostawców: pkcs11-{module-id}, openssl-cli
HsmOperationExceptionTypowane niepowodzenie dla każdej ścieżki podpisywania HSMRozszerza Core NextPdfException
FipsCryptoPolicy::strict() / ::standard()?FipsSelfTest $selfTest = nullUstawienia wstępne fabryki; strict to profil FIPS 140-3, standard dodaje AES-128-CBCFipsCryptoPolicyBrakNiezmienne listy dozwolonych; zobacz Zachowanie w trybie FIPS
FipsCryptoPolicy powierzchnia predykatówwejścia string / intSprawdzenia przynależności do listy dozwolonychbool / stringBrakisHashAlgorithmAllowed, isSignatureAlgorithmAllowed, isEncryptionAlgorithmAllowed, isKeyStrengthAllowed, getPreferredHashAlgorithm, getName
FipsCryptoPolicy::assertPreOperational()BrakUruchamia (lub odtwarza) autotest przy uruchomieniuvoidFipsModuleErrorStateExceptionSterowane przez szew egzekwowania Core przy pierwszej operacji kryptograficznej
FipsModeGuard::__construct()CryptoPolicyInterface $policy, ?FipsBootGuard $bootGuard = null, ?FipsAuditLogger $auditLogger = nullOpakowuje politykę granicami w stylu asercjiBrakBez zabezpieczenia rozruchowego bramka autotestu jest nieobecna (tylko polityka)
FipsModeGuard powierzchnia asercjiwejścia string / intNajpierw katalog odmów, następnie lista dozwolonych; rekord audytu przed jakimkolwiek zgłoszeniemvoidFipsViolationException; FipsModuleErrorStateException (podłączone zabezpieczenie rozruchowe)assertHashAllowed, assertSignatureAlgorithmAllowed, assertEncryptionAllowed, assertKeyStrengthAllowed oraz getPolicy
FipsBootGuard::report() / ::rerun()BrakUruchamia baterię autotestów (buforowaną / wymuszoną)FipsSelfTestReportBrakRaport ERROR blokuje proces; pomyślne ponowne uruchomienie nigdy nie zwalnia blokady
FipsBootGuard::assertOperational()BrakAsercjonuje, że moduł jest OPERATIONALvoidFipsModuleErrorStateExceptionTrwałe: zablokowany w procesie stan ERROR odrzuca nawet czystą instancję
FipsBootGuard::status()BrakZgłasza buforowany statusFipsSelfTestStatusBrakPRE_OPERATIONAL, OPERATIONAL lub ERROR
FipsSelfTest::run()BrakWykonuje pełną baterię testów znanej odpowiedzi; nigdy nie przerywa wcześniejFipsSelfTestReportBrakKonstruktor przyjmuje wstrzykiwalnych dostawców skrótu i losowych bajtów do testów deterministycznych
FipsSelfTestReport / FipsSelfTestResult / FipsSelfTestStatusObiekty wartości raportu oraz enum statusuFipsSelfTestReport::assertOperational() zgłasza FipsModuleErrorStateExceptionresults zawsze wymienia każdy wynik jako dowód audytowy
FipsSignatureEnforcer::assertSignatureGenerationAllowed()string $algorithm, string $certificatePemRozwiązuje OID podpisu oraz siłę klucza, następnie deleguje do zabezpieczeniavoidFipsViolationException (niedozwolone lub niesklasyfikowalne, fail-closed)Punkt kontrolny, który oba moduły podpisujące wywołują na początku sign() w trybie FIPS
FipsAuditLoggerCryptoPolicyInterface $policy, LoggerInterface $loggerEmituje rekordy ALLOW (INFO) / DENY (WARNING) na decyzjębool na wywołanie logowaniaBraklogHashOperation, logSignatureOperation, logEncryptionOperation, logKeyStrengthCheck
FipsTransitioningAlgorithmswejścia string / intStatyczny katalog odmów NIST SP 800-131Abool / arrayBrakWarstwa jawnych odmów pod każdą granicą zabezpieczenia
FipsBootstrap::boot() / ::lazy()?CryptoPolicyInterface $policy = null, ?FipsSelfTest $selfTest = null, ?LoggerInterface $auditLogger = nullKomponuje zabezpieczenie rozruchowe, politykę oraz zabezpieczenie trybu; boot() uruchamia autotest natychmiast, lazy() odracza go do pierwszej granicyFipsModeGuardboot(): FipsModuleErrorStateException przy nieudanym teścieDomyślnie polityka strict
FipsBootstrap::signatureEnforcer()?CryptoPolicyInterface $policy = null, ?FipsSelfTest $selfTest = nullUruchamia moduł i zwraca bramkę czasu generowania dla modułów podpisującychFipsSignatureEnforcerFipsModuleErrorStateExceptionPrzekaż wynik do parametru $fipsEnforcer modułu podpisującego
FipsBootstrap::selfTestReport()?FipsSelfTest $selfTest = nullUruchamia baterię na żądanie i ją podsumowujearray{status, operational, failed}BrakPrzeznaczone dla punktów końcowych kondycji oraz podpolecenia CLI
FipsViolationException / FipsModuleErrorStateExceptionTypowane niepowodzenia FIPSUdostępniają odpowiednio policyName / violatingItem / reason oraz failedResults
public function __construct(private readonly string $libraryPath, private readonly int $slotId, #[SensitiveParameter] private readonly string $pin, #[SensitiveParameter] private readonly string $certLabel, #[SensitiveParameter] private readonly ?string $keyLabel = null, array $chainDer = [], private readonly bool $enablePostQuantum = false, ?FipsSignatureEnforcer $fipsEnforcer = null)
public static function isAvailable(): bool
public function sign(string $data, string $algorithm = 'sha256WithRSAEncryption'): string
public function signPqs(string $data, Pkcs11PqsAlgorithm $algorithm, string $context = '', bool $randomized = true): string
public function __construct(private string $keyUri, string $certPath, #[SensitiveParameter] private string $pin, array $extraCertPaths = [], private OpenSslCliBackend $backend = OpenSslCliBackend::Auto, private string $opensslBinary = 'openssl', private int $timeoutSeconds = 30, private ?string $modulePath = null, private ?string $configPath = null, private bool $legacyPinDelivery = false, private ?FipsSignatureEnforcer $fipsEnforcer = null)
public function sign(string $data, string $algorithm = 'sha256WithRSAEncryption'): string
public static function strict(?FipsSelfTest $selfTest = null): self
public static function standard(?FipsSelfTest $selfTest = null): self
public function assertPreOperational(): void
public function __construct(private CryptoPolicyInterface $policy, private ?FipsBootGuard $bootGuard = null, private ?FipsAuditLogger $auditLogger = null)
public function assertHashAllowed(string $algorithm): void
public function assertSignatureAlgorithmAllowed(string $oid): void
public function assertEncryptionAllowed(string $algorithm): void
public function assertKeyStrengthAllowed(string $keyType, int $bitLength): void
public function getPolicy(): CryptoPolicyInterface
public static function boot(?CryptoPolicyInterface $policy = null, ?FipsSelfTest $selfTest = null, ?LoggerInterface $auditLogger = null): FipsModeGuard
public static function lazy(?CryptoPolicyInterface $policy = null, ?FipsSelfTest $selfTest = null, ?LoggerInterface $auditLogger = null): FipsModeGuard
public static function signatureEnforcer(?CryptoPolicyInterface $policy = null, ?FipsSelfTest $selfTest = null): FipsSignatureEnforcer
public static function selfTestReport(?FipsSelfTest $selfTest = null): array
  • Rozwiązywanie kontraktu. Oba moduły podpisujące implementują Core HsmSignerInterface; polityka implementuje Core CryptoPolicyInterface. Kod wywołujący zależy od kontraktów, więc uaktualnienie edycji zmienia kompozycję, a nie miejsca wywołań.
  • Piecza nad kluczem. Klucz prywatny nigdy nie opuszcza granicy tokenu. Pkcs11Signer deleguje operację do tokenu; OpenSslCliSigner przekazuje do podprocesu odwołanie do klucza w postaci URI PKCS#11. NextPDF nie przechowuje, nie generuje ani nie gwarantuje bezpieczeństwa klucza podpisującego. Ochrona klucza jest obowiązkiem pieczy operatora (NIST SP 800-57 Part 1 Rev.5 §5.5.2).
  • Sesja i logowanie. Operacja podpisywania tokenu, sesja oraz logowanie użytkownika są zgodne z PKCS#11 v3.1 §5. Etykieta certyfikatu oraz etykieta klucza prywatnego mogą się różnić; konstruktor przyjmuje osobną etykietę klucza dla takich tokenów.
  • Zamknięty zbiór algorytmów. Moduły podpisujące akceptują dokładnie: RSA PKCS#1 v1.5 z SHA-256/384/512, RSASSA-PSS z SHA-256/384/512 oraz ECDSA z SHA-256/384/512 (Pkcs11Signer akceptuje dodatkowo ecdsa-raw). Każdy inny identyfikator zgłasza InvalidArgumentException; żaden zastępczy algorytm nigdy nie jest podpisywany.
  • Powiązanie soli PSS. Dla każdego wariantu PSS długość soli równa się długości skrótu — 32, 48 lub 64 bajty — a parametry skrótu i generowania maski odpowiadają wybranemu skrótowi (PKCS#11 v3.1 §5).
  • Konwersja ECDSA. Mechanizmy tokenu ECDSA zwracają surowy podpis; sign() konwertuje go do formy ECDSA-Sig-Value zakodowanej w DER na potrzeby interoperacyjności z PDF i OpenSSL. Generowanie podpisu jest zgodne z FIPS 186-5 §6.3.2.
  • Zawartość ustawień wstępnych. Ustawienie wstępne strict dopuszcza SHA-256/384/512; identyfikatory OID podpisu RSA i ECDSA z tymi skrótami; RSASSA-PSS; AES-256-CBC oraz AES-256-GCM; minimalne RSA 2048 oraz EC 256. Ustawienie wstępne standard dodatkowo dopuszcza AES-128-CBC dla starszej interoperacyjności. Każde użycie AES-GCM wymaga unikalnego wektora inicjującego dla każdego klucza (NIST SP 800-38D §5).
  • Dwuwarstwowe egzekwowanie. Każda granica zabezpieczenia konsultuje najpierw jawny katalog odmów NIST SP 800-131A, a następnie listę dozwolonych polityki. Warstwa odmów wytwarza wyraźny w audycie sygnał „niedozwolone”; lista dozwolonych pozostaje rozstrzygająca.
  • Autotest przy uruchomieniu. Bateria obejmuje SHA-256/384/512, HMAC-SHA-256, AES-256-CBC, AES-256-GCM, test parowej spójności ECDSA P-256 oraz kontrolę kondycji bitów losowych. Pierwsza operacja kryptograficzna pod polityką na ścieżce Core uruchamia ją raz na proces, w trybie fail-closed. Niepowodzenie wprowadza moduł w stan ERROR; usługi kryptograficzne są odmawiane do czasu zresetowania. Jest to zgodne z ISO/IEC 19790:2025 §7.10, §7.10.2, §7.10.3 oraz §7.10.3.p3.
  • Trwały stan ERROR. Zaobserwowany stan ERROR blokuje cały proces. Skonstruowanie nowej polityki lub zabezpieczenia rozruchowego nie może go wyprać; pomyślne ponowne uruchomienie go nie zwalnia. Tylko ponowne uruchomienie procesu — prawdziwy cykl zasilania — resetuje stan.
  • Tylko bramka generowania. FipsSignatureEnforcer zarządza wytwarzaniem nowych podpisów. Walidacja istniejących wcześniej podpisów jest użyciem starszym i nigdy nie przechodzi przez egzekutor.
  • Ślad audytowy. Gdy zabezpieczenie jest skomponowane z rejestratorem audytu, każda granica emituje rekord ALLOW lub DENY przed zezwoleniem na operację lub jej odrzuceniem. Rejestrator konsultuje tę samą politykę, którą egzekwuje zabezpieczenie, więc zarejestrowana decyzja nie może się rozejść.
  • Skonstruowanie Pkcs11Signer bez ext-pkcs11 natychmiast zgłasza HsmOperationException; rozszerzenie nie jest dołączane do standardowych dystrybucji PHP.
  • Etykieta certyfikatu lub klucza prywatnego niepasująca do żadnego obiektu tokenu zgłasza HsmOperationException z nazwą brakującej klasy obiektu.
  • OpenSslCliSigner odmawia przy konstrukcji $keyUri zawierającego pin-value, w trybie fail-closed; PIN przechodzi zamiast tego przez bezpieczną ścieżkę źródła PIN.
  • W trybie FIPS identyfikator algorytmu, którego nie można odwzorować na znany OID podpisu, jest odrzucany w trybie fail-closed; tak samo certyfikat, którego siły klucza publicznego nie da się ustalić.
  • Nieznany typ klucza jest domyślnie odrzucany; polityka nigdy nie cofa się do słabszego algorytmu.
  • Nieudany test znanej odpowiedzi zgłasza FipsModuleErrorStateException niosący nieudane wyniki; każda późniejsza granica w procesie powtarza niepowodzenie aż do ponownego uruchomienia.
  • Zabezpieczenie skonstruowane bez zabezpieczenia rozruchowego egzekwuje listy dozwolonych, ale nie zapewnia bramki autotestu; produkcyjna kompozycja FIPS dostarcza ją przez bootstrap.
  • signPqs() odmawia uruchomienia, jeśli nie ustawiono opcjonalnego włączenia w konstruktorze. Ciąg kontekstu powyżej 255 bajtów zgłasza InvalidArgumentException (FIPS 204 §5.4). Zwrócony podpis, którego długość w bajtach nie odpowiada wybranemu zestawowi parametrów, jest odrzucany, zanim dotrze do kodowania.

Dozwolone w FIPS w trybie strict: SHA-256/384/512; RSA PKCS#1 v1.5 oraz RSA-PSS z tymi skrótami; ECDSA z tymi skrótami; AES-256-CBC oraz AES-256-GCM; RSA co najmniej 2048 bitów, EC co najmniej 256 bitów. Odrzucane w FIPS w trybie strict: słabsze lub starsze skróty, niezatwierdzone identyfikatory OID podpisu, AES-128 (dozwolone wyłącznie w ustawieniu wstępnym standard) oraz każdy klucz poniżej minimalnej siły. Minimalna długość klucza RSA oraz status przejściowy są zgodne z NIST SP 800-131A Rev.2 §3. Dobór krzywej i skrótu ECDSA jest zgodny z FIPS 186-5 §6.1.1. Ścieżka działa w trybie fail-closed i nigdy nie zastępuje algorytmu słabszym.

NextPDF Enterprise nie jest modułem kryptograficznym zwalidowanym zgodnie z FIPS i nie wysuwa żadnej deklaracji certyfikacji FIPS. NextPDF Enterprise działa w trybie zgodnym z FIPS wyłącznie wtedy, gdy jest skonfigurowany z dostawcą kryptografii zwalidowanym zgodnie z FIPS — na przykład dostawcą OpenSSL zwalidowanym zgodnie z FIPS — lub z HSM zwalidowanym zgodnie z FIPS. Polityka trybu FIPS wspomaga zgodność; nie jest certyfikacją. W tym repozytorium nie istnieje żaden artefakt certyfikacji FIPS.

DeklaracjaStandardKlauzula
Semantyka operacji podpisywania tokenu, sesji oraz logowania użytkownikaPKCS#11 v3.1§5 (sign)
Długość soli PSS równa długości skrótuPKCS#11 v3.1§5 (PSS sLen)
Generowanie podpisu ECDSA; dobór krzywej i skrótuFIPS 186-5§6.3.2; §6.1.1
Minimalna długość klucza RSA oraz status przejściowy generowania podpisuNIST SP 800-131A Rev.2§3
Kategoria autotestu, dokumentacja, wyzwalacz warunkowy, zbiór rozłącznyISO/IEC 19790:2025§7.10, §7.10.2, §7.10.3, §7.10.3.p3
Unikalność wektora inicjującego AES-GCMNIST SP 800-38D§5
Ochrona klucza i obowiązki pieczyNIST SP 800-57 Part 1 Rev.5§5.5.2
Ciąg kontekstu podpisywania postkwantowego ograniczony do 255 bajtówFIPS 204§5.4

Wszystkie klauzule są parafrazowane; nie odtworzono żadnego tekstu normatywnego. Są to deklaracje możliwości dotyczące kodu NextPDF, a nie certyfikacje. To, czy wytworzony podpis zostanie zweryfikowany, jest decyzją weryfikatora względem jego własnej konfiguracji zaufania. Polityka trybu FIPS to funkcja wspomagająca zgodność, a nie opinia prawna; skonsultuj się z własnymi doradcami ds. zgodności i prawnymi. Ten moduł dotyczy funkcjonalności kryptograficznej; traktuj go jako wrażliwy pod względem bezpieczeństwa we własnym przeglądzie.

  • Komponuj tryb FIPS przez bootstrap: boot() dla bramki przy starcie, lazy() do odroczenia baterii do pierwszej granicy oraz fabrykę egzekutora dla parametru $fipsEnforcer modułów podpisujących. Wdrożenia inne niż FIPS przekazują null i zachowanie pozostaje bez zmian.
  • Podpolecenie fips:self-test narzędzia bin/nextpdf-enterprise uruchamia baterię na żądanie i kończy się kodem niezerowym w stanie ERROR; podłącz je do zadań konserwacyjnych lub punktów końcowych kondycji dostępnych wyłącznie dla administratora (autotesty na żądanie ISO/IEC 19790:2025).
  • FipsBootGuard::resetProcessErrorLatchForTesting() jest @internal i przeznaczone wyłącznie do testów; kod produkcyjny nigdy go nie wywołuje, ponieważ zniweczyłoby to trwały stan ERROR.
  • Skonstruuj moduły podpisujące raz i używaj ich ponownie; konstrukcja loguje się i odczytuje certyfikat, a bufor modułu na bibliotekę sprawia, że wielokrotna konstrukcja względem tej samej biblioteki jest bezpieczna.
  • Dostarczaj PIN z menedżera sekretów. Jest to #[SensitiveParameter], nigdy niezapisywany w logach ani nieserializowany; nie umieszczaj go w konfiguracji w repozytorium.
  • Operator odpowiada za dostarczanie tokenów, obsługę PIN, konfigurację slotu, ochronę sieciową HSM podłączonego do sieci oraz konfigurację zaufania. Ta strona nie ujawnia wewnętrznych szczegółów polityki PIN tokenu ani materiału poświadczeń dostawcy.
  • Nie włączaj wersji zapoznawczej postkwantowej dla produkcyjnych podpisów AdES. Katalog pakietów kryptograficznych AdES nie rozpoznaje jeszcze pakietów postkwantowych, większość przeglądarek PDF odrzuca takie podpisy, a sprzętowa walidacja round-trip nie jest ukończona. Wewnętrzne szczegóły mechanizmów pozostają w wewnętrznej dokumentacji repozytorium źródłowego i są poza zakresem tego podręcznika.

Ta strona dokumentuje wyłącznie zewnętrznie obserwowalne zachowanie oraz obsługiwaną powierzchnię publicznego API. Wewnętrzne ścieżki przestrzeni nazw, klasy pomocnicze, tabele mechanizmów, nazwy plików runbooków oraz prefiksy zgłoszeń są poza zakresem.