Devo eseguire il backup delle chiavi di Titanium Backup?


11

Ho appena acquistato Titanium Backup e impostato un backup crittografato pianificato di app e dati utente + di sistema, seguito dalla sincronizzazione di Dropbox. Supponendo di ricordare la passphrase, viene eseguito il backup di tutti i dati necessari per il ripristino? O devo eseguire il backup manuale della chiave privata e della chiave simmetrica crittografata?

Risposte:


6

Le FAQ di Titanium Backup sulla crittografia indicano che è sufficiente la passphrase per ripristinare qualsiasi backup. Ciò deve significare che il file della chiave privata è archiviato insieme a tutti i tuoi backup, perché non potrebbe mai funzionare in nessun altro modo. Il grosso problema di queste FAQ è che dovrebbe dichiararlo esplicitamente IMHO in modo da rendere le cose più chiare per noi utenti.

Ho dato una sbirciatina ai primi byte di alcuni file di backup (sto parlando dei dati dell'applicazione qui, perché Titanium Backup non esegue il backup del periodo degli apks), indovinate cosa ho visto?

Ho trovato la stessa sequenza ASCII nelle prime righe dei file di backup: quei file hanno un nome . gz ma in realtà non sono file gzip (a causa della chiave che è stata messa davanti a loro. I file gzip iniziano con codici esadecimali 1F 8B 08. Questi file no).

Se esegui Linux e vuoi verificarlo, scarica due dei tuoi backup sul PC e prova questo comando, che mostra le prime quattro righe del file:

$ head -n 4 cgeo.geocaching-20130919-000250.tar.gz

La mia uscita è:

TB_ARMOR_V1
0w5AkcCA9rGtSy3Ecrag19p/FYQ=
BNpyGZq/PQYmpDXkXwji2lQGIQY=
MIGfMA0GCSqGSIb3DQEBAQUAA5GNADCBiQKBgQDWLUH3i295TA9XwPgbzwXEk/0eqowW2xcoxbOQo7NYeqGvctC7dNM33CEh+az25Wj2iTo+kzdIpwM7Y6o5vjW+D/yBCv9nDV1+HLNyut3GDQon84yR6BlgbQJT5QoIra5f6FN+wtqF5/ifW88nzuia2fUOv/IqRVQhHxIY7LPkMQIDAQAB

Abbastanza strano per un file binario, vero? A proposito, deve essere, sì, la mia chiave privata TB crittografata con la mia passphrase. Non me ne frega niente della condivisione perché avresti bisogno dei miei file di backup e anche della mia passphrase, per ottenere qualcosa di utile.

Ora, se esegui, esegui lo stesso comando su un altro file di backup:

$ head -n 4 com.amazon.kindle-20130919-000004.tar.gz

Indovina un po? Avrai la stessa cosa!

TB_ARMOR_V1
0w5AkcCA9rGtSy3Ecrag19p/FYQ=
BNpyGZq/PQYmpDXkXwji2lQGIQY=
MIGfMA0GCSqGSIb3DQEBAQUAA5GNADCBiQKBgQDWLUH3i295TA9XwPgbzwXEk/0eqowW2xcoxbOQo7NYeqGvctC7dNM33CEh+az25Wj2iTo+kzdIpwM7Y6o5vjW+D/yBCv9nDV1+HLNyut3GDQon84yR6BlgbQJT5QoIra5f6FN+wtqF5/ifW88nzuia2fUOv/IqRVQhHxIY7LPkMQIDAQAB

Questa semplicemente non potrebbe essere una coincidenza. :) Da un certo punto in poi tutto nei file di backup diventa finalmente binario. Questo comportamento ha molto senso perché ciò significherebbe che possiamo solo condividere i file di backup e dimenticare tutto - con la passphrase, possiamo recuperare i nostri backup, punto.

Tuttavia, penso davvero che lo sviluppatore dovrebbe documentare una procedura su come recuperare i nostri dati legittimi (conosciamo la passphrase, quindi siamo noi!) Da qualsiasi computer con un set di strumenti crittografici decente (leggi: OpenSSL ).


non è così folle archiviare le chiavi nell'intestazione dei file, ma normalmente non sono le stesse chiavi. normalmente hai una chiave di crittografia dei file (FEK, è una per file) che viene memorizzata nell'intestazione del file e viene crittografata dalla chiave principale. normalmente anche la chiave master viene generata usando la passphrase in modo da reindirizzare la passphrase attraverso alcuni SHA o meglio bcrypt o scrypt o PBKDEF2 e ottenere la chiave privata da quello. quindi in realtà memorizzi solo i FEK e i metadati come la lunghezza della chiave nei file.
Schwertspize,

1
Ciò significa che avere una chiave di crittografia più forte della passphrase è inutile.
Danilo Bargen,

4

Come suggerisce @Dakatine, la chiave principale è anticipata sul file, che viene quindi concatenato dal contenuto crittografato.

Non mi sono preoccupato di ricercare il formato di file TB_ARMOR_V1, perché qualcuno ha già creato uno strumento da riga di comando python https://github.com/phyber/TiBUdecrypter


1

Hai solo bisogno di ricordare la passphrase. L'ho già fatto prima.

Se sei preoccupato, puoi sempre creare un backup nandroid dell'intero sistema, quindi cancellare e installare una rom personalizzata. Installa TB e prova a ripristinare un'app con una passphrase. Se ha bisogno di qualcosa che ti manca, allora hai la tua risposta e puoi tornare al recupero e ripristinare il nandroid. Ma come ho già detto, ho già fatto questo processo e so che la password è tutto ciò che è necessario.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.