Sicurezza e trasparenza
I tuoi soldi stanno in un contratto che puoi leggere
Quando compri su Bernuvia, Bernuvia non custodisce i tuoi USDC: restano in un contratto pubblico su Polygon finché l'acquisto non si chiude. Qui trovi gli indirizzi, cosa garantisce il contratto, l'audit che ha superato, e quello che ancora non ha fatto, e come avvisarci se trovi una falla.
I contratti
Tutto gira sulla rete principale di Polygon (chain id 137). Ogni indirizzo rimanda all'explorer: lì puoi leggere il codice e ogni transazione.
Contratto di deposito · MarketplaceEscrow
Codice verificatoRiceve il pagamento dell'acquirente e lo trattiene finché non viene rilasciato al venditore o rimborsato. È l'unico posto in cui stanno i soldi di un acquisto.
Codice sorgente verificato su Polygonscan (corrispondenza esatta). Solidity 0.8.24, ottimizzatore a 200 run, costruito su OpenZeppelin: AccessControl, ReentrancyGuard, Pausable, SafeERC20 ed EIP-712.
Indirizzo 0x33C6eFD7523821c2AB51d874e440Ac8A0C97f409
Addebito dell'abbonamento · SubscriptionCollector
Codice verificatoAddebita l'abbonamento da venditore in USDC con limiti fissati on-chain: il venditore fissa un prezzo massimo e un periodo, e l'operatore può addebitare solo fino a quel massimo, una volta per periodo e sempre alla tesoreria. Cambiare la tesoreria richiede 48 ore.
Codice sorgente verificato su Polygonscan (corrispondenza esatta, licenza MIT). Vive nello stesso repository del contratto di deposito, con lo stesso compilatore e la stessa base OpenZeppelin.
Indirizzo 0x3860f37D6066AF02811b24FE66D0bd00F693AD21
USDC · Circle
Contratto di terziLa valuta di tutti gli acquisti: l'USDC nativo di Circle su Polygon. Non è un contratto di Bernuvia.
Indirizzo 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359
Cosa garantisce il contratto di deposito
Queste regole non le applica un server di Bernuvia: sono scritte nel contratto, e chiunque può verificarle nel codice verificato.
I soldi non passano mai da Bernuvia
Gli USDC vanno dal wallet dell'acquirente direttamente al contratto. Bernuvia non li custodisce in nessun momento.
Solo due uscite
I soldi di un acquisto possono solo essere rilasciati al venditore o rimborsati all'acquirente. Non c'è una terza via.
Ognuno preleva il suo
I pagamenti vengono accreditati e ciascuna parte li preleva quando vuole. Un indirizzo bloccato non può inceppare gli incassi degli altri.
La controversia, prima del rilascio
Una controversia si può aprire solo prima che scada il rilascio automatico, così nessuno può riaprire un acquisto già chiuso.
Una controversia non resta appesa
Se una controversia resta 30 giorni senza soluzione, chiunque può chiuderla e il contratto rimborsa per intero l'acquirente.
La commissione ha un tetto on-chain
Il massimo della commissione è governato nel contratto, e ogni preventivo deve restare sotto quel tetto.
Scadenze limitate
La finestra di rilascio automatico è limitata nel contratto tra 1 ora e 365 giorni; acquirente e venditore non possono mai essere lo stesso indirizzo.
Preventivi firmati e monouso
Ogni prezzo è firmato con EIP-712 e vale una volta sola. Nella revisione non è stata trovata alcuna via per rubare il capitale né per riutilizzare una firma.
Audit
Il contratto di deposito ha superato un audit interno adversariale prima di uscire sulla rete principale. Questo è esattamente ciò che è stato fatto e ciò che è stato trovato.
Metodo
- Tre revisioni adversariali indipendenti, ognuna con la sua lente: fondi e reentrancy; controllo degli accessi e firme; macchina a stati e griefing.
- Analisi statica con Slither 0.11.5.
- Un'invariante di conservazione dei fondi verificata su 250 operazioni casuali.
- 18 test in Hardhat, con uno di regressione per ogni rilievo.
Rilievi
9 rilievi: 1 critico, 1 alto, 3 medi, 2 bassi e 2 informativi. Tutti i critici, alti e medi sono stati corretti prima del deploy sulla rete principale; i 2 bassi sono stati mitigati operativamente.
Il contratto di addebito dell'abbonamento ha superato la propria revisione interna: 15 test e 7 rilievi, tutti corretti o accettati con motivazione.
Sicurezza della piattaforma
Fuori dalla chain, ciò che protegge il tuo account e i tuoi download.
- Verifica in due passaggi, e un codice aggiuntivo per le azioni sensibili: un prelievo richiede la tua firma e un codice inviato alla tua e-mail.
- I token dell'MCP e dell'API hanno permessi limitati: non possono mai firmare un pagamento, prelevare fondi né modificare l'account.
- La tesoreria è un wallet multifirma.
- Le sessioni scadono per inattività.
- Intestazioni di sicurezza in ogni risposta: CSP con nonce per richiesta, COOP e CORP.
- Ogni download porta il suo checksum SHA-256.
Segnalare una vulnerabilità
Se trovi una falla di sicurezza, vogliamo saperlo prima di chiunque altro. Ecco come dircelo:
Scrivici dal modulo di contatto
Metti «Sicurezza» nell'oggetto e raccontaci cosa hai trovato, come riprodurlo e che impatto ha.
Se hai un account, usa la segnalazione bug del pannello
Il pulsante «Segnala un problema» del pannello arriva allo stesso team e resta legato al tuo account.
Dacci il tempo di correggere
Ti confermiamo la ricezione e ti diciamo quando è sistemato. Ti chiediamo di non pubblicarlo fino ad allora.

