Commit Graph

344 Commits

Author SHA1 Message Date
Michal Kolodziej
e1e2223e8f Signature verification is working on literal packets. 2013-05-08 13:04:25 +02:00
Michal Kolodziej
3d25fdf8bf Work on bending the signature packet to my will. 2013-05-04 23:05:46 +02:00
Michal Kolodziej
dd5d0c801c Secret key packet decryption is working though, there
is still work to be done in the decryption function
as it's quite a mess still.
2013-04-27 18:14:57 +02:00
Michal Kolodziej
a907dfa7c9 Fixed time. 2013-04-27 16:46:19 +02:00
Michal Kolodziej
03382cbec1 Made sym key and s2k writable. 2013-04-27 16:15:07 +02:00
Michal Kolodziej
a115cccc53 Fixed s2k implementation somewhat. 2013-04-26 18:54:41 +02:00
Michal Kolodziej
1f9bc46a81 Encryption to a subkey from a GPG generated message is working.
Still no decryption and keys are transmitted in plaintext!
2013-04-26 15:48:19 +02:00
Michal Kolodziej
6fe166fa87 Reading of unencrypted secret key packets seems to be working. 2013-04-25 17:28:43 +02:00
Michal Kolodziej
530a9a0c69 Changed mpi interface to a more sane variant - openpgp
methods MUST return openpgp_type_mpi, using BigIntegers
is prohibited as otherwise the wrapper has no point.
2013-04-24 10:46:43 +02:00
Michal Kolodziej
6d45a19f88 Public key encrypted sesssion key is working. 2013-04-24 09:08:55 +02:00
Michal Kolodziej
43c5d1b30d Changed up the interface. Instead of a dedicated list,
all packets are directly on the packetlist object.
2013-04-23 10:19:01 +02:00
Michal Kolodziej
38330ea4a6 Sym encrypted session key is working, decryption of messages
from gpg works too! Fixed some minor bugs and got rid of a
few globals.
2013-04-23 10:03:28 +02:00
Michal Kolodziej
3a3764a436 Added test and working code to the sym encrypted integrity protected packet. 2013-04-22 19:56:51 +02:00
Michal Kolodziej
3f04470e1f First working packet: writing/reading sym encrypted
and literal packets is working. Tests added.
2013-04-22 18:03:50 +02:00
Michal Kolodziej
c190784ffd Working on making the new packet infrastructure run. 2013-04-22 17:04:20 +02:00
Michal Kolodziej
93a7a751fd Started work on providing an uniform interface to all
packet classes that actually uses the object values
instead of igroring them.
2013-04-21 20:38:19 +02:00
seancolyer
aa8a7f94f1 Switching default hash preference to SHA256. 2013-04-20 22:16:32 -04:00
Sean Colyer
21726d5b8b Merge pull request #72 from dreamingofelectricsheep/ascii-fix
Fixed handling of windows line endings within the ascii dearmoring
2013-04-20 17:40:45 -07:00
Sean Colyer
419af151c1 Merge pull request #73 from dreamingofelectricsheep/utf8-clean
Utf8 support for the encrypted messages (cleanup)
2013-04-20 17:35:58 -07:00
Michal Kolodziej
23295342fc Added utf8 awareness to the literal and userid packet classes. Made s2k
work correctly with utf8 strings. Fixeda visibility issue with the
testing suite and added relevant unit tests.
2013-04-16 10:47:17 +02:00
Michal Kolodziej
ecb340d097 Compiled the library. 2013-04-16 09:28:30 +02:00
Michal Kolodziej
6d7df71c58 Fixed handling of windows line endings within the ascii
dearmoring function.
2013-04-15 16:37:54 +02:00
Sean Colyer
8da7578588 Merge pull request #70 from dreamingofelectricsheep/jsdoc-update
Working automatic documentation generation with the newest version of jsdoc (3.2)
2013-04-13 13:02:11 -07:00
Michal Kolodziej
f06900542e Forgot to add the generated documentation. 2013-04-12 15:11:34 +02:00
Michal Kolodziej
51f8f95807 Finished changing all the javascript files, the documentation
now correctly generates via the use of the makefile.
2013-04-12 14:21:07 +02:00
Michal Kolodziej
6242e72a1d Crypto.sym 2013-04-12 13:04:00 +02:00
Michal Kolodziej
8545feb03d Fixed documentation for cfb and crypto files 2013-04-12 13:00:09 +02:00
seancolyer
a159f838ad Setting README to markdown for proper github rendering. 2013-03-25 21:58:53 -04:00
seancolyer
1400918613 Updating README 2013-03-25 21:57:46 -04:00
seancolyer
f69fa5ccab Fix bug with key material expecting s2k.type to exist which breaks with
passphrase-free keys.
2013-03-06 20:36:26 -05:00
Sean Colyer
1778756c70 Merge pull request #66 from toberndo/hushmail_keys
Fix exception on unknown signature
2013-02-28 05:39:38 -08:00
Sean Colyer
5294db71cc Merge pull request #65 from toberndo/v4subkeys
V4 keys: prefer subkeys for encryption
2013-02-28 05:39:05 -08:00
Thomas Oberndörfer
37ade02c32 Fix exception on unknown signature 2013-02-28 10:28:10 +01:00
Thomas Oberndörfer
a5c1740729 V4 keys: prefer subkeys for encryption 2013-02-28 10:11:53 +01:00
AlexanderWillner
4a00c3b7a7 added browser check 2013-02-20 15:56:27 +01:00
Sean Colyer
eb5e1b99cb Merge pull request #63 from brianbloniarz/master
Several bugfixes involving GnuPG interop
2013-02-16 16:11:40 -08:00
Brian Bloniarz
ef3c0ecc60 minimize.sh make file ordering deterministic
Do find | sort | cat instead of find -exec cat when building
resources/openpgp.js. The order of files returned by find isn't
deterministic, which could lead to spurious differences.
2013-02-13 22:34:35 -08:00
Brian Bloniarz
2bb3c30025 openpgp_keyring include subkeys by ID
openpgp_keyring.getPublicKeysForKeyId will now search subkeys
when looking for the ID, and return a key object based on that
subkey.

Updated to add a method, getSubKeyAsKey, to openpgp_msg_publickey.
This returns a full-fledged openpgp_msg_publickey object for a
chosen subkey.
2013-02-13 22:31:27 -08:00
Brian Bloniarz
4a99ed0dfa Add support for GnuPG type 1001 s2k extension
This is a Gnu extension for private keys with stripped secrets, which
can be created by GnuPG's --export-secret-subkeys mode.

Before this patch, "ERROR:  unknown s2k type! 101" would be logged as an
error (though other than that, things seemed to function normally).
2013-02-06 08:36:56 -08:00
Brian Bloniarz
a2f343995a fix array index in verify() with multiple pubkeys.
The log message was showing the Ith userId of the Ith pubkey,
which may not exist. All other code paths use the 0th userid
of the Ith pubkey, do that too.
2013-02-06 08:31:06 -08:00
Brian Bloniarz
b128e2c521 Fix signature check scoping issue.
Signature checks were failing, in the binary-document case of
openpgp_packet_signature.verify() the variable i was being referenced
when there was no i in scope; instead it was getting 8 from a global
variable i, and trimming 8 bytes off the beginning of the data.

The global i was being set by the CAST5 cipher -- this also fixes
that to be a local variable.

Also add unit test to confirm.
2013-02-06 08:26:16 -08:00
Sean Colyer
7528a349fd Merge pull request #59 from seancolyer/master
Merge in refactoring
2013-02-02 15:44:23 -08:00
seancolyer
77974db1a6 Merge branch 'refactor'. Also marking resources/openpgp*.js files as
binary to make some merge/diffing easier.

Conflicts:
	resources/openpgp.js
	resources/openpgp.min.js
2013-01-14 20:44:58 -05:00
AlexanderWillner
66dd6d9df3 do not send empty messages 2013-01-10 18:31:23 +01:00
AlexanderWillner
9ad5116d3c show sent message 2013-01-10 18:31:13 +01:00
Sean Colyer
ca20079efa Merge pull request #58 from freewil/minor-typos
fix 2 minor typos
2013-01-04 16:07:21 -08:00
freewil
7dfda1ebf4 fix 2 minor typos 2013-01-04 11:58:51 -05:00
Sean Colyer
968dca9436 Initial work with refactor. Everything should still be functional, but more cleanup can still be done. 2012-10-07 23:44:58 -04:00
Sean Colyer
15e5705a83 Merge pull request #54 from seancolyer/master
Fix for dynamic packet header lengths, prevent jsxcompressor from endless loop in certain situations.
2012-10-06 08:49:28 -07:00
Sean Colyer
a50c7a7f4d Fix for ZLIB issue (endless loop), and dynamic header lengths. 2012-10-06 11:39:07 -04:00