Verifica i pagamenti SynX privati
Con chiavi di prova solo per importo.

Una chiave di prova conferma l'importo esatto di SynX per una transazione senza rivelare gli indirizzi del mittente o del destinatario.
MAINNET IN DIRETTA Kyber-768 SPHINCS+-SHAKE256-128f Chiavi a prova quantistica Spara e dimentica Zero metadati Scadenza 30 minuti Zero perdite di reticolo Nessuna divulgazione dell'indirizzo

Questa guida documenta lo stesso flusso di chiave di prova per transazione privata utilizzato da timeline.php per i pagamenti di accesso alla Timeline. È progettato per gli sviluppatori che hanno bisogno di accettare pagamenti SynX privati, verificare l'importo esatto e mantenere i dati dell'indirizzo fuori dalla loro applicazione.

Percorso di integrazione consigliato: creare un verificatore lato server che accetti tx_hash E proof_key, chiama /explorer/api/verify_proof.php, controlli valid === true, quindi confronta il restituito amount all'importo dell'ordine richiesto. Questo è il percorso utilizzato da Timeline per i pagamenti privati.

Implementazione compatibile con la sequenza temporale

Implementazione di chiavi di prova come la sequenza temporale

Timeline accetta automaticamente i pagamenti visibili sul mercato. Quando una transazione è privata o nascosta, passa alla verifica con chiave di prova. La chiave di prova conferma l'importo del pagamento mentre i campi dell'indirizzo rimangono sigillati.

FLUSSO DI PAGAMENTO PRIVATO COMPATIBILE CON LA TIMELINE 1. L'utente invia tx_hash e per gli invii privati ​​invia anche proof_key. 2. Normalizza proof_key: taglia gli spazi bianchi, rimuovi gli spazi interni, accetta il prefisso PT-. 3. Convalidare gli input prima di chiamare API: tx_hash = esattamente 64 caratteri esadecimali proof_key = esattamente 64 caratteri esadecimali o PT- + 64 caratteri esadecimali 4. POST JSON su /explorer/API/verify_proof.php: {"tx_hash":"...64hex...","proof_key":"PT-...64hex..."} 5. Se risposta.valid è vera, leggi risposta.importo e risposta.valuta. 6. Confrontare Response.Amount con l'importo del pagamento richiesto. La sequenza temporale utilizza una piccola tolleranza decimale: abs(pagato - richiesto) <= 0.0001 7. Grant access, mark the order paid, or unlock the product only after amount match.

Verificatore PHP in stile timeline

function normalize_synx_proof_key(string $proofKey): string {
  $proofKey = preg_replace('/\s+/', '', trim($proofKey));
  return $proofKey ?? '';
}

function verify_private_synx_payment(string $txHash, string $proofKey, float $requiredAmount): array {
  $txHash = strtolower(trim($txHash));
  $proofKey = normalize_synx_proof_key($proofKey);

  if (!preg_match('/^[a-f0-9]{64}$/', $txHash)) {
    return ['ok' => false, 'reason' => 'tx_hash must be exactly 64 hex characters'];
  }
  if (!preg_match('/^(PT-)?[a-fA-F0-9]{64}$/', $proofKey)) {
    return ['ok' => false, 'reason' => 'proof_key must be 64 hex characters, with optional PT- prefix'];
  }

  $response = file_get_contents('https://synxcrypto.com/explorer/api/verify_proof.php', false, stream_context_create([
    'http' => [
      'method' => 'POST',
      'header' => "Content-Type: application/json\r\nAccept: application/json\r\n",
      'content' => json_encode(['tx_hash' => $txHash, 'proof_key' => $proofKey]),
      'timeout' => 15,
      'ignore_errors' => true,
    ]
  ]));

  $data = json_decode($response ?: '', true);
  if (!is_array($data) || empty($data['valid'])) {
    return ['ok' => false, 'reason' => $data['hint'] ?? $data['error'] ?? 'proof could not be verified'];
  }

  $paid = is_numeric($data['amount'] ?? null) ? (float)$data['amount'] : 0.0;
  if (abs($paid - $requiredAmount) > 0.0001) {
    return ['ok' => false, 'reason' => "amount mismatch: paid {$paid}, required {$requiredAmount}"];
  }

  return ['ok' => true, 'amount' => $paid, 'currency' => $data['currency'] ?? 'SYNX'];
}

Campi di risposta da cui dipendere

CampoPunto finaleUtilizzo
validverify_proof.phpBooleano primario. Non concedere nulla a meno che questo non sia true.
amountverify_proof.phpImporto esatto SynX per la prova. Confronta con l'importo richiesto.
currencyverify_proof.phpIl valore previsto è SYNX.
error + hintverify_proof.phpMostra all'utente un semplice messaggio di tentativo o correzione.
amount_decoded/privacy/tx/{hash}/rune-verifyStesso concetto di amount, ma restituito dall'endpoint di metadati più ricco.

Compatibilità verifica in coda: L'endpoint semplice solitamente risponde in modo sincrono. Se mai un'integrazione riceve {"status":"pending","request_id":"...","retry_after":3}, sondaggio /explorer/api/index.php?endpoint=verify_proof&request_id=... Dopo retry_after secondi e analizzare il JSON finale allo stesso modo. La sequenza temporale include questo percorso di compatibilità.

Nota di implementazione: Per le applicazioni browser, chiama il verificatore dal tuo backend a meno che la tua origine non sia già consentita dalla policy CORS di Explorer. La verifica lato server ti consente inoltre di oscurare le chiavi di prova dai registri dei clienti e di confrontare gli importi con il database degli ordini in un unico posto.

Filosofia della privacy

🌊 Perché non divulghiamo mai il mittente o il destinatario

Non riveliamo mai il mittente o il destinatario perché la privacy e l'open source non possono mescolarsi per la maggior parte del tempo: è come mescolare il petrolio nel mare. Abbiamo sinergia perché lasciamo che le ombre scompaiano, non che restiamo soffocati e bloccati da una fuga di petrolio o di gas (metadati). Il mare scorre pulito quando le identità in esso si dissolvono. Nel momento in cui tagghi un’onda, inquini l’intero oceano. — DOTTRINA SULLA PRIVACY SynX

Questo è il principio fondamentale. La trasparenza open source e la privacy degli utenti sono nemici naturali, a meno che non si progetti correttamente il confine. SynergyX risolve questo problema creando il file protocollo trasparente (chiunque può controllare il codice) mantenendo identità permanentemente opaco (non esiste alcun meccanismo per rivelare il mittente o il destinatario). La chiave di prova è una chiave puzzle: sblocca l'importo e soltanto l'importo. Le identità dietro la transazione si sono dissolte nel Synergy Sea nel momento in cui il blocco è stato sigillato.

Il nodo SynX genera la chiave di prova utilizzando la crittografia reticolare quantistica Kyber-768. La chiave è matematicamente legata all’importo della transazione. Non può essere forgiato, non può essere decodificato e scade tra 30 minuti. Il mittente condivide la chiave di prova con il destinatario fuori catena: Signal, PGP, Tor, un tovagliolo. Il destinatario verifica tramite questo API. Questo è l'intero modello di fiducia. Nessuna custodia. Nessun intermediario. Nessuna traccia di metadati.

Solo importo con progettazione permanente. La chiave di prova decodifica l'importo esatto del pagamento. Non esiste alcun meccanismo (nessun endpoint, nessuna chiave, nessun parametro, nessun flag) che riveli gli indirizzi del mittente o del destinatario. Questa non è una scelta di configurazione. È un'impossibilità architettonica. Gli indirizzi non vengono memorizzati in alcuna forma che possa essere sbloccata da una chiave. Affondarono nel mare.

Modello di minaccia

Ciò che sa il server (Jack)

Cerchiamo di essere onesti riguardo ai confini della fiducia. Stai colpendo un API. Il server è una macchina e le macchine possono essere sequestrate. Ecco esattamente cosa ottiene un utente malintenzionato se esegue il root della box:

MODELLO DI MINACCIA: "Hanno radici sull'Explorer"
transazioni.json TX privata da/a/importo = nullo Tariffa = solo livello con bucket (micro/basso/standard/alto/prem) Timestamp = fuzzed ±120 s Altezza blocco = nulloVerdetto: inutile indirizzi.json Indirizzi privati ​​= impegni crittografici unidirezionali Irreversibile. Nessuna chiave può recuperarli. Non esiste alcun endpoint di divulgazione per rivelarli.Verdetto: hash opachi, nessun indirizzo, mai privacy_proofs.json Memorizzato come SHA256(proof_key): l'hash della chiave La chiave è derivata dal reticolo quantistico Kyber-768. Non recuperabile. Le prove decodificano SOLO L'IMPORTO: mai gli indirizzi. Le chiavi di prova scadono tra 30 minuti. Generato dal nodo SynX, mai dal client o dall'esploratore.Verdetto: hash scaduti, computazionalmente inutili per gli aggressori Risposte di API Massimale costante di 500 ms su ogni chiamata (temporizzazione oracolo morto) "Non trovato" == "privato" (forma di risposta identica) Nessun cookie. Nessuna sessione. Nessuna impronta JS. Non esiste alcun endpoint per rivelare il mittente/destinatario.Verdetto: analisi temporale neutralizzata, zero perdite di reticolo, zero perdite di indirizzi Indirizzi mittente/destinatario Mai memorizzato in testo non crittografato. Mai restituito da nessun endpoint. Nessuna divulgazione della chiave di visualizzazione. Nessun endpoint di controllo. Nessuna via d'uscita. Il API non dispone di alcun meccanismo per rivelare chi ha inviato o ricevuto. → Verdetto: gli indirizzi sono permanentemente sommersi

L'onesto avvertimento: Durante la sincronizzazione del demone, lo scanner vede brevemente gli indirizzi grezzi prima di sottoporli ad hashing e scartare gli originali. Questo è lo stesso modello di fiducia del nodo remoto di Monero: il demone invia testo in chiaro allo scanner. Cosa garantiamo: i dati memorizzati e le risposte API non perdono mai indirizzi o importi grezzi. Non esiste un endpoint API che restituisca gli indirizzi, né con una chiave di visualizzazione, né con una chiave di prova, mai. L'hashing è istantaneo. La finestra è microsecondi. Un battito di ciglia, non una fuga di notizie.

La tempistica è mitigata. Ogni singola risposta API (GET, POST, successo, fallimento, 404, tutto) viene completata con un Soffitto costante di 500 ms. Il server misura il tempo di elaborazione effettivo, quindi dorme esattamente 500ms - elapsed. Ogni risposta dura esattamente 500 ms. Non casuale. Costante. D di Cohen tra percorsi validi e non validi: 0.015 (testato da GhostReaper – statisticamente invisibile). Il playbook dell'oracolo temporale di Chainalysis? Morto all'arrivo.

Architettura

🌊 Il Synergy Sea: due strati di profondità

Pensa alla catena come a un oceano. Le transazioni pubbliche galleggiano in superficie. Quelli privati ​​affondano. Più vai in profondità, più hai bisogno di chiavi di prova per vedere qualcosa. E anche alla massima profondità, solo il quantità superfici - non affronta mai.

T H E S Y N E R G Y S E A
SUPERFICIE: chiunque può vedere ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Hash TX ✓ Esistenza ✓ Tempo fuzzy ±120s Livello tariffario ✓ Confs ✓ Indirizzi: VUOTO Quantità: VUOTO Bloccare: VUOTO DEEP: detentori di chiavi a prova di virus (chiavi con sigillo quantico SynX Node) ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ Pagamento verificato ✓ Importo esatto ✓ (decodificato dal sigillo del reticolo quantistico) Finestra temporale ±120s ✓ Indirizzi: VUOTO: nessun endpoint li rivela. Mai. Altezza del blocco: VUOTO La chiave di prova scade tra 30 minuti: verifica rapidamente. Prova condivisa fuori catena: PGP, Signal, Tor, dead drop. Kyber-768 + SPHINCS+ + Argon2id sigillati L'importo è tutto ciò che emerge. Tutto il resto resta annegato.
ProfonditàChi vedeCosa trapelaGuardia
SUPERFICIEChiunqueHash, esistenza, tempo fuzzy, livello tariffario, confImpegni crittografici
PROFONDOPortachiavi a provaSopra + importo esatto (decodificato dal sigillo del reticolo quantistico) + finestra temporaleCrittografia a reticolo quantistico Kyber-768, AES-256-GCM

Non esiste uno strato più profondo. Non esiste alcuna divulgazione della chiave di visualizzazione, nessun controllo degli indirizzi, nessun meccanismo per rivelare chi ha inviato o ricevuto. La chiave di prova, generata dal nodo SynX utilizzando la crittografia quantistica Kyber-768, decodifica l'importo esatto. Questo è il punto più profondo a cui chiunque può arrivare. Gli indirizzi del mittente e del destinatario sono permanentemente annegati nel mare.

Armatura anticorrelazione: I timestamp erano sfocati di ±120 secondi. Tariffe suddivise in 5 livelli (micro/basso/standard/alto/premium – mai l'importo grezzo). Altezza dei blocchi annullata. Tempi di risposta attenuati fino al tetto costante di 500 ms. "TX non trovato" e "TX è privato" restituiscono il file forma identica. Le chiavi di prova scadono tra 30 minuti — limitare le finestre di replay quasi allo zero. Non puoi nemmeno enumerare quali hash sono reali. Ogni query di superficie restituisce la stessa quantità di informazioni indipendentemente dal fatto che la TX esista, non esista o sia protetta. Buona fortuna, Chainalysis.

Avvio rapido

—͟͟͞͞★ Verifica della prova del fornitore: 3 minuti, Zero Trust

Sei un venditore. Un acquirente ti ha appena pagato in privato SynX. È necessario verificare il pagamento senza vedere il loro indirizzo, il loro saldo o fidarsi di terze parti. Ecco come. Niente KYC. Nessuna custodia. Dimostrare i pagamenti alla cieca.

Come funzionano le chiavi di prova: Quando un acquirente invia SynX privato, il file Nodo SynX genera automaticamente una chiave di prova sigillata quantistica utilizzando la crittografia reticolare Kyber-768. Questa chiave di prova è una chiave puzzle: è l'unica cosa in grado di decodificare l'importo della transazione. La chiave è matematicamente immortale: senza i parametri del reticolo quantistico interno del Nodo, nessun aggressore, classico o quantistico, può fabbricarne una. Il Nodo restituisce la chiave di prova al portafoglio del mittente. Il mittente lo condivide con te fuori catena. Lo colleghi al API. Importo verificato. Nessun indirizzo rivelato. Mai.

1

L'acquirente ti invia tx_hash + proof_key (off-chain)

Dopo l'invio privato, il Nodo SynX genera automaticamente la chiave di prova. Il portafoglio dell'acquirente lo riceve e te lo invia in DM, insieme all'hash della transazione. Signal, PGP, Tor chat, scritti su un tovagliolo, qualunque cosa. Canale senza metadati. Il API non vede mai questo trasferimento.

# What the buyer sends you (encrypted channel only)
tx_hash:    "a1b2c3d4e5f6789012345678901234567890123456789012345678901234abcd"
proof_key:  "PT-f7e8d9c0b1a23456789012345678901234567890123456789012345678901234"

Finestra di 30 minuti: Le chiavi di prova scadono tra 30 minuti da generazione. L'acquirente deve condividere la chiave di prova immediatamente dopo l'invio. Dovresti verificare immediatamente dopo aver ricevuto. Questa finestra ristretta elimina gli attacchi di tipo replay a lungo termine: la chiave è effimera per natura. Se scade, il mittente può richiederne uno nuovo al Nodo SynX.

Prefisso PT: Tutte le chiavi di prova iniziano con PT- — previene gli errori di incollaggio (non incollerai mai accidentalmente un hash TX in un campo di prova o viceversa). Il API accetta entrambi PT-f7e8... e crudo f7e8... — il server rimuove automaticamente il prefisso. Entrambi i formati funzionano.

Limiti di input: applicazione rigida: tx_hash deve essere esattamente 64 caratteri esadecimali [a-fA-F0-9]{64}. proof_token massimo 67 caratteri (Prefisso PT + 64 esadecimale). Qualunque cosa al di fuori di questi limiti → istantaneo 400 Bad Request. Il API rifiuta input sovradimensionati prima di qualsiasi elaborazione: non inviare un hash di 200 caratteri sperando che venga tagliato. Non lo farà. Viene lasciato cadere.

2

Raggiungi un punto finale: a parlare sono i conti

# cURL — verify the proof key (recommended endpoint)
curl -X POST https://explorer.synxcrypto.com/explorer/api/verify_proof.php \
  -H "Content-Type: application/json" \
  -d '{"tx_hash":"a1b2c3d4e5f6...64hex","proof_key":"f7e8d9c0...64hex"}'

# Through Tor (you should be doing this)
torsocks curl -X POST http://synxexplorer.onion/explorer/api/verify_proof.php \
  -H "Content-Type: application/json" \
  -d '{"tx_hash":"a1b2c3d4...","proof_key":"f7e8d9c0..."}'

# GET also works — quick terminal checks
curl "https://explorer.synxcrypto.com/explorer/api/verify_proof.php?tx_hash=a1b2c3d4...&proof_key=f7e8d9c0..."
3

Leggi l'oracolo

{
  "valid": true,              // ← that's your money, ghost
  "tx_hash": "a1b2c3d4...",  // ← echoed back for confirmation
  "amount": "183.00",        // ← exact amount decoded from quantum lattice seal
  "currency": "SYNX",
  "confirmed_at": 1735689600,  // ← UNIX epoch when TX was inscribed on-chain
  "message": "Payment proof verified — this proof key is valid for the specified transaction"
}

"valid": true — pagamento confermato. Conosci il importo esatto (decodificato dal sigillo del reticolo quantistico) e il currency. Non conosci il mittente, il destinatario o il blocco. Nessuno lo fa. Non noi. Non il server. Nessun mandato di comparizione. Non esiste alcun endpoint API in grado di rivelare gli indirizzi: né con una chiave di visualizzazione, né con una chiave di prova, mai. La chiave sbloccava l'importo e nient'altro. Affondò nel mare.

I nomi dei campi contano: Viene restituito l'endpoint semplice "amount" (non "amount_decoded"). Ritorna l'endpoint della Busta Runica "amount_decoded". Controlla quale endpoint stai raggiungendo e leggi il campo giusto. Entrambi gli endpoint ritornano "valid": true/false.

Questo è tutto. Tre passi. Un POST. Zero account, zero chiavi API, zero KYC. La chiave di prova è l'autenticazione. La crittografia quantistica Kyber-768 è il giudice. Spedisci la merce.

Spara e dimentica: Il nodo SynX genera automaticamente la chiave di prova e la invia all'esploratore immediatamente dopo l'invio della transazione. Si tratta di un processo in background: se il push fallisce (singhiozzo della rete, server inattivo), l'invio riesce comunque. La chiave di prova è generata dai parametri interni del reticolo quantistico del Nodo. La registrazione avviene al meglio. Il flusso di invio non si blocca mai in base alla disponibilità del API.

𖣐 Rito di verifica completa

𖣐 MITTENTENODO SynX + MARE𖣐 RICEVITORE
Invio privato (portafoglio)
Kyber-768 incapsulato
SPHINCS+ firmato
Il nodo SynX genera
chiave di prova sigillata quantistica
Crittografia reticolare Kyber-768
imperdonabile: scadenza dopo 30 minuti
Il portafoglio riceve la chiave di prova
PT- prefissato
(chiave restituita una volta: memorizzala)
◄────────────────────
Condividi la chiave di prova fuori catena
Messaggio di segnale/PGP/Tor
═══════════════════════════════════════════►


(percorso di metadati zero)


══►
Verificare il sigillo
POST /verify_proof.php
◄────────────────────
← {"valid":true,"amount":"183,00"}
────────────────────►
✓ PAGATO. SPEDITELO.

Il passaggio ④ è il collegamento critico. La chiave di prova deve viaggiare tra mittente e destinatario attraverso un canale che il API non vede mai. Messaggi di scomparsa del segnale. E-mail crittografata con PGP. Servizio nascosto Tor. Un codice QR mostrato su una tabella. Un biglietto attaccato sotto una panchina del parco. Al API non interessa come arriva il segreto: verifica i calcoli solo quando il ricevitore lo richiede.

Il tempo stringe. Le chiavi di prova scadono tra 30 minuti. Condividi immediatamente. Verifica immediatamente. In base alla progettazione, le chiavi di prova sono chiavi di puzzle effimere, non credenziali di lunga durata. Questa finestra ristretta significa che anche se una chiave viene intercettata, la finestra per utilizzarla da parte dell'aggressore è microscopica. Dopo 30 minuti, la chiave è polvere crittografica.

Riferimento dell'endpoint

POST /verify_proof: verifica una chiave di prova (consigliato)

INVIARE OTTENERE PUBBLICO — Il modo più semplice per verificare un pagamento. Inviare tx_hash + proof_key nel corpo (o come parametri GET). Restituisce l'importo esatto. Nessuna autenticazione Nessuna chiave API. Nessun conto. Inizia qui.

INVIARE/explorer/API/verify_proof.php
OTTENERE/explorer/API/verify_proof.php?tx_hash={hash}&proof_key={chiave}
// POST Request (JSON body) — recommended
{
  "tx_hash": "a1b2c3d4e5f6...64hex",
  "proof_key": "f7e8d9c0b1a2...64hex"
}
// "proof_token" also accepted as an alias for "proof_key"
// PT- prefix accepted: "PT-f7e8d9c0..." → server strips it automatically
// Also accepts form-encoded POST data or GET query parameters

// ✓ Response — seal broken, exact amount decoded
{
  "valid": true,
  "tx_hash": "a1b2c3d4...",
  "amount": "183.00",
  "currency": "SYNX",
  "confirmed_at": 1735689600,
  "message": "Payment proof verified — this proof key is valid for the specified transaction"
}

// ✗ Response — wrong proof key
{
  "valid": false,
  "tx_hash": "a1b2c3d4...",
  "error": "Proof key does not match this transaction",
  "hint": "The proof_key provided does not match this transaction. Ensure you received the correct proof key from the payment sender."
}

// ✗ Response — missing or malformed inputs
{
  "valid": false,
  "error": "Missing required parameters: tx_hash and proof_key",
  "hint": "Send tx_hash (64 hex chars) and proof_key (64 hex chars) as GET params, POST form data, or JSON body.",
  "example": {
    "GET": "/explorer/api/verify_proof.php?tx_hash=abc123...&proof_key=def456...",
    "POST": "{\"tx_hash\": \"abc123...\", \"proof_key\": \"def456...\"}"
  }
}

Questo è l'endpoint da cui iniziare. È il percorso più semplice e affidabile per verificare un pagamento. Un POST con due campi → importo esatto. L'endpoint della busta runica di seguito (/rune-verify) restituisce metadati più ricchi (intervalli di timestamp, conto alla rovescia della scadenza) ma richiede l'hash TX nel percorso dell'URL. Utilizzo verify_proof.php a meno che tu non abbia specificamente bisogno di campi aggiuntivi.

Riferimento completo agli errori: verify_proof.php

HTTPerror campoCosa è andato stortoFix
400Missing required parameters: tx_hash and proof_keyCorpo vuoto o campi mancantiInvia entrambi tx_hash E proof_key in JSON, dati del modulo o parametri di query
400Invalid tx_hash formatNon 64 caratteri esadecimaliDeve contenere esattamente 64 caratteri esadecimali [a-fA-F0-9]{64}
400Invalid proof_key formatNon 64 caratteri esadecimali (dopo aver rimosso PT-)64 esadecimale, con o senza PT- prefisso
400tx_hash exceeds maximum length (64 chars)Input troppo lungo: limite rigido applicatoNon inviare input di grandi dimensioni sperando che vengano tagliati. Non lo faranno.
400proof_key exceeds maximum length (67 chars)Input troppo lungo: limite rigido applicatoMassimo 67 caratteri: PT- + 64 esadecimali
429Rate limit exceeded — maximum 30 verification requests per minuteMare strozzatoIndietro. Memorizza i risultati nella cache lato client: un sigillo verificato non cambia.
503Verification service temporarily unavailableSincronizzazione o riavvio del demoneRiprova tra qualche istante. Il nodo SynX potrebbe essere in fase di recupero.
200Proof key does not match this transactionChiave sbagliata per questa TXRicontrolla di avere quello corretto proof_key dal mittente

Le risposte agli errori includono sempre hint. IL hint Il campo fornisce indicazioni intuitive per gli sviluppatori su cosa correggere. Analizzare valid prima (sempre presente), poi controlla error + hint in caso di fallimento. In caso di successo, leggi amount E currency.

POST /privacy/tx/{hash}/rune-verify — Busta runica (metadati ricchi)

INVIARE PUBBLICO — Stessa verifica della chiave di prova con metadati più ricchi: finestra timestamp (±120 secondi fuzzy), conto alla rovescia della scadenza, metodo di decrittografia. Usalo quando hai bisogno di più della semplice quantità.

INVIARE/explorer/API/privacy/tx/{hash}/rune-verify

Alias: /explorer/api/privacy/tx/{hash}/proof

// Request — proof_token in body, tx_hash in URL path
{ "proof_token": "f7e8d9c0b1a2...64hex" }

// Response — seal broken, rich metadata
{
  "valid": true,
  "confirmed": true,
  "timestamp_range": { "earliest": 1735689480, "latest": 1735689720 },
  "amount_decoded": "183.00",
  "rune_lattice": "encrypted",
  "decrypted_by": "runic_proof_token",
  "expires_in_minutes": 24,
  "proof_algorithm": "Kyber-768 quantum lattice seal — addresses never disclosed"
}

// Response — invalid
{ "valid": false, "reason": "Proof token does not match any registered runic proof" }

// Response — expired
{ "valid": false, "reason": "Runic proof has expired" }

Differenza fondamentale da verify_proof.php: Questo endpoint ritorna amount_decoded (non amount), reason in caso di fallimento (non error + hint) e include timestamp_range, expires_in_minutes, rune_lattice. L'hash TX va nel percorso dell'URL, non nel corpo JSON. Scegli l'endpoint adatto alle tue esigenze: entrambi verificano la stessa chiave di prova.

Ciò che apprende il verificatore rispetto a ciò che rimane annegato

Punto datiRivelato?Perché
Il pagamento è avvenutovalid: true
TX in catenaconfirmed: true
Finestra temporale±120 s sfocati: non esatto
Importo esattoDecodificato dal sigillo del reticolo quantistico tramite chiave di prova — non un intervallo, il numero reale
Indirizzo del mittenteAnnegato nel mare
Indirizzo del destinatarioAnnegato nel mare
Altezza del blocconull per tutte le TX private

Decodifica reticolare quantistica: La chiave di prova viene generata dal nodo SynX utilizzando la crittografia reticolare Kyber-768, lo stesso standard post-quantistico (FIPS 203) su cui è costruita l'intera catena. La chiave è matematicamente legata all'importo esatto della transazione. Chiave sbagliata? La decodifica fallisce completamente: nessuna informazione parziale, nessuna fuga di dati dal canale laterale. La codifica del reticolo viene riempita fino a una lunghezza fissa: una transazione da 0,01 SynX e una transazione da 77.000.000 SynX producono reticoli sigillati di dimensioni identiche. La grandezza dell'importo è invisibile senza la chiave.

Le prove scadono dopo 30 minuti. Dopo la scadenza, il server ritorna "reason": "Runic proof has expired". Questa finestra ristretta offre ai destinatari tempo sufficiente per effettuare la verifica, eliminando al tempo stesso il rischio di riproduzione a lungo termine. Se la finestra si chiude, il portafoglio del mittente può richiedere una nuova chiave di prova dal nodo SynX (fino al limite per TX).

GET /privacy/tx/{hash}/verify — Esistenza Oracle

OTTENERE PUBBLICO — Esiste questa TX? Restituisce un impegno di esistenza crittografica. Non rivela altro.

OTTENERE/explorer/API/privacy/tx/{hash}/verify
{
  "exists": true,
  "hash": "a1b2c3d4...",
  "confirmed": true,
  "confirmations": 142,
  "block_height": null,   // sealed — private TXs don't surface block info
  "is_private": true,
  "verified_at": 1735689600,
  "existence_proof": "9d4997cb84efc492...",
  "proof_algorithm": "HMAC-SHA256(tx_hash || block_height || date, server_key)"
}

GET /privacy/tx/{hash}: ricerca di transazioni shadow

OTTENERE PUBBLICO - Cerca qualsiasi TX. Quelli privati ​​restituiscono l'ombra: hash visibile, tutto il resto null.

OTTENERE/explorer/API/privacy/tx/{hash}
// Response — TX found (private shadow)
{
  "status": "found",
  "hash": "a1b2c3d4...",
  "message": "Transaction located",
  "transaction": {
    "hash": "a1b2c3d4...",
    "block_height": null,       // hidden
    "timestamp": 1735689600,   // fuzzy ±120s
    "from": null,               // drowned
    "to": null,                 // drowned
    "amount": null,             // drowned
    "fee_tier": "redacted",     // private TXs: fee tier sealed
    "is_private": true,
    "privacy_tier": "shadow",
    "status": "confirmed",
    "confirmations": 142,
    "existence_commitment": "7833cd43..."
  }
}

// Response — TX not found or shielded (identical shape prevents enumeration)
{
  "status": "not_found_or_private",
  "hash": "a1b2c3d4...",
  "message": "Transaction not found or may be shielded",
  "transaction": null
}

Reparto anti-enumerazione: Interrogare un hash che non esiste? Ottieni {"status":"not_found_or_private","transaction":null,"message":"Transaction not found or may be shielded"}forma di risposta identica ad un TX privato (stesse chiavi, stessa struttura). Chainalysis, Elliptic, CipherTrace: non riescono nemmeno a capire quali hash sono reali. Non è un bug. Questa è l'architettura.

GET /privacy/recent — Increspature della superficie

OTTENERE/explorer/API/privacy/recent?limit=20

TX recenti. Quelli privati ​​emergono come ombre (campi nulli). Quelli pubblici mostrano dati trasparenti. Buono per i cruscotti. Parametro interrogazione limit (1-50, predefinito 20).

GET /privacy/stats - Letture della profondità del mare

OTTENERE/explorer/API/privacy/stats

Metriche di adozione della privacy: TX totali, TX private, % di adozione, flag di funzionalità. Nessuna autenticazione richiesta. Monitora la profondità del mare dalla tua infrastruttura.

POST /privacy/batch-proof: verifica in batch di più prove

INVIARE PUBBLICO — Verifica fino a 50 chiavi di prova in un'unica richiesta. Stessa verifica del demone degli endpoint a prova singola, ma raggruppati per efficienza. Ideale per i marketplace che elaborano più ordini o portafogli che verificano più pagamenti in entrata contemporaneamente.

INVIARE/explorer/API/privacy/a prova di batch
// Request — array of proof pairs (max 50)
{
  "proofs": [
    { "tx_hash": "a1b2c3d4...64hex", "proof_token": "f7e8d9c0...64hex" },
    { "tx_hash": "b2c3d4e5...64hex", "proof_token": "PT-e8d9c0b1...67chars" }
  ]
}

// Response — per-proof results with summary
{
  "batch_size": 2,
  "results": [
    {
      "index": 0,
      "valid": true,
      "tx_hash": "a1b2c3d4...",
      "confirmed": true,
      "amount_decoded": "183.00",
      "rune_lattice": "encrypted"
    },
    {
      "index": 1,
      "valid": false,
      "tx_hash": "b2c3d4e5...",
      "reason": "Proof token mismatch"
    }
  ],
  "valid_count": 1,
  "invalid_count": 1
}

Limiti batch e riferimento agli errori

VincoloLimiteErrore sulla violazione
Numero massimo di prove per lotto50400"Maximum 50 proofs per batch, got N"
Corpo massimo della richiesta256KB400"Request body too large for batch endpoint"
Matrice vuotaMin 1400"Proofs array is empty"
tx_hash non valido nell'elemento64 esadecimaleSaltato — {"valid":false,"reason":"Invalid tx_hash"} nei risultati
proof_token non valido nell'elemento67 caratteri massimoSaltato — {"valid":false,"reason":"Invalid proof_token (max 67 chars, 64 hex)"}

Usi in lotti amount_decoded (come la Busta Runica), no amount. Ogni risultato ha un index campo corrispondente alla posizione dell'array di input. Gli elementi non riusciti non causano l'arresto anomalo del batch: ritornano valid: false con a reason mentre altre prove continuano a verificare. L'endpoint batch condivide la valvola a farfalla del mare di API per la privacy (100 richieste/min di base + divieti incrementali).

Porta DDoS: Se il tuo IP con hash è vicino al limite del Sea Throttle (oltre il 60% del budget di 100 richieste/min), l'endpoint batch nega tutte le chiamate RPC del daemon per impedire l'amplificazione: altrimenti una richiesta batch di 50 prove colpirebbe il daemon 50 volte. Otterrai {"error": "Proof verification service temporarily unavailable"}. Fare marcia indietro e riprovare.

Mestiere

🧅 Tor / .onion: guida tutto attraverso la nebbia

Il API lo è REST senza stato su HTTPS. Nessun cookie. Nessuna sessione. Nessuna impronta digitale JS. Nessun aggiornamento WebSocket. Richiesta pura→risposta su TLS. Funziona su Tor in modo nativo perché lo abbiamo costruito in questo modo. Non come un ripensamento. Se stai costruendo qualcosa di privato e sei non instradando attraverso .onion, stai perdendo il tuo IP su ogni risolutore DNS tra te e il server. Non.

stato .cipolla: Il dedicato synxexplorer.onion il servizio nascosto lo è prossimamente. Gli URL seguenti utilizzano un segnaposto. Fino a quando il file .onion non sarà attivo, instrada le richieste clearnet tramite Tor tramite torsocks o proxy SOCKS5. Il tuo IP rimane nascosto in ogni caso. Aggiorneremo questo documento non appena il servizio nascosto sarà attivo.

cURL tramite Tor

# Install torsocks (Debian/Ubuntu)
sudo apt install torsocks

# Verify a payment — sovereign style
torsocks curl -X POST http://synxexplorer.onion/explorer/api/verify_proof.php \
  -H "Content-Type: application/json" \
  -d '{"tx_hash":"a1b2c3d4...","proof_key":"f7e8d9c0..."}'

Python tramite Tor (SOCKS5)

import requests

# pip install requests[socks] PySocks
session = requests.Session()
session.proxies = {
    'http':  'socks5h://127.0.0.1:9050',
    'https': 'socks5h://127.0.0.1:9050',
}

# socks5h = DNS resolution through Tor too (no DNS leak)
API = "http://synxexplorer.onion/explorer/api"

result = session.post(f"{API}/verify_proof.php",
                      json={"tx_hash": "a1b2c3d4...", "proof_key": "f7e8d9c0..."},
                      timeout=30).json()

if result.get("valid"):
    print(f"ᛣ Sealed — amount: {result['amount']} {result['currency']}")

Node.js tramite Tor

const { SocksProxyAgent } = require('socks-proxy-agent');
const fetch = require('node-fetch');

const agent = new SocksProxyAgent('socks5h://127.0.0.1:9050');
const API = 'http://synxexplorer.onion/explorer/api';

const r = await fetch(`${API}/verify_proof.php`, {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({tx_hash: 'a1b2c3d4...', proof_key: 'f7e8d9c0...'}),
  agent,
});
const data = await r.json();
if (data.valid) console.log('𖣐 Sovereign verified', data.amount, data.currency);

Perché socks5h non socks5? IL h significa che la risoluzione DNS avviene anche tramite Tor. Senza di esso, il tuo risolutore DNS locale vede "synxexplorer.onion" - una perdita di metadati. Sempre socks5h. Sempre.

📡 Condividi le chiavi di prova tramite Signal: Zero Metadata

La chiave di prova deve viaggiare tra mittente e destinatario senza toccare il API. Ecco la gerarchia OPSEC per tale trasferimento:

CanaleMetadati trapelatiVerdetto
Segnale (mittente sigillato, che scompare)Numero di telefono noto a Signal, contenuto del messaggio E2EEBENE per la maggior parte delle minacce
PGP tramite posta elettronica Tor (ProtonMail/Tutanota)Metadati dell'e-mail (il provider vede da/a/ora), corpo E2EEBENE
Messaggio diretto del servizio nascosto TorNiente. Entrambi i partiti dietro .onion.MIGLIORE
Telegram (anche "chat segrete")Numero di telefono, metadati cloud, Telegram ha il tuo IPMEH
Discord/Slack/E-mail (testo normale)Qualunque cosa. Registrato per sempre. Citazione in giudizio.NO

Il tempo conta: Le chiavi di prova scadono tra 30 minuti. Utilizza messaggi a scomparsa impostati su 5 minuti o meno. L'acquirente deve inviare la chiave di prova immediatamente dopo che il portafoglio ha confermato l'invio privato. Il venditore deve verificare immediatamente al ricevimento. Canali effimeri per chiavi effimere.

Hook di integrazione del segnale (bot Python)

# signal-cli or signal-bot framework — send proof key after payment
import subprocess, json

def send_proof_via_signal(recipient_phone, tx_hash, proof_key):
    """Send proof key through Signal. Disappearing message. Verify within 30 min."""
    msg = json.dumps({
        "tx_hash": tx_hash,
        "proof_key": proof_key,
        "verify_at": f"POST /verify_proof.php with tx_hash + proof_key",
        "expires": "30 minutes from generation — verify NOW",
    })
    subprocess.run([
        "signal-cli", "-u", "+1YOUR_NUMBER",
        "send", "-m", msg, recipient_phone,
        "--expire", "300",  # 5-min disappearing message
    ])

# After private SYNX send:
send_proof_via_signal("+1BUYER_PHONE", "a1b2c3d4...", "PT-f7e8d9c0...")

Il canale non è un problema del API. Questa è la bellezza. Il API verifica solo le chiavi di prova: non sa mai come hanno viaggiato. Potresti stampare la chiave su una ricevuta e consegnarla allo sportello. I conti funzionano ancora. La verifica è stateless. La chiave scade dopo 30 minuti, indipendentemente dal canale.

Rito di pagamento sul mercato

Stai costruendo un mercato sovrano. Nessuna striscia. Niente PayPal. Nessun middleware KYC. Solo il Synergy Sea e le chiavi a prova di sigillo quantico. Ecco come verificare i pagamenti con importi esatti utilizzando solo una chiave di prova: nessun indirizzo mai rivelato.

Le chiavi di prova decodificano importi esatti, nient'altro. Il nodo SynX genera una chiave di prova sigillata quantistica utilizzando la crittografia reticolare Kyber-768 che decodifica nel esatto importo del pagamento: nessun indirizzo, nessuna altezza dei blocchi, nessuna informazione sul mittente/destinatario. Un ordine da 300 SynX? La chiave decodifica in "300.00". Un pagamento di 100 SynX? "100,00". Nessuna ambiguità sull'importo. Ambiguità totale sull'identità. La chiave scade tra 30 minuti.

𖣐ACQUIRENTE IL TUO SERVER Synergy Sea 1. Effettua l'ordine ──────────────── ► Genera un ID ordine univoco ◄──────────────── Pagina di pagamento (order_id + price) 2. L'acquirente invia SynX privato tramite portafoglio (isPrivate=true) Il nodo SynX genera una chiave di prova con sigillo quantistico Kyber-768 encap → SPHINCS+ firmato → catena 3. L'acquirente invia tx_hash + proof_key (off-chain) ──────────────── ► Negozio con order_id ⚠ Finestra di 30 minuti: verifica immediatamente 4. Verificare l'esistenza: OTTIENI /tx/{hash}/verify ──────────► ◄─── {"esiste": vero} 5. Decodifica l'importo esatto con la chiave di prova: POST /verify_proof.php ──────► ◄─── {"importo":"300,00"} 6. Confronta l'importo decodificato >= totale dell'ordine ✓ MARCHIO ORDINE: PAGATO SOVRANO ◄──────────────── Spediscilo/sbloccalo Totale chiamate API: 2 (esistenza + verify_proof) Dati trapelati a API: 0 indirizzi – mai Importo esatto verificato: SÌ (tramite la chiave di prova quantistica del nodo SynX) Mittente/destinatario rivelato: MAI KYC richiesto: nessuno. per sempre. Finestra chiave di prova: 30 minuti (effimera per definizione)
# Flask marketplace backend: amount-only verification via proof key
import requests

API = "https://explorer.synxcrypto.com/explorer/api"

@app.route('/verify-payment', methods=['POST'])
def verify():
    tx_hash   = request.json['tx_hash']
    proof_key = request.json['proof_key']  # raw 64-hex or PT- prefixed (API accepts both)
    order     = Order.query.filter_by(tx_hash=tx_hash).first()
    if not order:
        return {'status': 'unknown_order'}, 404

    # Step 1: confirm TX exists on-chain
    existence = requests.get(f"{API}/privacy/tx/{tx_hash}/verify", timeout=20).json()
    if not existence.get('exists') or not existence.get('confirmed'):
        return {'status': 'not_confirmed'}, 402

    # Step 2: decode exact amount using proof key (30-min window)
    # Uses verify_proof.php — returns "amount" (not "amount_decoded")
    result = requests.post(f"{API}/verify_proof.php",
                           json={"tx_hash": tx_hash, "proof_key": proof_key}, timeout=20).json()

    if result.get('valid'):
        paid = float(result['amount'])  # ← "amount" not "amount_decoded"
        if paid >= order.total:
            order.status = 'paid'
            db.session.commit()
            return {'status': 'sovereign_paid', 'exact_amount': paid}
        return {'status': 'underpaid', 'sent': paid, 'required': order.total}, 402

    # Error responses include "error" + "hint" — check both
    error = result.get('error', '')
    if 'expired' in error.lower():
        return {'status': 'proof_expired', 'message': 'Proof key expired — ask buyer for a fresh key'}, 410

    return {'status': 'invalid_proof', 'hint': result.get('hint', '')}, 402

Solo importo in base alla progettazione. La chiave di prova decodifica il sigillo del reticolo quantistico nella quantità esatta: e questo è tutto Tutto lo fa. Non esiste alcun endpoint, nessuna chiave di visualizzazione, nessun meccanismo in questo API per rivelare gli indirizzi del mittente o del destinatario. Il mercato vede "300,00 SynX sono stati pagati" - mai Chi pagato o da dove. Questo è il contratto sulla privacy. È permanente.

✗∑🗡 Code Grimoire: ogni lingua, ogni modello

Python: verifica una chiave di prova

import requests

API  = "https://explorer.synxcrypto.com/explorer/api"
SOCKS = {'http': 'socks5h://127.0.0.1:9050', 'https': 'socks5h://127.0.0.1:9050'}

def verify(tx_hash, proof_key, tor=False):
    """Verify a SYNX proof key — decodes exact amount, reveals nothing else.
    
    The SYNX Node generates proof keys using quantum Kyber-768 lattice encryption.
    Keys expire in 30 minutes. Verify immediately upon receipt.
    Uses verify_proof.php — the recommended endpoint.
    """
    s = requests.Session()
    if tor: s.proxies = SOCKS
    return s.post(f"{API}/verify_proof.php",
                  json={"tx_hash": tx_hash, "proof_key": proof_key},
                  timeout=20).json()

def check_exists(tx_hash, tor=False):
    """Check if a TX exists on-chain. Reveals nothing about amounts or addresses."""
    s = requests.Session()
    if tor: s.proxies = SOCKS
    return s.get(f"{API}/privacy/tx/{tx_hash}/verify", timeout=20).json()

# Usage — the whole rite (amount-only verification)
# Buyer sends you: tx_hash + proof_key (off-chain, via Signal/PGP/Tor)
result = verify("a1b2c3d4...", "f7e8d9c0...", tor=True)  # raw or PT- prefixed
if result.get("valid"):
    print(f"𖣐 Payment confirmed — exact amount: {result['amount']} {result['currency']}")
    # No addresses revealed — ever. Only the amount surfaces.
elif result.get('error'):
    print(f"⚠ {result['error']}")
    if result.get('hint'): print(f"  Hint: {result['hint']}")

# The SYNX Node generates the proof key. You just verify it.
# Proof key = quantum puzzle key. Amount = the only answer.
# Sender? Drowned. Receiver? Drowned. That's the deal.

Node.js — Verificatore di pagamenti (Express Middleware)

const fetch = require('node-fetch');
const API = 'https://explorer.synxcrypto.com/explorer/api';

async function verifyPayment(txHash, proofKey) {
  // Proof key generated by SYNX Node — quantum Kyber-768 sealed
  // Expires in 30 minutes — verify immediately
  const r = await fetch(`${API}/verify_proof.php`, {
    method: 'POST',
    headers: {'Content-Type': 'application/json'},
    body: JSON.stringify({ tx_hash: txHash, proof_key: proofKey }),
  });
  return r.json();
}

// Express middleware — drop into any route
async function requirePayment(req, res, next) {
  const { tx_hash, proof_key } = req.body;
  const result = await verifyPayment(tx_hash, proof_key);
  if (!result.valid) {
    // Error responses include "error" + "hint" fields
    return res.status(result.error?.includes('expired') ? 410 : 402).json({
      error: result.error,
      hint: result.hint,
    });
  }
  req.paymentAmount = result.amount;  // ← "amount" (not "amount_decoded")
  req.paymentCurrency = result.currency;
  next();
}

cURL: foglio informativo completo

BASE="https://explorer.synxcrypto.com/explorer/api"

# Sea depth readings
curl $BASE/privacy/stats

# Recent shadow transactions
curl "$BASE/privacy/recent?limit=10"

# Shadow lookup (private TX)
curl $BASE/privacy/tx/a1b2c3d4e5f6...

# Existence oracle
curl $BASE/privacy/tx/a1b2c3d4e5f6.../verify

# Verify a proof key — RECOMMENDED (simple endpoint)
# Returns: {"valid":true, "amount":"183.00", "currency":"SYNX", ...}
curl -X POST $BASE/verify_proof.php \
  -H "Content-Type: application/json" \
  -d '{"tx_hash":"a1b2c3d4...","proof_key":"f7e8d9c0..."}'

# GET also works (quick terminal check):
curl "$BASE/verify_proof.php?tx_hash=a1b2c3d4...&proof_key=f7e8d9c0..."

# PT- prefix also works in proof_key:
# "proof_key":"PT-f7e8d9c0..." or "proof_token":"f7e8d9c0..."

# Runic Envelope (richer metadata: timestamp range, expiry)
curl -X POST $BASE/privacy/tx/a1b2c3d4.../rune-verify \
  -H "Content-Type: application/json" \
  -d '{"proof_token":"f7e8d9c0..."}'

# All of the above, through Tor:
torsocks curl http://synxexplorer.onion/explorer/api/verify_proof.php \
  -d '{"tx_hash":"a1b2...","proof_key":"f7e8..."}'
La matematica fredda

SynergyX vs Monero: il confronto onesto

Monero è stato il pioniere. Firme degli squilli, RingCT, indirizzi invisibili: tutto geniale. Ma sono stati costruiti per un mondo pre-quantistico in cui Ed25519 era indistruttibile e i timestamp esatti su un esploratore andavano "bene". Quell'era sta finendo. Ecco dove si trovano le due catene quando le metti una accanto all'altra:

CapacitàMonero (XMR)SynergyX (SynX)
Prove di pagamentocheck_tx_proof (si perdono gli indirizzi)POST /verify_proof.php (solo importo)
Affrontare la divulgazione nelle prove❌ indirizzi visibili in provaNESSUN indirizzo, mai
Importi nascosti (esploratore)✅AnelloCTnull in tutti i negozi + chiavi a prova quantistica
Importo in prova❌ importo esatto + indirizzi espostiImporto esatto decodificato, zero indirizzi
Scadenza della prova❌le prove vivono per sempreFinestra di 30 minuti: effimera per definizione
Generazione di proveLato client (gli aggressori possono eseguire il reverse engineering)Nodo SynX (quantistico Kyber-768 — non forgiabile)
Privacy del timestamp❌ esatto al secondo±120s sfocati
Tassa sulla privacy❌ sat/byte esatto visibileSecchi a 5 livelli
Altezza del blocco nascosta❌ visibile su Explorernull per TX privati
Oracolo anti-timing❌nessun jitter APISoffitto costante di 500 ms
404 indistinguibili❌ forma diversanon_trovato == privato
Firme post-quantiche❌ Ed25519 (Shor-morto)SPHINCS+-SHAKE256-128f
Scambio di chiavi post-quantistiche❌ x25519 (Shor-morto)Kyber-768 (FIPS203)
Crittografia del disco del portafoglioChaCha20Argon2id (2 GB, 4 passaggi)
API nativo di Tor✅RPC✅RESTO Apolide
È necessaria la migrazione quantistica?SÌ: riscrittura totaleNato così. Blocco Genesi.

Se usi ancora Monero nel 2026, sei già morto: semplicemente non te ne sei accorto.

Le tue firme sugli anelli? La catena dell’analisi li raggruppa come bestiame. Timestamp esatti? La NSA timbra il tuo caffè. Ed25519? Shor sta arrivando: le tue chiavi sono polvere. Generazione di prove lato client? Decompila il portafoglio e falsifica prove tutto il giorno. Questa è archeologia, non sicurezza.

Le chiavi di prova SynergyX sono generate dal file Nodo SynX utilizzando la crittografia reticolare quantistica Kyber-768. Il metodo di generazione è sigillato all'interno del nucleo del Nodo: nessun client, nessun decompilatore o nessun utente malintenzionato può accedere ai parametri interni del reticolo quantistico. Anche un avversario sofisticato che decompila completamente il portafoglio non ottiene nulla: il portafoglio riceve la chiave di prova dal Node. Non lo genera. Il segreto non lascia mai il Nodo.

Transazioni ombra: mittente, destinatario, importo, blocco: null. Non offuscato. Cancellato.

Chiavi di prova quantistica: Chiavi puzzle sigillate a reticolo Kyber-768: dimostra l'importo esatto senza rivelare chi ha inviato, chi ha ricevuto, quando (± 120 secondi di fuzz) o dove. La chiave decodifica gli importi esatti: 183,00, non "medio". Nessun indirizzo nella prova. Nessun indirizzo nel API. Nessun indirizzo da nessuna parte. Scade tra 30 minuti.

Nessuna divulgazione dell'indirizzo: Non esiste un endpoint chiave di visualizzazione. Nessun endpoint di controllo. Nessun meccanismo per rivelare il mittente o il destinatario tramite questo API. L'importo è tutto ciò che emerge. L’identità rimane annegata – permanentemente.

Post-quantistico: Kyber-768, SPHINCS+, SHAKE256 — Shor può baciare il tuo blocco genesi. Nessuna tabella di marcia. No "più tardi aggiungerò segni quantici". Siamo nati immuni.

Vuoi privacy? Smettila di elemosinare gli avanzi. Con Synergy ottieni furtività quantistica e velocità nel mare delle ombre. Prendi la lama.

L'elefante quantistico: Le chiavi Ed25519 di Monero sono vulnerabili allo Shor. Il loro "piano di migrazione" significa che ogni portafoglio deriva nuovamente le chiavi secondo un nuovo schema, mentre la catena è attiva, mentre i fondi sono a rischio e la sequenza temporale è sconosciuta. SynergyX non ha un piano di migrazione perché non c'è nulla da cui migrare. Kyber-768 + SPHINCS+ dal blocco zero. Quando Shor si sveglia, questa catena non sussulta. Le catene ereditarie si sgretolano. Questa è la differenza tra "lo sistemeremo più tardi" e "lo sistemeremo prima".

Codici di errore

Due endpoint, due forme di errore. verify_proof.php ritorna "error" + "hint" campi. La busta runica (/rune-verify) ritorna "reason". Entrambi includono sempre "valid": false. Analizzare valid innanzitutto, quindi controlla il campo di errore che corrisponde al tuo endpoint.

verify_proof.php — Codici di stato HTTP

CodiceSensoLa risposta include
200Riuscito: chiave di prova verificata, importo esatto decodificatovalid, tx_hash, amount, currency, confirmed_at, message
200Prova non valida: chiave errata per questa TX (non un errore HTTP)valid: false, tx_hash, error, hint
400Richiesta errata: campi mancanti, hash non valido, formato non valido, input sovradimensionatovalid: false, error, hint, A volte example
429Mare strozzato - 30 richieste/min per IP. Fai marcia indietro e memorizza nella cache i risultati.valid: false, error, hint
503SynX Nodo non disponibile: sincronizzazione o riavvio del demone. Riprova tra qualche istante.valid: false, error, hint

Busta runica (/rune-verify): codici di stato HTTP

CodiceSenso
200Successo: chiave di prova verificata, quantità decodificata con metadati avanzati
200Prova non valida — "reason": "Proof token does not match any registered runic proof"
200Scaduto - "reason": "Runic proof has expired"
404TX non trovata or TX è privato (non saprai mai quale, in base alla progettazione)
429Throttled in mare: livelli di ban incrementali (100→throttle, 500→5min ban, 1500→1hr ban)
500Disturbo interno: controlla i log del server

429 Sea Throttle - Corpo di risposta

Tutte le 429 risposte (entrambi gli endpoint) includono a Retry-After Intestazione HTTP (RFC 7231) e un corpo JSON strutturato con informazioni sul livello:

// 429 Response — sea throttle or ban active
// Retry-After: 60  (HTTP header — seconds until retry)
{
  "error": "Sea throttled — incremental ban tiers protect the Sea",
  "throttle_tier": "standard",     // "standard" | "tier1" | "tier2" | "active_ban"
  "retry_after": 60,              // seconds until you can retry
  "message": "100 req/min exceeded — exponential backoff (60s). Cool down and come back.",
  "tiers": {
    "standard": "100 req/min — exponential backoff",
    "tier1":    "500 req/min — 5-minute ban",
    "tier2":    "1500 req/min — 1-hour ban"
  }
}

// Example: active ban (hit 500+ req/min earlier)
// Retry-After: 253
{
  "throttle_tier": "active_ban",
  "retry_after": 253,
  "message": "Active ban — 253s remaining. Keep pushing and the Sea pushes back harder."
}

Analizzare retry_after o il Retry-After intestazione — entrambi danno lo stesso valore in secondi. IL throttle_tier il campo ti dice quale livello di escalation hai raggiunto. Se stai vedendo "active_ban", sei già stato riassegnato: il message ti dice per quanto tempo stai annegando. verify_proof.php ha il suo limitatore di velocità più semplice da 30 req/min che restituisce un semplice messaggio di errore senza informazioni sul livello.

Formati di input (entrambi gli endpoint): Hash TX = esattamente 64 caratteri esadecimali [a-fA-F0-9]{64}. Chiave di prova = max 67 caratteri (con PT- prefisso) o esattamente 64 esadecimale (grezzo). Il API accetta entrambi i formati: server strip PT- automaticamente. verify_proof.php accetta il nome del campo proof_key or proof_token (alias). Qualunque cosa al di fuori di questi limiti ottiene un duro 400. Nessun taglio. Nessuna pietà.

I limiti di velocità differiscono in base all'endpoint. verify_proof.php impone 30 richieste/min per IP. La Busta Runica utilizza la valvola a farfalla del mare di API per la privacy: 100 richieste/min linea di base con escalation incrementale del ban (500→5 minuti, 1500→1 ora). Risultati della verifica della cache lato client durante la finestra di 30 minuti: un sigillo verificato non cambia mentre è attivo. Una volta valid: true, l'importo è l'importo.

Riferimento alla sicurezza per gli sviluppatori

🕳 Garanzie zero metadati: cosa devono sapere gli sviluppatori

Se stai integrando questo API, ecco la prova concreta nessuna perdita di metadati. Ogni affermazione riportata di seguito è controllata da GhostReaper (oltre 100 vettori di attacco, 0 risultati senza patch).

Proprietà di sicurezza: elenco di controllo per sviluppatori

ProprietàGaranziaCome
Chiavi a prova di imperdonabilitàGenerato dal nodo SynX utilizzando la crittografia reticolare quantistica Kyber-768. I parametri interni non lasciano mai il processo del Nodo. Non può essere contraffatto nemmeno decompilando il portafoglio.
Prova chiavi effimereOgni chiave di prova scade tra 30 minuti. Dopo la scadenza, il sigillo è permanentemente rotto. Nessun "token per sempre": riduce al minimo il rischio di replay e intercettazione.
Importo mai pagatoIl server memorizza la codifica reticolare sigillata quantistica. Importo grezzo mai inviato, ricevuto o archiviato in testo non crittografato. Solo la chiave di prova può decodificarlo.
Dimensione del reticolo = costanteTutte le guarnizioni reticolari sono imbottite ad una lunghezza fissa. Un SynX TX da 0,01 e un SynX TX da 777.000.000 producono guarnizioni di dimensioni identiche. La grandezza dell'importo è invisibile.
Oracolo temporale mortoSoffitto costante di 500 ms su ogni risposta. D di Cohen = 0,015 tra percorsi validi/non validi (confermato GhostReaper). Statisticamente invisibile.
La chiave di prova non è mai stata archiviata grezzaNegozi di server SHA256(proof_key) soltanto. Se il DB perde → hash + rumore reticolare sigillato. Computazionalmente inutile senza la chiave.
Il mittente/destinatario non ha mai inviatoNon esiste alcun endpoint che accetti o restituisca indirizzi. Nessuna chiave di visualizzazione. Nessun dato identificativo. Architettura solo per importo.
Nessuna differenziazione della risposta"TX non trovato" e "TX è privato" restituiscono forme di risposta identiche. Nessuna fuga di informazioni.
La manetta del mare si mantiene in concorrenzaLimitatore dell'acceleratore del mare basato su file con LOCK_EX serializzazione. 200 richieste simultanee → 0 sono state completate (GhostReaper). La finestra TOCTOU è chiusa. I livelli di ban incrementali (500→5 minuti, 1500→1 ora) aumentano anche durante i ban attivi: il contatore non si ferma mai. Oltre il 60% del budget, le chiamate RPC del demone vengono negate per impedire l'amplificazione DDoS. IP archiviati come hash SHA-256.

Cosa DEVI fare come integratore

1. Non registrare mai chiavi di prova. La chiave di prova è la chiave del puzzle per l'importo. Se la tua applicazione lo registra, hai infranto il modello di privacy. Trattalo come una chiave privata.
2. Prefisso PT- accettato, ma convalida i tuoi input. Il API accetta entrambi PT-f7e8... e crudo f7e8... formati: il server lo rimuove automaticamente. Ma tx_hash deve essere esattamente 64 caratteri esadecimali e proof_token massimo 67 caratteri. Gli ingressi sovradimensionati ottengono un duro 400.
3. Verificare entro 30 minuti. Le chiavi di prova scadono. Crea il tuo flusso di verifica in modo che sia immediato, senza elaborazioni batch il giorno successivo.
4. Condividi le chiavi di prova solo su canali senza metadati. Segnale (scomparendo), PGP su Tor, DM .onion. Mai discordie. Mai lento. Non inviare mai e-mail senza PGP.
5. Memorizza nella cache le prove verificate lato client. Una volta "valid": true, memorizzare il risultato. Non ripetere la verifica: stai perdendo schemi temporali e la chiave potrebbe scadere tra i controlli.
6. Distribuire la protezione nginx in produzione. Il API viene fornito con nginx_privacy_hardening.conf — Timeout di 5 secondi, 20 conn/IP, 100 req/min limitazione del gas di mare, blocco dell'attraversamento del percorso. Difesa attiva a loris lento.

Il Manifesto

𖣐 Codificalo. Provalo. Possedere l'oscurità.

Solo una mainnet oggi. Nessuna prevendita. Nessun dump di VC. Nessuna allocazione di influencer. Nessuna tesoreria di fondazione in cui 6 persone controllano il 40% della fornitura. Nessun comunicato stampa di “partenariato strategico”. Solo una catena, una comunità e una matematica che non si piega.

Ora hai tutto. Sei endpoint. Codice reale. Instradamento Tor. Ganci di segnalazione. Un modello di minaccia onesto su ciò che viene trapelato e cosa no. Chiavi di prova Quantum Kyber-768 generate dal nodo SynX: chiavi puzzle non falsificabili che decodificano importi esatti e nient'altro. Nessuna divulgazione dell'indirizzo: né con una chiave di visualizzazione, né con una chiave di prova, mai. Fuzzing del timestamp che rende l'analisi temporale statisticamente priva di significato. E al di sotto di tutto ciò, la crittografia reticolare che sopravvive a ogni attacco quantistico conosciuto, non perché siamo migrati, ma perché abbiamo iniziato da lì.

Non riveliamo mai il mittente o il destinatario perché la privacy e l'open source non possono mescolarsi per la maggior parte del tempo: è come mescolare il petrolio nel mare. Abbiamo sinergia perché lasciamo che le ombre scompaiano, non che restiamo soffocati e bloccati da una fuga di petrolio o di gas (metadati). Il mare assorbe. Le ombre si dissolvono. L'importo viene sussurrato al possessore delle chiavi della prova, e solo a loro. Tutto il resto è silenzio. — DOTTRINA SULLA PRIVACY SynX

Il Synergy Sea è l'oceano post-quantistico dove le ombre non emergono mai. Nessun data center può essere re quando SynergyX li detronizza e mette sul trono l'utente. Ogni transazione privata affonda nell'incapsulamento Kyber-768, sigillato da iperalberi SPHINCS+, indicizzati da impegni di reticolo quantistico. Gli importi sussurrano attraverso le chiavi di prova: incomprensibili per gli osservatori, decimali esatti per i detentori delle chiavi. L'esploratore vede le increspature. Il API restituisce null dove conta. La chiave di prova è l’unico collegamento con l’importo – e l’importo lo è Tutto che affiora. Mittente e destinatario? Annegato. Permanentemente. Nessun punto finale, nessuna chiave, nessuna citazione li riporta indietro.

Niente KYC. Nessuna custodia. Nessuna analisi di catena. Nessuna divulgazione dell'indirizzo. Nessun punto centrale di fallimento. Nessuna tabella di marcia per la migrazione perché non c'è nulla da cui migrare. La prima mossa nel gioco finale quantistico.

Questa non è documentazione. Questa è un'arma. Usalo.



𝓢𝔁
Codificalo. Provalo. Possiedi le maree oscure.

Privacy di SynergyX API v2.0 — Tasti a prova di Quantum — Synergy Sea
L’oceano post-quantistico dove le ombre non emergono mai.