PublicSafe
Il tuo browser, il tuo spazio sicuro
PublicSafe è un'estensione del browser gratuita e open-source incentrata su privacy, crittografia e controllo dell'utente. Fornisce strumenti di crittografia lato client progettati per aiutare gli utenti a proteggere le informazioni sensibili prima che lascino il loro browser. PublicSafe è costruito su trasparenza, sicurezza, accessibilità e sviluppo guidato dalla comunità.
Il progetto segue una filosofia privacy-first con un design a conoscenza zero, gestione locale delle chiavi e codice open-source che può essere verificato in modo indipendente da chiunque.
Obiettivi
- Proteggere la privacy dell'utente tramite crittografia lato client.
- Dare agli utenti il controllo completo sulle loro chiavi di crittografia.
- Fornire strumenti di sicurezza semplici e facili da usare.
- Mantenere la trasparenza attraverso lo sviluppo open-source.
- Supportare i browser moderni tramite una base di codice condivisa.
- Eliminare raccolta dati e telemetria non necessarie.
- Creare strumenti di privacy accessibili a tutti.
Caratteristiche
Funzionalità di crittografia
- Crittografia lato client prima della trasmissione dei dati.
- Supporto crittografia AES-256-GCM.
- Supporto scambio chiavi X25519.
- Supporto firma digitale Ed25519.
- Crittografia e decrittografia sicura del testo.
- Crittografia di note sicure.
- Generazione di messaggi crittografati.
- Strumenti per la condivisione di dati crittografati.
- Utility per l'archiviazione sicura di segreti.
- Verifica dell'integrità della crittografia.
- Utility di hashing SHA-256.
- Supporto crittografia basata su password.
- Derivazione chiave tramite PBKDF2.
- Supporto Argon2id dove disponibile.
Funzionalità di protezione del browser
- Strumenti di crittografia integrati nel browser.
- Utility di crittografia dei dati dei moduli.
- Crittografia e decrittografia sicura degli appunti.
- Protezione per input sensibili nel browser.
- Flussi di lavoro sicuri di copia e incolla.
- Dashboard privacy del browser.
- Monitoraggio dello stato di sicurezza.
- Indicatori di attività di crittografia.
- Controlli privacy a livello di sito.
- Gestione dei siti fidati.
- Notifiche di sicurezza.
Funzionalità di protezione dei file
- Crittografia locale dei file.
- Decrittografia locale dei file.
- Esportazione di file crittografati.
- Importazione di file crittografati.
- Preparazione sicura per la condivisione di file.
- Supporto crittografia di file di grandi dimensioni.
- Elaborazione di più file.
- Verifica dell'integrità per file crittografati.
Funzionalità di gestione delle chiavi
- Generazione locale di chiavi.
- Gestione di chiavi pubbliche e private.
- Strumenti di importazione ed esportazione chiavi.
- Backup crittografati delle chiavi.
- Generazione di chiavi di ripristino.
- Supporto rotazione chiavi.
- Supporto per più identità.
- Archiviazione sicura delle chiavi.
Funzionalità di privacy
- Architettura a conoscenza zero.
- Nessun account utente obbligatorio.
- Nessuna archiviazione centralizzata delle chiavi.
- Nessuna telemetria.
- Nessun tracciamento.
- Nessuna raccolta di analytics.
- Design local-first.
- Crittografia controllata dall'utente.
- Modello di sicurezza trasparente.
- Auditabilità aperta.
Funzionalità di esperienza utente
- Configurazione con un clic.
- Onboarding guidato.
- Flussi di crittografia semplici.
- Design incentrato sull'accessibilità.
- Supporto navigazione da tastiera.
- Interfaccia utente reattiva.
- Supporto modalità scura.
- Supporto modalità chiara.
- Indicatori di sicurezza intuitivi.
- Requisiti di configurazione minimi.
Supporto browser
- Google Chrome
- Chromium
- Microsoft Edge
- Mozilla Firefox
- Brave
- Opera
- Vivaldi
Funzionalità per sviluppatori
- Codebase TypeScript.
- Architettura modulare.
- Integrazione Web Crypto API.
- Supporto Manifest V3.
- Livello di astrazione API dell'estensione.
- Test automatizzati.
- Supporto integrazione continua.
- Pratiche di sviluppo incentrate sulla sicurezza.
- Struttura del progetto adatta ai contributori.
- Documentazione completa.
Stack tecnologico
Frontend
- TypeScript
- HTML5
- CSS3
- Web Components
- Manifest V3
Crittografia
- Web Crypto API
- AES-256-GCM
- X25519
- Ed25519
- SHA-256
- PBKDF2
- Argon2id (dove supportato)
Archiviazione
- IndexedDB
- API di archiviazione del browser
- Architettura local-first
Strumenti di sviluppo
- Vite
- ESLint
- Prettier
- Vitest
- Playwright
- GitLab CI/CD
Documentazione
- Markdown
- Specifiche OpenAPI
- Generazione automatica della documentazione
Principi di sicurezza
- Privacy per impostazione predefinita.
- Sicurezza by design.
- Trasparenza open-source.
- Architettura a conoscenza zero.
- Proprietà locale delle chiavi.
- Nessun servizio cloud obbligatorio.
- Nessuna raccolta di dati nascosta.
- Decisioni di sicurezza controllate dall'utente.
- Codebase pubblicamente verificabile.
Contribuire
Contributi, segnalazioni di bug, richieste di funzionalità, miglioramenti alla documentazione, miglioramenti dell'accessibilità e revisioni di sicurezza sono benvenuti.
Si prega di rivedere le linee guida per contribuire del progetto prima di inviare pull request.
Specifica della Licenza di Branding (SBL)
Standard
- Sistema pienamente conforme ad AGPL-3.0+
- Copyleft applicato per distribuzioni di rete
- Attribuzione richiesta:
Opzionale
- Specifica della Licenza di Branding (SBL)
Licenza e requisiti delle note
PublicSafe è rilasciato sotto la GNU Affero General Public License v3.0 o successiva (AGPL-3.0+).
Contribuendo a questo progetto, accetti che i tuoi contributi siano anch'essi rilasciati sotto questa licenza.
Si prega di notare quanto segue:
- Tutti i contributi devono rispettare i termini della AGPL-3.0+.
- Ai sensi della Sezione 7 della licenza, tutte le ridistribuzioni, i fork e le opere derivate devono preservare l'attribuzione a:
Roxanne Ardary e roxanneardary.com.
- Le specifiche di PublicSafe sono liberamente utilizzabili con attribuzione. È possibile richiedere una Specifica della Licenza di Branding.
- Il file notice.md del progetto tiene traccia dei requisiti di attribuzione e dei riconoscimenti dei contributori.
Qualsiasi aggiornamento che aggiunga nuovi contributori o modifichi l'attribuzione dovrebbe aggiornare anche notice.md.
- Quando si invia una pull request, assicurarsi che tutti i nuovi file mantengano le intestazioni di attribuzione dove applicabile.
- Le versioni del software distribuite in rete devono rimanere pienamente conformi ad AGPL-3.0+, inclusa la divulgazione delle modifiche al codice sorgente quando applicabile ai sensi della licenza.
Per i dettagli legali completi, fare riferimento alla licenza AGPL-3.0+ e al file notice.md del progetto.
Open Arsenal Hub
https://gitlab.com/Roxanne_Ardary/open-arsenal-specs