As perguntas frequentes do Titanium Backup sobre criptografia afirmam que você só precisa da senha para recuperar qualquer backup. Isso deve significar que o arquivo de chave privada é armazenado junto com todos os seus backups, porque nunca poderia funcionar de outras maneiras. O grande problema com essa FAQ é que ele deve declarar isso IMHO explicitamente, para tornar as coisas mais claras para nós, usuários.
Dei uma olhada nos primeiros bytes de algum arquivo de backup (estou falando dos dados do aplicativo aqui, porque o Titanium Backup não faz backup de períodos de apks), adivinhem o que eu vi?
Encontrei a mesma sequência ASCII nas primeiras linhas dos arquivos de backup: esses arquivos são nomeados como algo. gz, mas na verdade não são arquivos gzip (por causa da chave que foi colocada na frente deles. Os arquivos gzip começam com os códigos hexadecimais 1F 8B 08. Esses arquivos não).
Se você executa o Linux e deseja fazer o check-out, faça o download de dois de seus backups no PC e tente este comando, que mostra as quatro primeiras linhas do arquivo:
$ head -n 4 cgeo.geocaching-20130919-000250.tar.gz
Minha saída é:
TB_ARMOR_V1
0w5AkcCA9rGtSy3Ecrag19p/FYQ=
BNpyGZq/PQYmpDXkXwji2lQGIQY=
MIGfMA0GCSqGSIb3DQEBAQUAA5GNADCBiQKBgQDWLUH3i295TA9XwPgbzwXEk/0eqowW2xcoxbOQo7NYeqGvctC7dNM33CEh+az25Wj2iTo+kzdIpwM7Y6o5vjW+D/yBCv9nDV1+HLNyut3GDQon84yR6BlgbQJT5QoIra5f6FN+wtqF5/ifW88nzuia2fUOv/IqRVQhHxIY7LPkMQIDAQAB
Muito estranho para um arquivo binário, não é? A propósito, deve ser, sim, minha chave privada TB codificada com minha senha. Eu não dou a mínima para compartilhá-lo porque você precisaria dos meus arquivos de backup e da minha senha também para obter qualquer coisa útil.
Agora, se você executar, execute o mesmo comando em um arquivo de backup diferente:
$ head -n 4 com.amazon.kindle-20130919-000004.tar.gz
Adivinha? Você receberá o mesmo s * it!
TB_ARMOR_V1
0w5AkcCA9rGtSy3Ecrag19p/FYQ=
BNpyGZq/PQYmpDXkXwji2lQGIQY=
MIGfMA0GCSqGSIb3DQEBAQUAA5GNADCBiQKBgQDWLUH3i295TA9XwPgbzwXEk/0eqowW2xcoxbOQo7NYeqGvctC7dNM33CEh+az25Wj2iTo+kzdIpwM7Y6o5vjW+D/yBCv9nDV1+HLNyut3GDQon84yR6BlgbQJT5QoIra5f6FN+wtqF5/ifW88nzuia2fUOv/IqRVQhHxIY7LPkMQIDAQAB
Isso simplesmente não poderia ser uma coincidência. :) A partir de um certo ponto, tudo nos arquivos de backup finalmente se torna binário. Esse comportamento faz muito sentido, porque isso significa que só podemos compartilhar os arquivos de backup e esquecer tudo - com a senha, podemos recuperar nossos backups, ponto final.
Ainda assim, eu realmente acho que o desenvolvedor deve documentar um procedimento sobre como recuperar nossos próprios dados legítimos (conhecemos a senha, então somos nós!) De qualquer computador com um conjunto decente de ferramentas de criptografia (leia-se: OpenSSL ).