Commit Graph

32 Commits

Author SHA1 Message Date
Dominik
781f089ee1 merged senecasos repo 2012-03-09 11:08:22 +01:00
Markus Doits
ad16574657 Allow to pass large blobs and a new content provider to simplify this
Since AIDL is not for passing large data, a blob can be passed to APG by
a Uri. This Uri is opened as a file by APG and read/written to. Note the
file is overwritten by APG, so make sure it is a copy if you want to
keep the original.

With the ApgServiceBlobProvider, Apg has an own ContentProvider that can
be used like mentioned above. For now the data is stored in the dir
where APG stores other files and NOT DELETED after en/decryption. This
is tbd. It can only be accessed by an application with the permission
"org.thialfihar.android.apg.permission.STORE_BLOBS".

ApgCon has been updated accordingly and can handle blobs with `setBlob`
and `getBlobResult`. That is a really easy way to en/decrypt large data.

Note that encrypting by blob should only be used for large files (1MB+).
On all other cases, the data should be passed as as String through the
AIDl-Interface, so no temporary file must be created.

See ApgCon for a complete example of how to connect to the AIDL and use
it. Or use it in your own project!
2011-11-04 21:22:49 +01:00
Markus Doits
8d9b0e1db8 Switch to spongycastle
https://github.com/rtyley/spongycastle

It replaces bouncycastle2. Looks like a cleaner and better integration. A
precompiled .jar ist in the "lib/"-dir.
2011-11-03 22:15:31 +01:00
senecaso
debb90409a -implementation of "--send-key"
-implementation of "--sign-key"
-partial implementation of exchanging/verifying keys via QR Code
2011-10-17 10:07:37 +09:00
senecaso
6f2333b7d3 -mavenizing the project
-moving all org.bouncycastl2.* dependencies to Sponcy Castle instead. 
This way multiple people dont need to maintain rebased versions of BC
2011-10-06 15:31:16 +09:00
Thialfihar
3052ae80d5 testing thread-pausing in verifyText() 2010-09-12 19:06:26 +00:00
Thialfihar
b91f9397d9 moved some Intent extra constants into more appropriate places, some basic preparations to test thread-pausing during decryption/encryption to deal with certain situations, mainly an unknown signature key 2010-09-11 23:21:53 +00:00
Thialfihar
bc50ca0093 catch null pointer exceptions when the private key cannot be extracted, also prevent such keys from getting imported, so the error message should never be encountered anyway
Fixes issue 66
2010-09-10 20:36:38 +00:00
Thialfihar
4f25edbe97 added a context menu item to update public keys via key server, adding a key id look up Intent for the key server query
Update issue 9
Status: Fixed
Added public key update via key server. Considering this issue fixed now. More key server features will be added, but general support is added.
2010-08-18 00:23:28 +00:00
Thialfihar
446f4b493d added a key server preference, allowing multiple key servers to be added
Update issue 9
Key server preference added.
2010-08-17 21:49:34 +00:00
Thialfihar
6e9146c91a added initial support for HKP key servers, allowing searching and key import
Update issue 9
Can search a key server now, touch a result to import the key. Still needs better error handling and some Intents to import keys based on key ID. Also still need key server preferences.
2010-08-17 01:02:39 +00:00
Thialfihar
f65888046e added a little getting started dialog for first-time use, explaining some basics and recommending other apps
Update issue 39
Added:
    <string name="title_help">Getting Started</string>
    <string name="menu_help">Help</string>
    <!-- "OI File Manager", "ASTRO", and "K-9 Mail" must NOT be translated in order for the links to the market to work. -->
    <string name="text_help">Install K-9 Mail for the best integration, it supports APG for PGP/INLINE and lets you directly encrypt/decrypt emails.
\n\nIt is recommended that you install OI File Manager or ASTRO to be able to use the browse button for file selection in APG.
\n\nFirst you need some keys. Either import them via the option menus in \"Manage Public Keys\" and \"Manage Secret Keys\" or create them in \"Manage Secret Keys\".
\n\nYou can also add a GMail account in the main activity via \"Add Account\", which simplifies decrypting emails received there.
\n\nCheck out the option menus in the various activities to find more functions.
    </string>
2010-07-24 16:30:38 +00:00
Thialfihar
b650b30a11 added secure file deletion, overwriting the file with random data before actual deletion
Update issue 56
Added a method for secure file deletion. We'll possibly have to test this a bit and make sure it actually *is* secure on the filesystems used (vfat for SD card, yaffs2 for phone flash memory by default). This sort of overwrite might be absolutely useless on some filesystems.
I also wanted to add an option at first, but this seems reasonably fast and in general it should be what the user wants, so for now it will ALWAYS securely delete. If there is a demand for plain deletion, then options can be added.

Update issue 39
A new string:
<string name="progress_deletingSecurely">deleting \'%s\' securely...</string>
2010-07-24 14:24:42 +00:00
Thialfihar
f5efd73d33 set svn:eol-style to LF for all code/resource files 2010-07-16 20:13:12 +00:00
Thialfihar
2c47734f0f trying to add support for various source and destination modes for encryption and decryption (String, byte[], filename, content stream), also more Intent options added 2010-07-09 20:55:17 +00:00
Thialfihar
26a500956f working encryption/decryption of text and files after GeneralActivity hands it over 2010-06-06 00:35:00 +00:00
Thialfihar
8c404d83d7 added search to option menu and make it pop up when keys on the physical keyboard are pressed 2010-06-05 22:44:47 +00:00
Thialfihar
a089dbbb73 introduced a general application to handle certain Intents, only to hand them to other APG Activities after looking at the content of the passed data 2010-06-05 17:54:40 +00:00
Thialfihar
6f28f5ee4e key lists somewhat wrapped into one, using the new database stuff, Apg cleaned up a bit, preparing to use the database there as well 2010-05-26 00:33:26 +00:00
Thialfihar
e83f1e7b3a first steps towards better low-level key management, database upgrade to use KeyRing, Key, and UserId tables 2010-05-25 19:34:56 +00:00
Thialfihar
eb636fce47 default message/file compression settings added, also a setting for file decryption to change the default when a file requires it 2010-05-16 14:20:17 +00:00
Thialfihar
363dcb62b8 password cache introduced, not cleared yet. 2010-05-15 15:19:56 +00:00
Thialfihar
b527ae8b6d a lot of renaming of IDs, following a strict naming scheme again, moved most strings into string.xml in preparation for internationalization, APG.java still has to be changed to allow that, as it isn't Context aware in most methods 2010-05-13 20:41:32 +00:00
Thialfihar
e36e8f1dea merged DecryptMessageActivity and DecryptFileActivity into one DecryptActivity as well 2010-05-11 14:07:15 +00:00
Thialfihar
5e73b696d1 new EncryptActivity to handle message and file encryption all in one 2010-05-09 19:51:21 +00:00
Thialfihar
73888622f4 added a button to encrypt to clipboard, change log and about window got their own layout now with proper linkification 2010-05-09 13:29:30 +00:00
Thialfihar
3008f2c51f added an option to delete files after encryption or decryption, also no longer delete the output file if either fails 2010-05-04 15:56:55 +00:00
Thialfihar
88fc659ff6 put return values into the Id class as well, changed encrypt file layout to use symmetric OR asymmetric again, layout and string adjustments 2010-04-29 01:11:26 +00:00
Thialfihar
e83a5311ae add preferences, use them where applicable 2010-04-28 23:35:11 +00:00
Thialfihar
78193007b2 added file decryption, rewrote the various "Choice" derivations to us the Id structure as well 2010-04-22 15:30:19 +00:00
Thialfihar
26cf672d67 set svn:ignore for bin directory and .project/.classpath
asymmetric file encryption working, some more cleanup, introduced an application directory to encrypt to by default
2010-04-19 13:56:43 +00:00
Thialfihar
d5c5a2c43b major restructuring, moving dialog, message, menu, option menu, task, type IDs into Id in a similar structure as the generated R, also introducing a BaseActivity class that almost all activities derive from, which generates some common dialogs, handles the progress update, thread management, and thread communication
also adding first draft of encrypt file activity, not very functional yet
2010-04-19 02:12:13 +00:00