Yishi Lin
e967bb1f4c
Add PGPAgent tests and minor updated
2019-07-20 00:41:45 +08:00
Yishi Lin
1ec26a0eea
Clean up very old migration codes
2019-07-19 01:46:56 +08:00
Mingshen Sun
7cf9311f95
Delete useless print
2019-07-16 23:36:25 -07:00
Yishi Lin
584b634689
Cleanup the previously set keys before init
2019-07-17 13:35:16 +08:00
Yishi Lin
6ae4a02a01
Seperate PGPAgent from PasswordStore and add tests
2019-07-17 02:58:01 +08:00
Yishi Lin
0862c1388e
Use ObjectivePGP if Gopenpgp fails
2019-07-17 00:19:23 +08:00
Mingshen Sun
79d0df2c89
Version bump to 0.7.0
2019-07-13 16:10:36 -07:00
Danny Moesch
8e8501abb0
Save app passcode in Keychain and migrate existing passcode from SharedDefaults
2019-07-10 21:47:40 -07:00
Danny Moesch
cc493cb490
Allow setting a nil value in AppKeychain.add to delete existing content
2019-07-03 21:45:27 -07:00
Danny Moesch
fa2fde1af4
Leave key source settings unchanged when migrating
2019-07-03 21:45:27 -07:00
Danny Moesch
149edc1cbc
Only migrate if possible (do not stop after first failure)
2019-07-03 21:45:27 -07:00
Danny Moesch
f1337622dc
Store SSH private keys in Keychain instead of files
2019-07-03 21:45:27 -07:00
Danny Moesch
6b95e60ea1
Introduce CryptographicKey protocol
2019-07-03 21:45:27 -07:00
Danny Moesch
5f19c348c8
Keep global constants for armor keys and clean them up during migration and user initiated key removal
2019-07-02 13:50:16 -07:00
Danny Moesch
7bee780b46
Extract key importing logic and put it into separate class
2019-07-02 13:50:16 -07:00
Danny Moesch
47c9af0127
Fix wrong Keychain key string
...
This caused the private PGP key passphrase to remain unchanged although the key itself was removed.
2019-07-02 13:50:16 -07:00
Danny Moesch
b806175842
Throw error in case PGP key files cannot be read
2019-07-02 13:50:16 -07:00
Danny Moesch
f0003227d5
Delete key files after migrating them to Keychain
2019-07-02 13:50:16 -07:00
Danny Moesch
441a7f1e9b
Put Keychain related methods to separate class
2019-07-02 13:50:16 -07:00
Danny Moesch
e4e4c6daff
Implement migration of existing PGP keys into Keychain
2019-07-02 13:50:16 -07:00
Danny Moesch
a66a79abc6
Store PGP keys in Keychain
2019-07-02 13:50:16 -07:00
Danny Moesch
ca3271b20a
Restrict passwords in Keychain only to "this" device and disable iCloud syncing
2019-07-02 13:50:16 -07:00
Danny Moesch
5d1a3eae1a
Make 'keychain' a static class variable
2019-07-02 13:50:16 -07:00
Yishi Lin
0ec5b5cd80
Fix the git add path
2019-06-15 16:21:37 +08:00
Mingshen Sun
82232be92c
remove some unwraps
2019-06-09 22:18:54 -07:00
Mingshen Sun
c66439c2f9
passKit: fix warnings
2019-06-08 18:03:04 -07:00
Moritz Kuntze
96f7c1960d
Changed PGP backend from ObjectivePGP to GopenPGP
2019-06-08 10:39:17 -07:00
Yishi Lin
43ff63e01d
Do no prompt repeatedly for the SSH passphrase
2019-05-20 01:26:53 +08:00
Meris Bahtijaragic
c59c72729b
Get username from filepath. ( #265 )
2019-05-17 23:30:41 +08:00
Danny Moesch
adff0c1142
Fix #258 : Remove existing key files before moving new ones to the same location
2019-05-15 22:49:46 +02:00
Yishi Lin
451e2f6fbb
Fix 262: save context after editing
2019-05-15 01:12:10 +08:00
Yishi Lin
ebb3566616
Cleanup old migration codes
2019-05-15 01:09:58 +08:00
Danny Moesch
44870af774
Trust in assigned default value
...
In particular, SwiftyUserDefaults returns the default value in case it does not find a value in the dictionary. As the default is '.all' it does not have to be set explicitly. Assigning 'nil' will result in '.all' anyway.
2019-05-04 22:15:23 +02:00
Danny Moesch
c2cd6481fd
Utilize default settings values
2019-05-01 18:30:13 +02:00
Danny Moesch
f9c19b3ca4
Migrate to Swift 5.0
2019-05-01 18:30:13 +02:00
Danny Moesch
e06413b348
Add default value to non-optional DefaultsKeys
2019-05-01 18:30:13 +02:00
Danny Moesch
89c0d3c98e
Assign nil by unwrapping optional
2019-05-01 17:09:34 +02:00
Danny Moesch
9e0d60989b
Remove unnecessary returns
2019-05-01 17:08:44 +02:00
David Beitey
f98d56753b
Add ability to hide password images
...
This disables loading of favicon images associated with password entries
and hides any images that are already loaded, using the generic icon
instead.
The key benefit to this option is to prevent passforios revealing that a
given device has a password in its store, which could be gleaned from
the fact that favicons are being loaded in this manner.
2019-03-03 10:54:30 -08:00
Danny Moesch
3cf55d91ff
Display last updated date in absolut instead of relative form
...
This is necessary to have a language independent representation. For example, the previous format would have produced a grammatically wrong term in German.
2019-02-23 14:22:27 -08:00
Danny Moesch
d698f2e3c3
Use folder references for all groups and sort files/folders
2019-01-21 20:34:18 -08:00
Danny Moesch
38b44cedf8
Add missing error messages and name them consistently
...
Since the AppError enum is suffixed with 'Error', the elements itself do not need this suffix, too.
2019-01-20 21:04:04 -08:00
Danny Moesch
08c91599b6
Use | operator to concatenate multiline strings
2019-01-20 21:04:04 -08:00
Danny Moesch
1b4040135e
Localize strings in code
2019-01-20 21:04:04 -08:00
Danny Moesch
2d5ca58bd9
Use PasswordGeneratorFlavor class to set user defaults and UI elements
2019-01-20 21:04:04 -08:00
Danny Moesch
857a8f44bf
Prepare for localization
2019-01-20 21:04:04 -08:00
Mingshen Sun
88481ad2b0
Release 0.5.1 and version bump to 0.6.0
2019-01-13 18:48:10 -08:00
Danny Moesch
6b4dbd50a9
Support custom branches ( #236 )
2019-01-13 15:34:01 -08:00
Danny Moesch
744b46adc2
Do not show 0 if numbers in "About Repository" cannot be obtained properly
2019-01-12 16:36:37 -08:00
Danny Moesch
f47e7d384c
Show correct number of commits in "About Repository"
2019-01-12 16:36:37 -08:00