Interessante il concetto di conoscenza zero, l'avevo sempre ridotto alla crittografia a-simmetrica ma l'uomo è sempre avanti e chi hanno fatto teorie hanno un loro fascino.
Immagino voi vi limitiate a crittografare il contenuto con una qualche funzione crittografica con chiave in possesso dell'utente, da una parte garantisce la sicurezza dei dati e dall'altre espone l'utente a perdita di dati qualora perdesse la password (o sbaglio?).
Ma scrivo per sapere se l'applicazione sarà o è open source o, meglio, libera ...
In bocca al lupo.
[/quote]
Quando crei un account, puoi scegliere tra tre diversi livelli di sicurezza: Simple, Medium and Advanced.
Simple
Classico username + password. Tutti i tuoi dati sono criptati utilizzando AES e la hash della tua password.
Questa non è una soluzione zero-knowledge, perchè noi di Tapeke possiamo ripristinare il tuo account se perdi la password, ed è pensata per i newbies, a cui in seguito verranno fornite istruzioni su come aumentare il livello di sicurezza passando a Medium o Advanced.
Medium
Username + password, ma questa volta si tratta di una soluzione zero-knowledge, poichè i dati vengono criptati (AES) nel tuo browser prima di essere salvati sul server.
Come giustamente hai detto, se perdi la password noi non possiamo fare nulla.
Advanced
Username + password + RSA keys.
I tuoi dati vengono criptati con una passphrase (116 caratteri random generati nel browser). La passphrase è salvata nei nostri server, a sua volta criptata con chiavi RSA.
Long story short: per effettuare il login hai bisogno solo di username e password, perchè le chiavi RSA sono salvate nei tuo browser.
Al contrario di Medium e Simple, in questo caso devi manualmente autorizzare ogni singolo device in cui vuoi utilizzare l'app (un altro browser, un altro pc, etc). Ogni device ha delle chiavi RSA dedicate.
-----------
L'idea dietro a questi diversi livelli di sicurezza è insegnare agli utenti come proteggere i loro dati. Puoi iniziare con la Simple, e piano piano imparerai e farai l'upgrade a Medium e Advanced.
Ma scrivo per sapere se l'applicazione sarà o è open source o, meglio, libera ...
In bocca al lupo.
Al momento è closed source, perchè la lanceremo solo in Private Beta e in seguito Public Beta.
Vogliamo testare il nostro protocollo e capire se c'è qualcosa da aggiungere / togliere / modificare.
Quando sarà lanciata la versione 1.0, renderemo open source (licenza AGPL) il protocollo di sicurezza, così chiunque potrà verificare, e magari altre applicazioni seguiranno l'esempio e garantiranno full privacy ai propri utenti.
Grazie per le domande!