49 Commits

Author SHA1 Message Date
Nick Parker
45235df3f7 Adding tests for checking the cipher PRAGMA 2012-11-06 12:24:30 -06:00
Nick Parker
9c94733fb3 Adding tests for checking initial value and changes to the following
PRAGMAs: cipher_use_hmac, cipher_default_use_hmac, kdf_iter, cipher_page_size
2012-11-06 12:17:40 -06:00
Stephen Lombardo
48215584ab bump version to 2.1.0 due to functional change in hmac calculation 2012-07-18 14:50:47 -04:00
Stephen Lombardo
971933cd82 remove unecessary copy commands from test 2012-07-18 12:34:32 -04:00
Stephen Lombardo
f1ea44e3ef pragma allows le, be, or native pgno ordering plus tests 2012-07-18 11:21:12 -04:00
Stephen Lombardo
cc0e8be7a3 explicit test for opening 2.0 format db with hmac 2012-07-09 23:03:01 -04:00
Stephen Lombardo
6dbdd4663c bump to 2.0.6 2012-06-13 16:27:09 -04:00
Stephen Lombardo
2b7a28fd12 tests for large schemas and behavior with auto vacuum enabled 2012-06-13 13:17:17 -04:00
Stephen Lombardo
ac8385cb14 basic tests for autovacuum 2012-05-18 10:45:41 -04:00
Stephen Lombardo
07321926ba round out rekey tests for WAL 2012-05-18 02:38:25 -04:00
Stephen Lombardo
c2f7cd7926 enable secure delete on all encrypted databases 2012-05-18 02:22:40 -04:00
Stephen Lombardo
0e8cdf4b25 test for rekey after a large delete 2012-05-17 19:07:57 -04:00
Stephen Lombardo
8a734f2219 expand rekey tests 2012-05-17 17:29:01 -04:00
Nick Parker
525243c689 Adding PRAGMA cipher_version to identify the current SQLCipher version,
also including test.
2012-05-17 07:59:43 -05:00
Stephen Lombardo
8f061f1a50 add pragma cipher_default_use_hmac to toggle global HMAC setting 2012-02-29 11:14:42 -05:00
Stephen Lombardo
cdfd2a3d3a ensure that pragmas don't do anything unless a context is initialized on the db 2012-01-18 00:15:01 -05:00
Stephen Lombardo
f963c3e48c test for use of raw key with attached database 2012-01-13 09:51:19 -05:00
Stephen Lombardo
1a3e1c793d tests for vacuum behavior on encrypted databases 2012-01-13 02:10:15 -05:00
Stephen Lombardo
f7591e02fe rework hmac key derivation based on low iteration PBKDF2 with static salt mask 2012-01-12 23:42:55 -05:00
Stephen Lombardo
9c0dd8d449 improved HMAC key derivation
- ensure that the HMAC key derivation salt is different from
  that used to generate the encryption key
- allow the number of pbkdf2 iterations used for HMAC key
  derivation to be configured at runtime via pragma
2012-01-03 17:26:44 -05:00
Stephen Lombardo
a2a54885df add test for behavior with multiple key operations 2011-12-27 12:14:17 -05:00
Stephen Lombardo
f8bf2b1cce set meaningful test names 2011-12-27 12:01:47 -05:00
Stephen Lombardo
efe8c324c5 Merge branch 'v2beta' of github.com:sjlombardo/sqlcipher into v2beta
Conflicts:
	test/crypto.test
2011-10-12 14:25:36 -04:00
Stephen Lombardo
50c0ed42af SQLC-6: ensure proper behavior of sqlcipher_export() on virtual tables (i.e. FTS3) 2011-08-17 14:15:32 -04:00
Stephen Lombardo
56fa635aff SQLC-1: fix behavior for PRAGMA rekey being called as first operation or before PRAGMA key 2011-08-17 14:00:36 -04:00
Stephen Lombardo
55692c9b4e update to export test for large database and FTS3 virtual tables 2011-05-20 22:11:19 -04:00
Stephen Lombardo
f1ebbc0d6c add explicit test for WAL journal mode operation 2011-05-08 22:31:37 -04:00
Stephen Lombardo
92e4ad7436 implementation of sqlcipher_export() function to copy schema and data between databases 2011-04-14 16:44:29 -04:00
Stephen Lombardo
76c1e11fe3 refactoring encryption interface so codec interface is separate from crypto implementation 2011-03-02 13:15:13 -05:00
Stephen Lombardo
9c7104eeb9 fix comments in test suite 2011-02-19 14:45:30 -05:00
Stephen Lombardo
8cf3ad8e1e add test to verify that you attach and copy from non-hmac database to new format 2011-02-17 16:16:30 -05:00
Stephen Lombardo
dd911f3023 add a test to verify that it is possible to open a 1.1.8 database when changing cipher_use_hmac pragma 2011-02-17 11:50:24 -05:00
Stephen Lombardo
b62c74407a improvements to pragmas, allow custom page sizes and page data checks via hmac
- now possible to set custom page size using PRAGMA cipher_page_size = N;
- allow custom pragmas to be used on attached databases
- perform hmac on page ciphertext and IV before decryption
2011-02-16 16:07:20 -05:00
Stephen Lombardo
c10960834f fix issue where it wasn't possible to ATTACH an unencrypted database 2010-02-25 11:58:56 -05:00
Stephen Lombardo
b38a9d20a2 fix initialization of OpenSSL so an encrypted database can be attached to a non-encrypted main database; add test for the same 2009-12-23 21:45:51 -05:00
Stephen Lombardo
0e55063b10 remove rekey-plaintext test, not supported on master 2009-12-19 16:10:53 -05:00
Stephen Lombardo
75eeefc0bc alter crypto test 1.9 to add several thouand tables to create a schema parse error on improper rekey 2009-08-11 17:57:57 -04:00
Stephen Lombardo
84e17044df sqlcipher compatibility changes for upstream 3.6.17 2009-08-11 16:49:37 -04:00
Stephen Lombardo
0acb34a113 Refactoring to allow algorithm selection and other prameters to be set at runtime
- add kdf_iter, cipher, rekey_kdf_iter, and rekey_cipher PRAGMAs to allow changing parameters
- introduction of cipher_ctx struct to store relavent cipher details for separate read and write operations
- simplified sqlite3Codec to make more understandable
- simplify encryption code for first database page
- simplify sqlite3_key and sqlite3_rekey, they now operate only on the main database only
- documentation updates for supporting functions
- reorganize tests to remove interdependencies between tests where possible
- add tests for converting between different ciphers
2009-06-07 22:51:43 -04:00
Stephen Lombardo
0cc240ac78 support BLOB syntax for specifying binary keys 2009-04-22 16:22:08 -04:00
Stephen Lombardo
1d25ff34fe add test coverage for schema alterations 2009-04-22 11:52:03 -04:00
Stephen Lombardo
543220f2e7 added test coverage for locking across multiple database handles 2009-04-22 11:37:38 -04:00
Stephen Lombardo
4e87eca3ae fix up closing of dbs after each test 2009-04-22 11:27:52 -04:00
Stephen Lombardo
f20d127e83 expanded test for making changes to ATTACHED databases 2009-04-22 11:20:54 -04:00
Stephen Lombardo
309deae4f6 Cache provided raw key data to provide to other attached databases; Add test case for attached DBs 2009-04-22 09:21:52 -04:00
Stephen Lombardo
cfd52b7436 implement test of in memory databases 2009-04-22 08:54:33 -04:00
Stephen Lombardo
3fd228f5a3 First attempt at JIT salt and key data derivation 2009-04-21 21:50:54 -04:00
Stephen Lombardo
9a13dce6d4 initial implementation of PBKDF2 using SHA256 for key derivation 2009-04-21 16:32:07 -04:00
Stephen Lombardo
7b9260a6e9 renamed codec.* to crypto.* for clarity 2009-02-20 17:26:13 -05:00