Importing password data into SplashID

Way back when, so long ago I can't remember, I bought a product called Passwords Plus from DataViz. The product is an application for storing passwords, PINs, and the like, and supported Palm devices as well as providing a Windows desktop application. At the time I had a Sony Clié NR70V, which I carried everywhere with me, and so the app made sense.

Since then, of course, Palm OS devices have fallen by the wayside, and indeed the latest Palm Desktop app doesn't even support Windows Vista 64-bit which means you can no longer synchronize. So although I no longer use my Clié, I've still kept on using the Windows app, despite it getting somewhat long in the tooth. But, with 300-odd items in the database, there was no way I was going to give it up without good reason.

That reason came 10 days ago, a new iPhone 3GS. Now, I had another device that I carried around that called out for a password app (for some reason the Windows Mobile phone I had before didn't engender such feelings). So I looked online for recommendations (iPhone app, with Windows desktop app, plus sync between them, and it had better have some kind of import). After a little research, I found one: SplashID from SplashData.

The app promised import of CSV files and Passwords Plus could provide them. Pretty obviously, though, those CSV file formats would be different, but I'm nothing if not a programmer.

The CSV route proved abortive (the import CSV feature of SplashID was pretty limited, given the amount of configuration I'd done on the Passwords Plus data), but there was an alternative that proved better: SplashID allowed you to import data from "vid" files, usually encrypted. And if they weren't? They were a more complete CSV file format that could define all of the data that SplashID wanted. So I created an unencrypted "vid" file from my Passwords Plus data, and voilà!

The rest of this article is merely a definition of the data format of an unencrypted vid file. No need to read it if you're not interested, but it'll serve as an information repository for those who care (for instance, me, in a couple of years' time).

The unencrypted vid file is a text file, with most records comprising comma-separated values. There are four sections. First is the file header record: "SplashID vID File -v3.0". The next record consists of a single "F". I think this is something to do with the password to the file, since if I leave it out, I get some bizarre behavior (SplashID will ask for a password if this record is missing). Then there is a set of template or type records, followed by a set of data records. These two kinds of records can be interleaved, so long as the type record appears before a data record that uses it. Both type and data records are CSV records, with the first field being "T" for a type record, and "F" for a data record.

The fields for a type record are:

record identifier "T"
image number image number from set of type icons in app
type name Informative name/description for the type
field 1 name Usually "Name" or "Description"
field 2 name  
field 9 name  
date modified field name "Date Mod" by default
masked fields bit field denoting masked fields (field 1 uses bit 1, field 2, bit 2, etc)

The fields for a data record are:

record identifier "F"
image number image number from set of type icons in app
item name/description (this is field 1)
field 2  
field 9  
modified date Seems to use "Month dd, yyyy"
masked fields bit field denoting masked fields (field 1 uses bit 1, field 2, bit 2, etc)
custom field 1 name Default: same as type's definition
custom field 2 name Default: same as type's definition
custom field 9 name Default: same as type's definition
custom date modified field name Default: same as type's definition
category "Personal", "Business", "Unfiled", etc

The rules for CSV files apply here. If a value has an embedded comma, the whole value must be surrounded by double quotes. If the value has a double quote, the whole value is again surrounded by double quotes, and the embedded double quotes are escaped with another double quote mark. So if a value was "Mon Repos", Denver, it would be represented in the vid file as """Mon Repos"", Denver".

To create a vid file from a CSV export from Passwords Plus merely required rearranging the "columns" in the CSV file and calculating the hidden fields bit mask. (Despite my prowess as a programmer, I just used Excel this time.) To make it easy for myself later I created a type called "Imported" (and chose some icon for it). I then imported the vid file into an empty SplashID database, and then synced it with my iPhone.

(There were about 6 data records I had to futz with since Passwords Plus allows for 10 fields per record, whereas SplashID only has 8 — there are nominally 10, but 2 are taken up with the Name/Description and the modified date.)

Album cover for Tomcats Screaming Outside Now playing:
Orzabal, Roland - Hypnoculture
(from Tomcats Screaming Outside)

Loading similar posts...   Loading links to posts on similar topics...

14 Responses

#1 Tony Gray said...
08-Jul-09 1:17 AM

Hi Julian,

I have this same problem so thanks for this - BTW I wonder why DataViz are not doing a version of PW+ for iPhone? Seems odd.

Anyway, not being a programmer, I assume that what I have to do is export an unencrypted csv file from PW+ and then import this into SplashID desktop.

My problem is that all the techy stuff is a bit above me so any additional help you can give would be appreciated.

Cheers from Rutland, the smallest & most beautiful county in the UK.


julian m bucknall avatar
#2 julian m bucknall said...
08-Jul-09 1:44 PM

Tony: Not quite, no. The columns in the Passwords Plus CSV file are in the wrong order for SplashID. I'll write an additional post on what needs to be done -- best if you have Excel though.

Cheers, Julian

#3 Tony Gray said...
10-Jul-09 7:32 AM

Julian Thanks. I have Excel and can manipulate the columns etc. so look forward to your further advice.

Again thanks.


#4 Phoebus said...
21-Aug-09 1:06 PM

All of that looks fairly straightforward. What I don't get, though, is where the data records reference the type they're based upon. I don't see any field that says "type." Should there maybe be an additional field after "icon" that identifies "type?"

#5 Phoebus said...
21-Aug-09 1:13 PM

Addendum: Looks like the reference is the "image number" field. I'll go with that for now...

#6 Phoebus said...
21-Aug-09 2:34 PM

Should have known better than to post before I tried this. The template and data records must be interleaved as a data record is based on the last template record that came before it.

Took a bit of fuzzing, but I now have imported 114 records from Passwords Plus into SplashID. Thank you!

(Why didn't DataViz just create a version for the iPhone...)

julian m bucknall avatar
#7 julian m bucknall said...
21-Aug-09 3:14 PM

Phoebus: Glad you got it all sorted out. It seems like you went further that I did in templating the records. I decided to convert it all into one type, and then slowly set the real types in SplashID over a period of weeks as I reference each item.

Doing it that way also means I'm left with a whole bunch of "dead" items, for websites that no longer exist for example (AvantGo anyone?).

Cheers, Julian

julian m bucknall avatar
#8 julian m bucknall said...
21-Aug-09 3:17 PM

Pheobus: Missed the reference to DataViz and the iPhone. Dunno, but I will note that one of the versions of Passwords Plus used to support WinMo phones, but they removed it the very next version (and I had a WinMo phone at the time.) Maybe PP doesn't sell enough for them to continue improving it.

Cheers, Julian

#9 Phoebus said...
21-Aug-09 4:32 PM


I found out that the "templating" helped only a bit. I'm basically redoing most of the records now in SplashID anyway. But it helped during the transfer.

Thank you again for the primer! Just to let you know, I was searching for a good solution to transition from PP to the iPhone, and your recipe caused me to go with Splash (after unsuccessfully trying to import into other programs). They should be thankful to you too :-)

The info about the bitmask was especially helpful, I probably wouldn't have figured that field out. (Of course I got the bit order wrong the first time - it's 2 to the power of field number...)

Happy reworking your data. And thanks again!


#10 How to survive on three passwords said...
02-Feb-10 9:29 PM

Some time ago, I read in some issue of Women's Health , a magazine my wife subscribes to, that you can survive in the modern always-connected online world on just three passwords. One password for your financial institutions, one password for the

#11 John Cowles said...
25-Mar-10 3:04 PM

Any chance you have a sample excel file or template on how this looks?

I have used Passwords Plus for many years and am now switching to SplashID.

Much appreciated.


julian m bucknall avatar
#12 julian m bucknall said...
25-Mar-10 4:23 PM

John: I wrote another post on how to import the CSV file from Passwords Plus into Excel and then manipulate the columns so that they were put in the correct order for SplashID. You can find it here:

Cheers, Julian

#13 Fred Rozario said...
25-Oct-11 5:32 PM

I recently lost my SplashID data upon changing from iPhone 3GS to 4S.

I have extracted the SplashID SQL db file from an earlier iPhone backup (using the purchased PC program 'iPhone Backup Extractor'. The file is password protected. I know the password.

I have the SQLite Database browser 2.0 b1 installed on my Windows 7 PC (free download)

Do you know how I could find the SQL commands needed to output the database records to a text file, so that I can manually re-enter the data into the SplashID APP on my new iPhone 4S, (I don't want to take a class in SQLite programming, if I can avoid it) ?



#14 Tweeks said...
28-May-15 10:08 PM

Hey Fred... Good find on the .db SQL lite browser! So how di d you decrypt it to even see the data?

I'm trying to get my old Andoird splashid.db SQL list file from my old dead phone and onto SOMETHING that I can use again. It eems SplashID 6 and 7 doin't read these old SQL lite splashid.db files. Any ideas? Di dyou ever get your data out using the SQL lite browser?



Leave a response

Note: some MarkDown is allowed, but HTML is not. Expand to show what's available.

  •  Emphasize with italics: surround word with underscores _emphasis_
  •  Emphasize strongly: surround word with double-asterisks **strong**
  •  Link: surround text with square brackets, url with parentheses [text](url)
  •  Inline code: surround text with backticks `IEnumerable`
  •  Unordered list: start each line with an asterisk, space * an item
  •  Ordered list: start each line with a digit, period, space 1. an item
  •  Insert code block: start each line with four spaces
  •  Insert blockquote: start each line with right-angle-bracket, space > Now is the time...
Preview of response