2014-12-12 9 views
5

Sta utilizzando i dati principali?In che modo il database locale di analisi memorizza i propri dati?

I dati sono crittografati in alcun modo? C'è un modo in cui un utente può modificarlo maliziosamente facilmente?

Ho cercato di cercare questa risposta da quando LDB è stato annunciato per iOS, e non ho trovato alcuna informazione riguardo a questo oltre "è proprio come la nostra implementazione Android". Se queste informazioni sono archiviate in testo in chiaro, non posso memorizzare informazioni sensibili in esso, motivo per cui vorrei sapere.

risposta

9

Ho appena creato un'applicazione che utilizza il database locale ed ecco cosa ho trovato.

All'interno di <app sandbox directory>/Library/Private Documents/Parse è presente un file denominato ParseOfflineStore. Questo è un database SQLite. All'interno sono presenti 2 tabelle pertinenti (ParseObjects e Dependencies) e gli oggetti aggiunti sono memorizzati all'interno di ParseObjects.

per rispondere alle vostre domande:

1) No, non utilizza CoreData, ma è SQLite (lo stesso negozio di db di supporto nel modo CoreData).

2) No, non è crittografato. È chiaro, memorizzato nella tabella ParseObjects, nella colonna json come cleartext json.

Sarebbe relativamente banale per chiunque possa collegare iExplorer all'app per scaricare, modificare e caricare il database locale. Tuttavia, se si dispone di un utente in grado di farlo, è probabile che potrebbero comunque eseguire il proxy della tua app con Charles ;-)

+0

Questo era esattamente quello che stavo cercando, anche io non ho mai sentito parlare di Charles. Ti riferisci a questo? http://www.charlesproxy.com/ – user3721428

+0

@ user3721428 Sì. – rickerbh

Problemi correlati