TY - JOUR
T1 - Recovering SQLite data from fragmented flash pages
AU - Zhang, Li
AU - Hao, Shengang
AU - Zhang, Quanxin
N1 - Publisher Copyright:
© 2019, Institut Mines-Télécom and Springer Nature Switzerland AG.
PY - 2019/8/1
Y1 - 2019/8/1
N2 - As a small-sized database engine, SQLite is widely used in embedded devices, such as mobile phones and PDAs. Large amounts of sensitive personal data are stored in SQLite. Any unintentional data deletion or unexpected device damage can cause considerable loss to the owners of the data. Therefore, in these cases, it is necessary to be able to recover and extract SQLite data records from the flash memory of portable devices. However, most existing SQLite recovery studies take the database file as the research subject, while it is not possible to acquire an intact database file when the flash memory controller is damaged. This paper presents a new method to recover SQLite data records from fragmented flash pages. Instead of investigating the whole *.db file or the journal file, the suggested method focuses on the analysis of B-Tree leaf page structure, which is the basic storage unit, to locate and extract existing and deleted data records based on the structures of the page header and cells in the leaf page, and then uses the SQLite_master structure to translate hex data records into meaningful SQLite tables. The experimental results show that this new method is effective regardless of which file system is used.
AB - As a small-sized database engine, SQLite is widely used in embedded devices, such as mobile phones and PDAs. Large amounts of sensitive personal data are stored in SQLite. Any unintentional data deletion or unexpected device damage can cause considerable loss to the owners of the data. Therefore, in these cases, it is necessary to be able to recover and extract SQLite data records from the flash memory of portable devices. However, most existing SQLite recovery studies take the database file as the research subject, while it is not possible to acquire an intact database file when the flash memory controller is damaged. This paper presents a new method to recover SQLite data records from fragmented flash pages. Instead of investigating the whole *.db file or the journal file, the suggested method focuses on the analysis of B-Tree leaf page structure, which is the basic storage unit, to locate and extract existing and deleted data records based on the structures of the page header and cells in the leaf page, and then uses the SQLite_master structure to translate hex data records into meaningful SQLite tables. The experimental results show that this new method is effective regardless of which file system is used.
KW - B-Tree leaf page
KW - Data recovery
KW - Fragmented flash pages
KW - SQLite database
KW - SQLite_master
UR - http://www.scopus.com/inward/record.url?scp=85068826414&partnerID=8YFLogxK
U2 - 10.1007/s12243-019-00707-9
DO - 10.1007/s12243-019-00707-9
M3 - Article
AN - SCOPUS:85068826414
SN - 0003-4347
VL - 74
SP - 451
EP - 460
JO - Annales des Telecommunications/Annals of Telecommunications
JF - Annales des Telecommunications/Annals of Telecommunications
IS - 7-8
ER -