Enterprise sürüm
Contracts — Derinlemesine başvuru
Bir bakışta
“Bir bakışta” başlıklı bölümContracts modülü, RFC 3161 Zaman Damgası Yetkilisi (TSA) istemcileri için Enterprise tümleştirme dikişidir.
TsaClientInterface, tek bir işlem bildirir: önceden hesaplanmış bir belge özeti için DER kodlamalı bir TimeStampToken isteme.TsaClientAdapter, Core zaman damgası istemcisini — birfinalsınıf — davranışını değiştirmeden o arabirime köprüler.LtvManagerveDocumentTimestampgibi Enterprise bileşenleri arabirimi kabul eder, böylece TSA davranışı testlerde enjekte edilebilir ve yerine konabilir olur.- Dikişten yalnızca bir belge karması geçer; belge içeriği asla geçmez.
İş akışı rehberliği için önce Contracts yetenek sayfasını okuyun.
Kullanılabilirlik ve lisanslama
“Kullanılabilirlik ve lisanslama” başlıklı bölümBu yetenek NextPDF Enterprise (nextpdf/enterprise) ile gelir ve bir Enterprise katmanı lisans zarfıyla etkinleşir. Bu yetkilendirme olmadan yapılan bir dağıtım, yeteneğin sınıflarını yüklemez. Sürümleri karşılaştırın ve bir lisans edinin.
Arabirim hiçbir iş yapmaz ve tek başına hiçbir şeyi kapılamaz. Kullanan Enterprise yüzeyleri, uygunluk kanıtı yüzeyindeki enterprise.compliance.evidence gibi kendi yetenek kodlarını uygular.
| Katman | Sağladıkları |
|---|---|
| Core | RFC 3161 istekleri gerçekleştiren somut TsaClient (final) |
| Pro | Contracts modülü eşdeğeri yok |
| Enterprise | TsaClientInterface dikişi ve TsaClientAdapter köprüsü |
composer require nextpdf/enterprise:^3Genel API yüzeyi
“Genel API yüzeyi” başlıklı bölüm| Simge | Parametreler | Varsayılan davranış | Döndürür | Fırlatır veya şununla başarısız olur | Notlar |
|---|---|---|---|---|---|
TsaClientInterface::getDocumentTimestamp() | string $documentHash | Önceden hesaplanmış bir belge özeti için bir zaman damgası jetonu isteği bildirir | string — DER kodlamalı TimeStampToken | Uygulamaya bağlı; arabirim hiçbir istisna bildirmez | Tek işlem; kaynak, bir SHA-256 özeti girişini belgeler |
TsaClientAdapter::__construct() | TsaClient $client | Core zaman damgası istemcisini saklar | TsaClientAdapter | Bildirilen bir şey yok | final readonly; kurucu terfisi |
TsaClientAdapter::getDocumentTimestamp() | string $documentHash | TsaClient::getDocumentTimestamp() çağrısına değiştirmeden iletir | string — DER kodlamalı TimeStampToken | Core istemcisinden gelen TsaException, değiştirmeden iletilir | Hiçbir davranış eklemez; hiçbir şeyi yutmaz |
namespace NextPDF\Enterprise\Contracts;
interface TsaClientInterface{ /** * Request a timestamp token for a document hash. * * @param string $documentHash SHA-256 digest of the document content * * @return string DER-encoded TimeStampToken */ public function getDocumentTimestamp(string $documentHash): string;}namespace NextPDF\Enterprise\Contracts;
use NextPDF\Security\Timestamp\TsaClient;
final readonly class TsaClientAdapter implements TsaClientInterface{ public function __construct( private TsaClient $client, )
public function getDocumentTimestamp(string $documentHash): string}Davranış sözleşmesi
“Davranış sözleşmesi” başlıklı bölümTsaClientInterface::getDocumentTimestamp(string $documentHash): string, bir belge karması için DER kodlamalı bir RFC 3161 TimeStampToken döndürür. Dışarıdan gözlemlenebilen kurallar:
- Arabirim tek bir işlem bildirir; jetonu doğrulamaz, TSA için kefil olmaz veya hukuki geçerlilik öne sürmez.
TsaClientAdapter, çağrıyı Core zaman damgası istemcisine değiştirmeden iletir — eklenen davranış yok, eklenen yeniden deneme yok, yutulan istisna yok, ek garanti yok. Tek amacı, birfinalCore istemcisinin bağımlılık tersine çevirme ve test için Enterprise’a dönük bir arabirimi karşılamasına olanak tanımaktır.- Sınırdan yalnızca bir belge karması geçer; hiçbir belge içeriği aktarılmaz.
- Bağdaştırıcının arkasında Core istemcisi, uzunluğu yapılandırılmış imprint algoritmasıyla eşleşmeyen bir özeti, herhangi bir ağ etkinliğinden önce fail-closed biçimde
TsaExceptionile reddeder. Yanlış etiketlenmiş bir imprint, aksi takdirde hiçbir uyumlu doğrulayıcının bağlayamayacağı bir jeton üretirdi. - Kullanan yüzeyler:
LtvManager, isteğe bağlı birTsaClientInterfacekabul eder ve PAdES B-LTA için bir tanesini gerektirir.DocumentTimestamp, bir/DocTimeStampimza sözlüğünün/Contentsalanını doldurmak için sözleşmeyi kullanır. LTV arşivi yenileme yürütücüsü (LtvaRenewalExecutor), belge zaman damgalarını yenilerken Core istemcisinin çevresine birTsaClientAdapterbağlar.
Uç durumlar ve arıza modları
“Uç durumlar ve arıza modları” başlıklı bölüm- Bağdaştırıcı, alttaki istemciden gelen istisnaları değiştirmeden iletir; TSA arızaları çağrı noktasında ele alınmalıdır.
- Özet, somut istemcinin yapılandırılmış imprint algoritması altında ham ikili olmalıdır (varsayılan SHA-256, 32 bayt). Onaltılık kodlanmış bir özet yanlış uzunluğa sahiptir ve herhangi bir istek gönderilmeden önce reddedilir.
- Döndürülen bir jeton, bir karar değil, baytlardır; gerektiğinde doğrulayın.
- Özel bir uygulama, kendi arıza yüzeyine sahiptir. Sözleşme yalnızca dönüş şeklini sabitler: DER kodlamalı bir TimeStampToken.
FIPS modu davranışı
“FIPS modu davranışı” başlıklı bölümBu modül hiçbir kriptografik işlem gerçekleştirmez. Algoritma seçimi ve FIPS modu davranışı, somut TSA istemcisi ile Security modülü tarafından yönetilir. FIPS 140 derinlemesine başvurusuna bakın.
Uygunluk
“Uygunluk” başlıklı bölüm| Davranış | Başvuru |
|---|---|
| Zaman damgası jetonu isteği ve bağlama | IETF RFC 3161 §2 |
| Bir TimeStampReq bir MessageImprint taşır: bir karma algoritması tanımlayıcısı ve zaman damgası vurulacak verinin karması | IETF RFC 3161 §2.4.1 |
| Jetonun messageImprint değeri isteğin değerine eşit olmalı ve karma boyutu tanımlanan algoritmayla eşleşmelidir | IETF RFC 3161 §2.4.2 |
Sözleşme RFC 3161 çevresinde şekillendirilmiştir; gerçek jeton isteği ve herhangi bir doğrulama, somut istemci ile Evidence/Signature yüzeyleri tarafından gerçekleştirilir. Arabirim hiçbir uygunluk veya tasdik iddiasında bulunmaz. NextPDF hiçbir sertifikasyon iddiasında bulunmaz.
Geliştirme notları
“Geliştirme notları” başlıklı bölüm- Her iki tür de
@since 3.0.0taşır; bu başvuru, yüzeyinextpdf/enterprise3.1.0 içinde sunulduğu haliyle belgeler. - Zaman damgasına ihtiyaç duyan bileşenlerde
TsaClientInterfaceenjekte edin; bileşim kökündeTsaClientAdapterveya özel bir uygulama bağlayın. Birim testlerinde canlı bir TSA yerine bir test taklidi koyun. - Bağdaştırıcının arkasındaki somut TSA istemcisine operatör sahiptir: yerleşim, TSA uç noktası güven sınırı ve sertifika zinciri doğrulaması, bu arabirime değil, o istemciye uygulanır.
- Bu sözleşme yüzeyine hiçbir ihracat denetimi kısıtlaması uygulanmaz. Bir zaman damgası jetonu edinmek, denetim ve uzun süreli doğrulama iş akışlarını destekler; bu bir hukuki tasdik veya sertifikasyon değildir. Bu başvuru bir hukuki görüş değildir.
- İç mekanizma ayrıntısı, kaynak deposunun iç belgelerinde kalır ve bu kılavuzun kapsamı dışındadır.
Yayımlama sınırı
“Yayımlama sınırı” başlıklı bölümBu sayfa yalnızca dışarıdan gözlemlenebilen davranışı ve desteklenen genel API yüzeyini belgeler. İç ad alanı yolları, yardımcı sınıflar, mekanizma tabloları, runbook dosya adları ve bilet önekleri kapsam dışıdır.