What's new

How to exfil SMS from sms.db?


Mar 15, 2013
Reaction score
I'd like to extract SMS and iMessage data from sms.db file on my iPhone. I was able to locate and download the file from the iPhone (/var/mobile/Library/SMS/sms.db) to my computer.

If I start SQLite Database Browser on the computer and load sms.db file, no data is displayed. If I run an SQL query, the error "file is encrypted or is not a database" is displayed. The file is not encrypted, as I can see the text in any plain text viewer (the contents start with "SQLite format 3").

So, how can I export the data from the database into a nice readable format (plain text or spreadsheet)?
DiskAid (free) does this as well as iExplorer (free and paid version available). If you want them to be transferred without a utility medium like DiskAid or iExplorer, you can try Messages2PDF ($1.89)
I know about iExplorer and DiskAid, as well as TouchCopy. They all have one thing in common - they're free for "evaluation", but if you want to do anything serious (such as exporting messages to a computer), you need to purchase a license. Otherwise you're limited to viewing only, or exporting just a small number of items.

I find it a bit insulting that you can't get all those basic options for free (say via iTunes). I'm definitely not willing to pay anything for a 3rd party tool. :( These were features available by default in most pre-smart-phones' desktop software I used between 2000 and 2007.

That's why I was looking into other options such as extracting messages from sms.db. I'm pretty sure it can be done. I hope someone can find a solution. Earlier today I came across these two articles:

Export iPhone Text Messages to a Spreadsheet

It's all fine, except that I get the error "file is encrypted or is not a database". I guess it's something they changed in iOS 7 (as those articles are rather old) with (a part of?) sms.db format.