Piekļūstiet sava seifa saturam programmatiski ar zero-knowledge šifrēšanu.
Divslēgu zero-knowledge API ar tagu filtrēšanu un pilnu CRUD funkcionalitāti.
SDK Pieejams
Vieglākai integrācijai izmantojiet oficiālo SDK: npm install @vairogs.lv/sdk
Tag API v2 ļauj ārējiem klientiem (piemēram, Claude Desktop MCP serveriem) piekļūt seifa saturam, filtrējot pēc taga. Tas izmanto divslēgu sistēmu, kur:
vgtk_a_xxxxxxxxxxxxxxxxxxxxxvgtk_d_xxxxxxxxxxxxxxxxxxxxxSvarīgi!
┌─────────────────────────────────────────────────────────────┐ │ 1. ATSLĒGU ĢENERĒŠANA (Klients) │ ├─────────────────────────────────────────────────────────────┤ │ │ │ Access Key: vgtk_a_xxx → Serverim (hash) │ │ Decryption Key: vgtk_d_xxx → NEKAD nesūta serverim! │ │ │ └─────────────────────────────────────────────────────────────┘ ┌─────────────────────────────────────────────────────────────┐ │ 2. API PIEPRASĪJUMS │ ├─────────────────────────────────────────────────────────────┤ │ │ │ Klients: X-API-Key: vgtk_a_xxx (tikai access key!) │ │ ↓ │ │ Serveris: Validē ar bcrypt.compare() │ │ ↓ │ │ Atgriež: Šifrētus datus + key slots │ │ ↓ │ │ Klients: Dešifrē ar vgtk_d_xxx (lokāli!) │ │ │ └─────────────────────────────────────────────────────────────┘
Dešifrēšanas atslēga nekad neatstāj jūsu ierīci. Pat mēs nevaram dešifrēt jūsu datus.
API atslēgas var ierobežot ar konkrētu tagu vai piekļūt visam seifam.
Vienumi šifrēti ar DEK (Data Encryption Key), kas iesaiņots vairākiem saņēmējiem.
Lasīt, izveidot, atjaunināt un dzēst vienumus caur API.
Atbalstītie Vienumu Tipi
Tag API v2 izmanto asimetrisko šifrēšanu (X25519 + NaCl box) kombinācijā ar simetrisku šifrēšanu (AES-256-GCM):
// Atslēgas pāra atvasināšana no Decryption Key
import nacl from 'tweetnacl';
import crypto from 'crypto';
const DECRYPT_KEY = 'vgtk_d_xxxxxxxxxxxxxxxxxxxxx'; // NEKAD nesūta!
const MCP_SALT = 'vairogs-mcp-key-derivation-v1';
// 1. Atvasināt 32-baitu seed ar PBKDF2
const seed = crypto.pbkdf2Sync(DECRYPT_KEY, MCP_SALT, 100000, 32, 'sha256');
// 2. Ģenerēt X25519 atslēgas pāri
const keypair = nacl.box.keyPair.fromSecretKey(new Uint8Array(seed));
// keypair.publicKey - atbilst mcpPublicKey serverī
// keypair.secretKey - izmanto dešifrēšanai (lokāli!)vault:readLasīt seifa metadatusitems:readLasīt vienumusitems:writeIzveidot/atjauninātitems:deleteDzēst vienumusfiles:readLejupielādēt failusfiles:writeAugšupielādēt failus