There are two verification paths in this repository:
-
Frontend UI verification (active path):
- Uses NCALayer WebSocket directly (
checkCMS) - Supports single verification + batch verification in UI
- Uses NCALayer WebSocket directly (
-
Backend API verification (available endpoint):
POST /api/sign/verify- Implemented in
SignController/DocumentSignService
- Open
http://localhost:5173 - Go to Verify Document
- Click Choose File (.cms)
- Click Check
- Review signer details and validation statuses
- In Batch Verify Documents, click Add File (repeat per file)
- Click Verify Batch
- Review per-file results and signer cards
Note: NCALayer file picker is single-select; files are added one by one.
After successful single verification, click Извлечь документ.
Frontend calls NCALayer saveCMS and shows extracted path.
Endpoint: POST /api/sign/verify
Request:
{
"cmsSignatureBase64": "MII...",
"originalDocumentBase64": "optional_base64",
"keyStoreBase64": "optional_base64",
"password": "optional",
"storageType": "PKCS12"
}Response:
{
"success": true,
"message": "Signature verified successfully",
"verificationInfo": "...",
"resultData": "..."
}NCALayer not connected: ensure NCALayer is running locallyRoot/intermediate certificateerrors: install Kazakhstan PKI certificates (seeCERTIFICATE_INSTALLATION.md)
Frontend/src/App.jsxFrontend/src/components/VerifyModule.jsxFrontend/src/services/verifyService.jsFrontend/src/services/batchVerifyService.jsBackend/Controllers/SignController.csBackend/Services/DocumentSignService.cs