2011-02-01 62 views
3

我正在探索第三方應用程序的數據庫,我想知道是否有可能推斷出如何解碼SQLite數據庫中的BLOB,如果你不知道存儲在BLOB?解碼SQLite數據庫中的BLOB

有什麼辦法或有工具可以解決這個問題嗎?

回答

3

有什麼辦法或有工具可以解決這個問題嗎?

BLOB是二進制數據(即一行字節)。如果你不知道這些字節是什麼意思,你往往是你自己的。

有許多方法可以重建數據格式(這些逆向工程方法與用於解讀未知文件格式的方法相關),但是沒有進一步的信息,存儲在二進制BLOB中的內容相當困難,所以我只能給出一些模糊的提示:

  • 想想:如果你要編碼存儲在BLOB數據程序員 - 你會怎麼做呢?通常使用的方式是類似的
  • 查看數據的第一個字節 - 通常它告訴它可能是什麼文件格式(有很多可用文件格式的「幻數」的文檔);也不要忘記查看數據是否可以被壓縮(即查找zlib頭,因爲zlib通常用於壓縮)
  • 如果合法(取決於您所在的國家/地區),通常會使用逆向工程工具IDA Pro或如果不提供一個很好的調試器來看看什麼程序讀取
+0

這不是我希望的答案,但感謝寶貴和有用的信息!我現在知道下一步該怎麼做。謝謝,Nubok! – 2011-02-01 12:35:39

3

如果你BLOB保存到文件後,用BLOB數據的確,你可以使用Unix file命令來確定什麼樣的數據存儲在其中。

+0

謝謝,丹。這是一個我不知道的有用命令! – 2011-02-03 10:13:04