Commit graph

370 commits

Author SHA1 Message Date
vishnukvmd fad5eb687d Handle incorrect sync status 2021-07-23 16:43:01 +05:30
vishnukvmd eb9de99730 Fix moar linter warnings 2021-07-23 00:11:58 +05:30
Neeraj Gupta 7826eb1fcb Merge branch 'master' of github.com:ente-io/frame 2021-07-22 15:03:51 +05:30
Neeraj Gupta 35aa74c9fd Add support for reading httpEndpoint from env 2021-07-22 15:03:01 +05:30
vishnukvmd 1ee144e413 Upgrade Sentry 2021-07-22 15:00:11 +05:30
vishnukvmd b404029029 Prevent secure storage value migrations 2021-07-22 12:37:43 +05:30
vishnukvmd 19202c37fa Migrate secure storage to wait for first unlock 2021-07-22 12:36:45 +05:30
vishnukvmd 6606ecdc91 Load images from the 18th century too 🤷 2021-07-22 02:23:51 +05:30
vishnukvmd 9f8c409f3d Fix lint warnings 2021-07-22 02:17:43 +05:30
vishnukvmd 1d9e67c6c6 Fix linter suggestions 2021-07-22 01:52:15 +05:30
vishnukvmd b23dbe1728 Remove debug endpoint 2021-07-22 01:52:15 +05:30
vishnukvmd 1389aa371b Merge branch 'master' of github.com:ente-io/frame 2021-07-12 19:56:35 +05:30
vishnukvmd ec0d4037aa Add option to disable backing up of videos 2021-07-12 17:24:43 +05:30
Neeraj Gupta 3c7c855619 Network: remove unused method 2021-07-12 16:45:58 +05:30
Neeraj Gupta 5b08816de9 Config: Connect to local server in debug mode 2021-07-12 16:45:01 +05:30
vishnukvmd 9afef180de Reformat imports 2021-07-12 04:08:12 +05:30
Vishnu 4f5755b5af Merge branch 'master' of github.com:ente-io/frame 2021-07-07 06:41:06 +05:30
Vishnu d9ce124f6b Remove unnecessary padding 2021-07-06 00:05:42 +05:30
Neeraj Gupta f685289468 [logout] clear local storage on api success only 2021-07-05 19:06:56 +05:30
Neeraj Gupta d14cbb7d97 delete token from server on logout 2021-07-05 15:01:03 +05:30
Vishnu Mohandas afb820d75b Add util to compute recovery key 2021-06-29 15:17:01 +05:30
Vishnu Mohandas bf210d18ab Enable one-shot deletes for Android 11+ 2021-06-29 00:33:53 +05:30
Vishnu f7bc1962f6 Pull out remote sync to a separate service 2021-06-14 21:54:15 +05:30
Vishnu e5756e7a78 Use URL save variant for b64 conversion 2021-06-13 15:36:25 +05:30
Vishnu Mohandas 04879370d1 Use updated verify-email endpoint to enable 2FA 2021-06-12 15:14:00 +05:30
Vishnu Mohandas c1e1a99163 Make backup folder selection skippable 2021-05-29 22:31:59 +05:30
Vishnu Mohandas b08fdeae4e Fix package header title 2021-05-23 02:36:01 +05:30
Vishnu Mohandas d3d4cf2515 Add a separate package for the independent track 2021-05-22 23:27:20 +05:30
Vishnu Mohandas 1a20fd3779 Extract constant 2021-05-21 04:48:45 +05:30
Vishnu Mohandas 22ba7e86c5 Send client version with HTTP requests 2021-05-16 14:26:20 +05:30
Vishnu Mohandas e7d13b5704 Accept password on the first screen 2021-05-09 05:29:55 +05:30
Vishnu Mohandas f7f038033b Work around hash collision #fml 2021-05-08 03:42:10 +05:30
Vishnu Mohandas 85f155fe14 Maintain disk cache for thumbnails by self 2021-05-07 20:59:33 +05:30
Vishnu Mohandas 703377dc11 Ignore debug mode endpoint for now 2021-05-07 17:11:51 +05:30
Vishnu Mohandas caba788a6a Don't block on writing to cache to return the decrypted thumbnail 2021-05-07 04:05:56 +05:30
Vishnu Mohandas ff7868d118 Reduce the number of thumbnails cached in memory 2021-05-04 23:58:05 +05:30
Vishnu Mohandas d5f9f3e497 Improve logic to load thumbnails 2021-05-03 20:48:56 +05:30
Vishnu Mohandas 0592ed04b0 Upgrade ALL packages! 2021-05-02 21:35:36 +05:30
Vishnu Mohandas 13b0acbe32 Remove API call logger 2021-04-19 18:16:16 +05:30
Vishnu Mohandas 99df462dea Send UA with request 2021-04-04 22:49:46 +05:30
Vishnu Mohandas 3f4238bef9 Binary search to find appropriate mem and ops limits 2021-04-02 03:24:12 +05:30
Vishnu Mohandas 98a0e91128 Generate new recovery keys for users who don't have any right now 2021-04-01 23:03:15 +05:30
Vishnu Mohandas d445e21e01 Add ability to recover data 2021-04-01 19:56:08 +05:30
Vishnu Mohandas d7acc95855 Generate recovery key as per specs 2021-03-29 20:29:37 +05:30
Vishnu Mohandas d12ab1b4e0 Add option to change password 2021-03-26 21:43:32 +05:30
Vishnu Mohandas 887bcbf06a Add functionality to add and remove folders from queue 2021-03-22 11:59:53 +05:30
Vishnu Mohandas ccd160bcbc Remove unused setter 2021-03-22 01:13:26 +05:30
Vishnu Mohandas 9eb55326b3 Remove unused attributes from configuration 2021-03-22 01:10:10 +05:30
Vishnu Mohandas ea28fd046a Add an option to hide from recents 2021-03-21 18:04:24 +05:30
Vishnu Mohandas 4b1439eab1 Show settings screen for non-signed in users too 2021-03-21 15:28:55 +05:30
Vishnu Mohandas 088b73eb70 Add setting to show lockscreen 2021-03-19 18:57:39 +05:30
Vishnu Mohandas 8cb7f885b3 Default to sensitive limits for computation and memory for key derivation 2021-03-18 14:57:59 +05:30
Vishnu Mohandas 317bbf8f18 Remove all instances of kekHash 2021-03-18 13:39:02 +05:30
Vishnu Mohandas 017d26acbd Logout on 401 2021-03-18 03:38:13 +05:30
Vishnu Mohandas 126121486d Clear service level cache on logout 2021-03-18 02:41:31 +05:30
Vishnu Mohandas a7b2e63b1a Add an option to logout 2021-03-18 02:37:17 +05:30
Vishnu Mohandas 9efeeff4dd Remove debug code 2021-03-18 00:54:16 +05:30
Vishnu Mohandas bfdbe1b098 Upgrade flutter 2021-03-18 00:49:11 +05:30
Vishnu Mohandas 964d499f16 Remove keys if a token does not exist 2021-03-17 01:52:06 +05:30
Vishnu Mohandas 7886d5daa9 Remove unused import 2021-03-15 20:14:52 +05:30
Vishnu Mohandas ff48d2d2fc Update debug endpoint 2021-03-10 08:38:28 +05:30
Vishnu Mohandas 1c01ee8a57 Point to prod 2021-03-08 13:08:59 +05:30
Vishnu Mohandas d4ce8fc162 Simplify detection of background uploads 2021-03-04 22:58:27 +05:30
Vishnu Mohandas 0b90ea1271 Update timestamp on disk when a background upload is completed 2021-03-04 01:43:55 +05:30
Vishnu Mohandas b9e9aa393a Take a lock on a file before triggering it's upload 2021-03-03 21:37:02 +05:30
Vishnu Mohandas 33288c111f Delete temp folder remnants only once a day 2021-03-03 20:19:49 +05:30
Vishnu Mohandas 114511489d Add a silent exception for upload errors 2021-03-02 12:53:02 +05:30
Vishnu Mohandas 9194c5d690 Reduce quality of the local thumbnail 2021-03-02 00:12:06 +05:30
Vishnu Mohandas 2759399ff3 Extract errors into a separate file 2021-02-26 14:51:47 +05:30
Vishnu Mohandas 881b6f38ba Update debug mode endpoint port 2021-02-25 20:29:44 +05:30
Vishnu Mohandas 50b12aefbd Block on writing logline to file 2021-02-18 12:47:22 +05:30
Vishnu Mohandas 736383b4c6 Trigger sync when backup folder configuration is changed 2021-02-14 18:25:23 +05:30
Vishnu Mohandas 80727abc82 Increase thumbnail cache size 2021-02-09 17:46:25 +05:30
Vishnu Mohandas 15018b64ca Reduce thumbnail cache size 2021-02-09 17:34:01 +05:30
Vishnu Mohandas f2dee27862 Configure different sentry instance for debug builds 2021-02-09 17:05:45 +05:30
Vishnu Mohandas 40296e24a0 Swallow temporary deletion errors 2021-02-09 13:37:28 +05:30
Vishnu Mohandas 74892f8bbd Update Sentry DSN 2021-02-06 23:56:55 +05:30
Vishnu Mohandas 2956c5f431 Update Sentry DSN 2021-02-06 17:47:29 +05:30
Vishnu Mohandas bedc253655 Log network requests to file only on Android 2021-01-18 21:50:23 +05:30
Vishnu Mohandas d3d9e2bbf7 Rename passphrase to password 2021-01-05 19:57:02 +05:30
Vishnu Mohandas d2e53b8094 Make things less dull 2020-12-12 06:01:06 +05:30
Vishnu Mohandas 5ceda914b5 Force flush the logs to disk 2020-12-09 01:06:30 +05:30
Vishnu Mohandas d4dae75c6f Add more folders to the default set of folders backed up 2020-11-26 15:57:09 +05:30
Vishnu Mohandas 47052a6596 Compress iOS thumbnails 2020-11-22 23:37:40 +05:30
Vishnu Mohandas 51b08a242f Don't block on flushing the log output to disk 2020-11-22 21:21:43 +05:30
Vishnu Mohandas a1e68d54a6 Compress thumbnails fetched from the server 2020-11-22 14:46:11 +05:30
Vishnu Mohandas 4a988e3361 Don't block on writing logs 2020-11-22 14:39:51 +05:30
Vishnu Mohandas 3eaaf6468c Print the HTTP request body 2020-11-19 23:58:14 +05:30
Vishnu Mohandas 34ffc9e5a1 Log all network requests 2020-11-19 23:52:30 +05:30
Vishnu Mohandas 1947970b0a Sync only when WiFi is available 2020-11-16 22:05:16 +05:30
Vishnu Mohandas 8448b9baef Lower the quality of local thumbnails that are loaded 2020-11-16 13:05:06 +05:30
Vishnu Mohandas 06f5db3fd7 Ensure that temp files generated are deleted 2020-11-16 12:32:09 +05:30
Vishnu Mohandas c698fd68fa Encrypt secretKey with the masterKey 2020-11-14 18:09:11 +05:30
Vishnu Mohandas 632ec72f07 Cache token to prevent read errors 2020-11-14 16:32:41 +05:30
Vishnu Mohandas 5d0060031a Simplify the check for account configuration 2020-11-14 15:18:59 +05:30
Vishnu Mohandas 4cec4aa540 Update local endpoint 2020-11-09 17:58:23 +05:30
Vishnu Mohandas df4f08e20f Update to prod endpoint 2020-11-01 12:36:51 +05:30
Vishnu Mohandas e92e1f51de Set username on signup 2020-10-31 21:03:32 +05:30
Vishnu Mohandas 9f88eb413d Persist the generated keys only after successful authentication 2020-10-22 02:59:16 +05:30
Vishnu Mohandas 964a5e6f50 Fix debug endpoint 2020-10-18 01:24:23 +05:30
Vishnu Mohandas 92d154b96e Create a collection and back up the folder if a user attempts to share a folder that is not backed up 2020-10-17 22:51:32 +05:30
Vishnu Mohandas 6a73308bd1 Fix remaining issues with displaying shared collection items 2020-10-14 03:10:22 +05:30
Vishnu Mohandas bae5c9bf7d Explicitly state the sync nature of the encryption API 2020-10-11 05:08:22 +05:30
Vishnu Mohandas 50a67acb75 Use the explicit sync-decrypt API 2020-10-11 04:10:18 +05:30
Vishnu Mohandas bd879263f0 Add functionality to extract a decrypted collection key 2020-10-11 04:08:33 +05:30
Vishnu Mohandas 3f5d20027e Remove unnecessary model 2020-10-07 04:42:02 +05:30
Vishnu Mohandas bdd2e35a66 Fix bugs in configuration 2020-10-07 03:42:54 +05:30
Vishnu Mohandas 5a25676dc4 Generate and store public private keypairs on the server 2020-10-03 03:15:26 +05:30
Vishnu Mohandas deb489df70 Revert endpoint 2020-10-02 18:50:10 +05:30
Vishnu Mohandas 0d1473708c Hash KEK instead of the passphrase 2020-10-01 00:01:04 +05:30
Vishnu Mohandas 429b71de4a Await for async functions 2020-09-29 00:36:42 +05:30
Vishnu Mohandas a4323ad280 Reduce the memlimit for pwhash 2020-09-29 00:34:22 +05:30
Vishnu Mohandas fed7cda7f4 Replace scrypt with libsodium's abstractions 2020-09-29 00:02:53 +05:30
Vishnu Mohandas b06190fbf2 Replace AES with libsodium abstractions 2020-09-28 23:22:43 +05:30
Vishnu Mohandas fc44023887 Use sodium for all base64 to byte conversions 2020-09-28 21:24:14 +05:30
Vishnu Mohandas 16aa9a9eb6 Revert endpoint to OG staging 2020-09-26 23:15:41 +05:30
Vishnu Mohandas d362c7286e Log encryption and decryption times 2020-09-25 14:28:48 +05:30
Vishnu Mohandas 305b7b470d Revert to the HTTPS URL 2020-09-17 17:56:50 +05:30
Vishnu Mohandas 8553a9f25b Add an option to configure the folders whose photos should be backed up 2020-09-17 17:23:17 +05:30
Vishnu Mohandas 94a41a72c9 Remove all assumptions related to key attribute encoding 2020-09-10 02:39:41 +05:30
Vishnu Mohandas 5fffea1824 Remove single line hash function 2020-09-10 02:22:18 +05:30
Vishnu Mohandas 4cd93610f7 Make no assumptions about the encoding type of the key 2020-09-10 01:01:14 +05:30
Vishnu Mohandas 1f98f8ca8d Modify steel crypt to expose a hashBytes function that does not assume the encoding of the inputs or output 2020-09-09 14:35:24 +05:30
Vishnu Mohandas 3a539ea0aa Update staging endpoint 2020-09-06 13:56:55 +05:30
Vishnu Mohandas cde0eccc60 Remove redundant base64 encoding 2020-09-06 12:00:26 +05:30
Vishnu Mohandas 29ac224785 Set the key attributes on server post login 2020-09-05 15:08:03 +05:30
Vishnu Mohandas bc36bf8f5e Verify the correctness of the passphrase entered 2020-09-05 14:23:23 +05:30
Vishnu Mohandas 7a34da5588 Add screen to let a returning user enter her existing passphrase 2020-08-26 08:04:13 +05:30
Vishnu Mohandas ddb2c7dc82 Update UI for the OTT sign in flow 2020-08-25 11:30:19 +05:30
Vishnu Mohandas 414d23d92a Store the key in secure storage 2020-08-18 02:38:23 +05:30
Vishnu Mohandas 09035dff60 Remove hard coded dummy key 2020-08-16 20:07:02 +05:30
Vishnu Mohandas 3d3c1496e7 Pull the key from server on sign in 2020-08-15 06:52:14 +05:30
Vishnu Mohandas 7da487cd4e Decrypt and render encrypted videos 2020-08-14 01:33:29 +05:30
Vishnu Mohandas f85a0210ff Use a separate cache for unencrypted thumbnails 2020-08-13 21:18:32 +05:30
Vishnu Mohandas 44dddb818f Rename for consistency 2020-08-13 07:04:16 +05:30
Vishnu Mohandas fa53398887 Switch to a global cache 2020-08-13 06:37:44 +05:30
Vishnu Mohandas 35aeae2cc7 Setup separate cache for thumbnail files 2020-08-13 05:44:13 +05:30
Vishnu Mohandas f6d3a7e6bd Decrypt, save and display encrypted thumbnails 2020-08-13 04:47:15 +05:30
Vishnu Mohandas 746fb18cf7 Download and save encrypted files 2020-08-12 04:34:16 +05:30
Vishnu Mohandas 4b63196e34 Encrypt and upload files 2020-08-11 05:17:22 +05:30
Vishnu Mohandas 797c6ae856 Reuse existing library for generating secure random string 2020-08-10 05:49:44 +05:30
Vishnu Mohandas b4940d4fdd Save the encryption preference to configuration 2020-08-10 05:32:37 +05:30
Vishnu Mohandas a574d092c4 Refactor variable names 2020-08-10 02:10:55 +05:30
Vishnu Mohandas 87a5c519ba Add functionality to generate and retrieve file encryption keys 2020-08-10 02:09:33 +05:30
Vishnu Mohandas e1cf0706f3 Update API parameters 2020-08-01 02:56:53 +05:30
Vishnu Mohandas 36467b6673 Fix cache-issues due to hash collisions 2020-06-24 01:43:45 +05:30
Vishnu Mohandas a5aaf91460 Extend support for videos 2020-06-20 04:33:26 +05:30
Vishnu Mohandas d5580915e3 Cache remote images 2020-06-15 10:20:26 +05:30
Vishnu Mohandas 5639f3739a Reduce the cache size 2020-06-12 22:23:23 +05:30
Vishnu Mohandas 90a2a44aec Fix cach keys 2020-06-06 17:37:24 +05:30
Vishnu Mohandas 9584f2ede7 Trigger sync only if the user has configured his account 2020-05-28 15:49:25 +05:30
Vishnu Mohandas 89cdceab30 Prefix private variables with an underscore 2020-05-06 19:21:25 +05:30
Vishnu Mohandas d17b3efe2a Load a higher quality thumbnail 2020-05-06 01:27:57 +05:30
Vishnu Mohandas c400238ce0 Fix OOMs that came along with loading image bytes directly 2020-05-06 01:15:09 +05:30
Vishnu Mohandas b6c7bdffd8 Move and rename stuff 2020-05-05 02:14:34 +05:30
Vishnu Mohandas 4207cc7fd3 Bring in consistency to package imports 2020-05-05 01:38:20 +05:30
Vishnu Mohandas 7b3a3eb184 Add logging to file 2020-05-02 21:58:54 +05:30
Vishnu Mohandas d4b698e6ab Rename package name 2020-05-01 23:50:12 +05:30
Vishnu Mohandas 2cdb268b80 Fix issues with respect to uploading photos 2020-05-01 01:05:33 +05:30
Vishnu Mohandas 16e7e7bec3 Send token with every user request 2020-04-30 20:48:26 +05:30
Vishnu Mohandas d228f7278f Add endpoint discovery mechanism 2020-04-30 20:39:41 +05:30
Vishnu Mohandas 6c768da91a Improve thumbnail generation logic 2020-04-25 15:58:22 +05:30
Vishnu Mohandas 96c26227f7 Add some caching for iOS 2020-04-25 02:29:11 +05:30
Vishnu Mohandas 639c444a4e Display thumbnail while loading the actual image in the background 2020-04-25 02:17:21 +05:30
Vishnu Mohandas 20f4f6324b Enable rendering of HEIC images 2020-04-24 01:30:20 +05:30
Vishnu Mohandas 30b072419f Setup invalid server endpoint 2020-04-17 16:19:33 +05:30
Vishnu Mohandas 2089135720 Add available faces to the search page 2020-04-05 17:52:38 +05:30
Vishnu Mohandas 81882999c1 Update interactions 2020-03-30 16:27:04 +05:30
Vishnu Mohandas 53442cbf14 Add some amount of caching 2020-03-28 23:48:27 +05:30
Vishnu Mohandas a8cdc811fd Hello world 2020-03-25 01:29:36 +05:30