51 lines
1.7 KiB
Plaintext
51 lines
1.7 KiB
Plaintext
=====================
|
|
Fingerprint Index
|
|
=====================
|
|
|
|
-------------
|
|
INTRO
|
|
-------------
|
|
Why:
|
|
The purpose of the database fingerprint index is for speed and quick statistics. The
|
|
current number of fingerprints that I have created is ~ 180. In the future it likely
|
|
that our fingerprints will be > 1000. The index is designed for the future.
|
|
|
|
Where:
|
|
A sqlite database (_index_dbfp.db) is populated with index data. The current design
|
|
expects the index file to be located in the same directory as all the fingerprints.
|
|
|
|
How:
|
|
To create the index each fingerprint is read and unique hash values are inserted
|
|
into the index database along with the fingerprint file name. The current design
|
|
expects all fingerprint files to be in one dirctory. The fingerprint names are
|
|
created uniquely and should never have a collision.
|
|
|
|
|
|
-------------------
|
|
INDEX DB SCHEMA
|
|
-------------------
|
|
|
|
[ Table: md5_all ]
|
|
md5_db TEXT PRIMARY KEY, (hash value of the database schema)
|
|
md5_list TEXT, (CSV list of md5 hash of tables within the database)
|
|
fp_list TEXT, (CSV list of fingerprint file names)
|
|
fp_count INTEGER); (count of the fingerprints)
|
|
|
|
|
|
[ Table: md5_table ]
|
|
md5_table TEXT PRIMARY KEY, (hash value of the table schema)
|
|
fp_list TEXT, (CVS list of fingerprint file names)
|
|
fp_count INTEGER); (count of the fingerprints)
|
|
|
|
*
|
|
* The md5_db is not a primary key, is not unique because it is for each app info
|
|
*
|
|
[ Table: metadata ]
|
|
md5_db TEXT, (hash value of the database schema)
|
|
app_name TEXT, (name of the app)
|
|
app_ver TEXT, (version of the app)
|
|
db_file TEXT, (file name of the database scanned)
|
|
fp_file TEXT, (file name of the fingerprint)
|
|
scan_date TEXT); (date the db was scanned)
|
|
|