Roman Zeyde
|
c4c56b9faf
|
gpg: no support for empty user_id
|
2016-08-05 11:57:12 +03:00 |
|
Roman Zeyde
|
82e08d073b
|
gpg: rename proto -> protocol
|
2016-07-26 19:37:42 +03:00 |
|
Roman Zeyde
|
8ab0908388
|
proto: don't hardcode name length
|
2016-07-26 17:59:06 +03:00 |
|
Roman Zeyde
|
295d52ef10
|
gpg: move 'iterlines' to keyring
|
2016-07-26 17:50:49 +03:00 |
|
Roman Zeyde
|
8a51099488
|
gpg: remove unused "sign_message"
|
2016-07-26 17:42:14 +03:00 |
|
Roman Zeyde
|
f4dd1eacdd
|
gpg: allow parsing multiple keys
|
2016-07-26 17:35:07 +03:00 |
|
Roman Zeyde
|
b9b7b8dafd
|
gpg: re-structure public key packets for easier parsing
|
2016-07-22 23:14:25 +03:00 |
|
Roman Zeyde
|
744696fdee
|
gpg: decode user_attribute packets
|
2016-07-22 22:44:54 +03:00 |
|
Roman Zeyde
|
ccdbc7abfc
|
gpg: parse_packets() should get file-like stream
and wrap it with util.Reader()
|
2016-07-22 21:46:38 +03:00 |
|
Roman Zeyde
|
e70f0ec681
|
gpg: refactor hash algorithm handling
|
2016-07-09 12:25:05 +03:00 |
|
Roman Zeyde
|
aeaf978d8e
|
gpg: add mulitple GPG public keys as test vectors
|
2016-07-09 12:08:07 +03:00 |
|
Roman Zeyde
|
d60fff202a
|
gpg: don't validate non-ECDSA signatures
|
2016-07-09 11:26:48 +03:00 |
|
Jochen Hoenicke
|
a2e46048a1
|
Use TREZOR_GPG_USER_ID in agent
|
2016-06-22 02:31:57 +02:00 |
|
Jochen Hoenicke
|
e66b0f47ed
|
More robust gpg key parsing
Handle new packet format.
Ignore unknown packets.
Handle packets that are not immediately followed by signature.
Handle other hash algorithms.
|
2016-06-22 02:31:22 +02:00 |
|
Roman Zeyde
|
db874ad98f
|
README: add GPG part
|
2016-06-20 22:43:13 +03:00 |
|
Roman Zeyde
|
75f879edbb
|
gpg: update README.md
|
2016-06-20 22:18:03 +03:00 |
|
Roman Zeyde
|
45a85a317b
|
gpg: allow setting UNIX socket from command-line
|
2016-06-18 20:10:52 +03:00 |
|
Roman Zeyde
|
7b3874e6f7
|
gpg: fixup logging during key creation
|
2016-06-17 22:05:13 +03:00 |
|
Roman Zeyde
|
6c96cc37b9
|
gpg: add support for adding subkeys to EdDSA primary GPG keys
|
2016-06-17 21:59:13 +03:00 |
|
Roman Zeyde
|
c98cb22ba4
|
gpg: use separate derivations for GPG keys
|
2016-06-17 19:51:49 +03:00 |
|
Roman Zeyde
|
d9fbfccd35
|
gpg: load correct key if ECDH is requested
|
2016-06-17 19:51:49 +03:00 |
|
Roman Zeyde
|
fe4d9ed3c8
|
gpg: add SLIP-0017 support for ECDH session key generation
|
2016-06-17 09:29:53 +03:00 |
|
Roman Zeyde
|
092445af71
|
agent: handle connection errors
|
2016-06-11 20:26:10 +03:00 |
|
Roman Zeyde
|
602e867c7d
|
gpg: add test for keygrip
|
2016-06-11 20:18:07 +03:00 |
|
Roman Zeyde
|
16de8cdabc
|
agent: refactor signature and ECDH
|
2016-06-11 15:06:35 +03:00 |
|
Roman Zeyde
|
7bbf11b631
|
gpg: refactor key creation
|
2016-06-11 14:46:24 +03:00 |
|
Roman Zeyde
|
3e41fddcef
|
gpg: add test for ECDH pubkey generation
|
2016-06-11 14:02:12 +03:00 |
|
Roman Zeyde
|
8108e5400d
|
gpg: support TREZOR-based primary key
|
2016-06-11 13:47:56 +03:00 |
|
Roman Zeyde
|
a1659e0f0d
|
gpg: add preferred symmetric algo
|
2016-06-11 10:34:59 +03:00 |
|
Roman Zeyde
|
3b139314b6
|
gpg: refactor sign_message method
|
2016-06-06 23:02:14 +03:00 |
|
Roman Zeyde
|
a05cff5079
|
gpg: use "gpg2" for 'git config --local gpg.program'
|
2016-06-06 23:02:14 +03:00 |
|
Roman Zeyde
|
694cee17ac
|
gpg: refactor create_* methods
|
2016-06-04 20:54:07 +03:00 |
|
Roman Zeyde
|
bc281d4411
|
gpg: use local version
|
2016-06-04 19:45:03 +03:00 |
|
Roman Zeyde
|
04af6b737b
|
gpg: remove extra param from Factory.from_public_key()
|
2016-06-04 09:53:43 +03:00 |
|
Roman Zeyde
|
171c746c7e
|
gpg: move agent main code to __main__
|
2016-06-04 09:53:23 +03:00 |
|
Roman Zeyde
|
8b5ac14150
|
gpg: add docstrings
|
2016-06-03 22:44:25 +03:00 |
|
Roman Zeyde
|
d2167cd4ff
|
gpg: check keygrip on ECDH
|
2016-06-03 22:39:31 +03:00 |
|
Roman Zeyde
|
10cbe67c9a
|
gpg: add TODO
|
2016-06-03 21:53:31 +03:00 |
|
Roman Zeyde
|
29a984eebb
|
gpg: improve flags selection
|
2016-06-03 20:17:53 +03:00 |
|
Roman Zeyde
|
a6660fd5c5
|
gpg: handle BYE command
|
2016-06-03 17:43:46 +03:00 |
|
Roman Zeyde
|
2acd0bf3b7
|
gpg: fix keygrip computation
|
2016-06-03 17:41:31 +03:00 |
|
Roman Zeyde
|
e9f7894d62
|
ecdh: fixup pubkey ID
|
2016-06-03 15:05:45 +03:00 |
|
Roman Zeyde
|
56e9d7c776
|
gpg: allow graceful exit via Ctrl+C
|
2016-06-03 14:42:40 +03:00 |
|
Roman Zeyde
|
e7bacf829c
|
gpg: refactor ecdh case
|
2016-06-03 14:39:16 +03:00 |
|
Roman Zeyde
|
c1c679b541
|
HACK: support ECDH in agent - note keygrip and ID errors.
|
2016-06-02 23:24:36 +03:00 |
|
Roman Zeyde
|
49c343df94
|
HACK: create subkey with ECDH support
|
2016-06-02 22:54:08 +03:00 |
|
Roman Zeyde
|
7da7f5c256
|
HACK: fixup tests
|
2016-06-02 22:25:44 +03:00 |
|
Roman Zeyde
|
39cb5565bf
|
HACK: better line iteration
|
2016-06-02 21:39:48 +03:00 |
|
Roman Zeyde
|
f89c5bb125
|
HACK: better logging
|
2016-06-02 21:38:48 +03:00 |
|
Roman Zeyde
|
92649b290f
|
HACK: add preliminary gpg support
|
2016-05-30 21:57:10 +03:00 |
|
Roman Zeyde
|
d9b07e2ac6
|
gpg: hack agent prototype
|
2016-05-28 23:02:45 +03:00 |
|
Roman Zeyde
|
f0ea568bb8
|
gpg: add more UTs for decode
|
2016-05-27 22:07:50 +03:00 |
|
Roman Zeyde
|
34c614db6e
|
gpg: add more UTs for decode
|
2016-05-27 21:52:00 +03:00 |
|
Roman Zeyde
|
af8ad99c7a
|
gpg: add UTs for decode
|
2016-05-27 16:59:10 +03:00 |
|
Roman Zeyde
|
313271ac06
|
gpg: move signer.py to __main__.py
|
2016-05-27 14:38:38 +03:00 |
|
Roman Zeyde
|
969e08140b
|
gpg: add more tests for keyring
|
2016-05-27 13:43:55 +03:00 |
|
Roman Zeyde
|
39f00af65d
|
gpg: add help for sign arguments
|
2016-05-27 12:20:33 +03:00 |
|
Roman Zeyde
|
272759e907
|
gpg: allow dependency injection for subprocess module
|
2016-05-27 12:20:33 +03:00 |
|
Roman Zeyde
|
4be55156ed
|
gpg: refactor pubkeys' parsing code
|
2016-05-27 11:28:23 +03:00 |
|
Roman Zeyde
|
80a5ea0f2a
|
gpg: add UTs for keyring
|
2016-05-26 23:16:08 +03:00 |
|
Roman Zeyde
|
dcf35c4267
|
decode: split _remove_armor() from verify()
|
2016-05-26 22:29:19 +03:00 |
|
Roman Zeyde
|
7570861765
|
gpg: fixup signer docstring
|
2016-05-26 22:29:19 +03:00 |
|
Roman Zeyde
|
339f61c071
|
gpg: better __repr__ and logging for public keys
|
2016-05-26 22:29:19 +03:00 |
|
Roman Zeyde
|
3c4fb7a17b
|
gpg: allow pinentry UI via "display=" option
|
2016-05-25 18:52:20 +03:00 |
|
Roman Zeyde
|
a6a0c05f57
|
keyring: fix more Python 2/3 issues
|
2016-05-23 23:03:02 +03:00 |
|
Roman Zeyde
|
4c036d2ce7
|
gpg: fixup str/bytes issues
|
2016-05-22 23:10:12 +03:00 |
|
Roman Zeyde
|
eaa91cfdbd
|
gpg: add tests for basic protocol utils
|
2016-05-22 23:06:12 +03:00 |
|
Roman Zeyde
|
fd61941d0f
|
gpg: fixup subcommand for Python 3
http://bugs.python.org/issue9253#msg186387
|
2016-05-22 22:28:07 +03:00 |
|
Roman Zeyde
|
decd3ddf75
|
gpg: fixup str/bytes issues
|
2016-05-22 22:20:55 +03:00 |
|
Roman Zeyde
|
4c07b360cd
|
gpg: fix pep8/pylint warning
|
2016-05-22 08:07:51 +03:00 |
|
Roman Zeyde
|
0b0f60dd89
|
gpg: rename load_from_gpg -> get_public_key
|
2016-05-21 20:23:48 +03:00 |
|
Roman Zeyde
|
db6903eab7
|
gpg: rename agent -> keyring
|
2016-05-21 20:17:58 +03:00 |
|
Roman Zeyde
|
171a0c2f6a
|
gpg: remove agent's main
|
2016-05-21 20:12:41 +03:00 |
|
Roman Zeyde
|
a535b31a1b
|
gpg: fixup lint/pep8
|
2016-05-21 20:00:38 +03:00 |
|
Roman Zeyde
|
ee4bcddd22
|
gpg: rename main API
|
2016-05-21 17:32:15 +03:00 |
|
Roman Zeyde
|
f626d34e21
|
gpg: using closing() context handler
|
2016-05-21 17:21:16 +03:00 |
|
Roman Zeyde
|
2cf081420f
|
gpg: move armor to proto
|
2016-05-21 17:15:42 +03:00 |
|
Roman Zeyde
|
0e72e3b7ff
|
gpg: move PublicKey to proto
|
2016-05-21 17:10:17 +03:00 |
|
Roman Zeyde
|
ce61c8b2ae
|
gpg: move timeformat from util
|
2016-05-21 17:04:18 +03:00 |
|
Roman Zeyde
|
3192e570ed
|
gpg: initial support for ElGamal and DSA
Doesn't verify anything (yet).
|
2016-05-21 16:54:38 +03:00 |
|
Roman Zeyde
|
bf8f516ef4
|
gpg: no visual challenge
|
2016-05-21 07:44:27 +03:00 |
|
Roman Zeyde
|
51f7d6120b
|
client: not visual challength for SSH
|
2016-05-21 07:43:10 +03:00 |
|
Roman Zeyde
|
0cb7cf0746
|
Merge branch 'python3'
|
2016-05-18 18:42:00 +03:00 |
|
Roman Zeyde
|
b4ff31f816
|
gpg: handle ECDH keys
|
2016-05-12 22:15:05 +03:00 |
|
Roman Zeyde
|
6e9d6d6430
|
gpg: add URLs for subpackets
|
2016-05-12 21:55:26 +03:00 |
|
Roman Zeyde
|
fa9391ede6
|
gpg: update required firmware version
|
2016-05-08 21:19:28 +03:00 |
|
Roman Zeyde
|
ad8eafe6f8
|
Merge branch 'master' into python3
Conflicts:
setup.py
|
2016-05-07 21:14:20 +03:00 |
|
Roman Zeyde
|
695079e4b9
|
agent: raise explicit error when signature fails
|
2016-05-07 20:49:51 +03:00 |
|
Roman Zeyde
|
9888ef971a
|
gpg: add installation command to README
|
2016-05-07 20:41:34 +03:00 |
|
Roman Zeyde
|
4270d8464f
|
gpg: add screencasts
|
2016-05-07 20:29:07 +03:00 |
|
Roman Zeyde
|
25a427081c
|
gpg: add more output examples
|
2016-05-07 13:24:25 +03:00 |
|
Roman Zeyde
|
939fdbe829
|
gpg: add output examples
|
2016-05-07 13:15:29 +03:00 |
|
Roman Zeyde
|
1f126f3002
|
gpg: better logging
|
2016-05-07 13:05:25 +03:00 |
|
Roman Zeyde
|
78526d1379
|
gpg: install gpg-git wrapper script
|
2016-05-07 13:02:16 +03:00 |
|
Roman Zeyde
|
7e3c3b4f77
|
gpg: fixup README
|
2016-05-07 12:49:01 +03:00 |
|
Roman Zeyde
|
513c19bf1f
|
gpg: remove unused files
|
2016-05-07 09:54:55 +03:00 |
|
Roman Zeyde
|
f1e75783c4
|
gpg: use environment variable for user_id
|
2016-05-07 09:41:58 +03:00 |
|
Roman Zeyde
|
68637525ea
|
Merge branch 'master' into python3
|
2016-05-06 22:24:17 +03:00 |
|
Roman Zeyde
|
fce45832c2
|
gpg: fix small typo
|
2016-05-06 22:22:02 +03:00 |
|
Roman Zeyde
|
df001c4100
|
gpg: rename README
|
2016-05-06 22:20:50 +03:00 |
|
Roman Zeyde
|
1a228a1af6
|
gpg: refactor cli
|
2016-05-06 22:19:46 +03:00 |
|
Roman Zeyde
|
2846c0bf1a
|
util: add tests for gpg-related code
|
2016-05-06 14:28:15 +03:00 |
|
Roman Zeyde
|
b2147a8418
|
formats: curve name should be a string
|
2016-05-05 22:31:07 +03:00 |
|
Roman Zeyde
|
d9c4e930f3
|
main: fixup str/bytes issue for curve_name
|
2016-05-05 21:42:11 +03:00 |
|
Roman Zeyde
|
6fd6fe6520
|
handle missing imports
|
2016-05-04 23:05:43 +03:00 |
|
Roman Zeyde
|
4a7fef3011
|
gpg: fix logging and arguments in demo
|
2016-04-30 22:20:50 +03:00 |
|
Roman Zeyde
|
a0e476ea19
|
gpg: remove unused code
|
2016-04-30 22:15:15 +03:00 |
|
Roman Zeyde
|
683aae7aa4
|
gpg: add logging for digest
|
2016-04-30 22:11:51 +03:00 |
|
Roman Zeyde
|
d369638c7b
|
gpg: add a script for faster commit verification
|
2016-04-30 22:07:46 +03:00 |
|
Roman Zeyde
|
07c4100618
|
gpg: fixup logging and make sure it works with git
|
2016-04-30 21:55:37 +03:00 |
|
Roman Zeyde
|
b9f139b74a
|
gpg: refactor subkey as pubkey
|
2016-04-30 21:34:12 +03:00 |
|
Roman Zeyde
|
3bf926620b
|
gpg: handle multiple packets
|
2016-04-30 21:07:19 +03:00 |
|
Roman Zeyde
|
ab192619f4
|
gpg: move protocol utils to proto.py
|
2016-04-30 16:50:01 +03:00 |
|
Roman Zeyde
|
f982d785bd
|
gpg: add marker to our pubkey signature packets
|
2016-04-30 16:27:43 +03:00 |
|
Roman Zeyde
|
31c3686fa4
|
gpg: small fixes
|
2016-04-30 15:39:32 +03:00 |
|
Roman Zeyde
|
87ca33c104
|
gpg: fixup encoding for large packets
|
2016-04-30 15:34:18 +03:00 |
|
Roman Zeyde
|
c3d23ea7f5
|
gpg: allow longer packets
|
2016-04-30 14:47:32 +03:00 |
|
Roman Zeyde
|
5c04d17c43
|
gpg: demo with ed25519 TREZOR-based keys
|
2016-04-30 13:32:20 +03:00 |
|
Roman Zeyde
|
2d2d6efa93
|
gpg: small refactoring
|
2016-04-30 13:25:14 +03:00 |
|
Roman Zeyde
|
131c30acca
|
gpg: use explicit public key algo_id
|
2016-04-30 13:20:06 +03:00 |
|
Roman Zeyde
|
a7ef263954
|
gpg: generalize RSA/ECDSA signatures
|
2016-04-30 13:01:40 +03:00 |
|
Roman Zeyde
|
d486c1ee7b
|
gpg: refactor agent rsa/ecdsa signature parsing
|
2016-04-30 12:33:01 +03:00 |
|
Roman Zeyde
|
f35b5be3ac
|
gpg: 1st try for RSA primary key support
|
2016-04-30 11:40:02 +03:00 |
|
Roman Zeyde
|
9ed9781496
|
gpg: support RSA decode and verify
|
2016-04-30 11:02:41 +03:00 |
|
Roman Zeyde
|
5d007260e1
|
gpg: add docstrings
|
2016-04-30 10:04:44 +03:00 |
|
Roman Zeyde
|
7dfa3ab255
|
gpg: replace PublicKey.curve_name attribute
|
2016-04-30 09:29:04 +03:00 |
|
Roman Zeyde
|
b8eba72d0b
|
gpg: fixup subkey/export handling
|
2016-04-29 22:46:02 +03:00 |
|
Roman Zeyde
|
492285de1b
|
gpg: rename pubkey methods
|
2016-04-29 22:28:41 +03:00 |
|
Roman Zeyde
|
cc326b1f7d
|
gpg: pubkey is not needed for make_signature
|
2016-04-29 22:25:08 +03:00 |
|
Roman Zeyde
|
169ff39b1a
|
gpg: remove visual keyword for now
|
2016-04-29 22:23:12 +03:00 |
|
Roman Zeyde
|
dcc7ef2600
|
minor fixes
|
2016-04-29 22:10:04 +03:00 |
|
Roman Zeyde
|
ac2d12b354
|
It works again!
|
2016-04-29 17:45:16 +03:00 |
|
Roman Zeyde
|
f3b49ff553
|
gpg: use strict bash mode for demo
|
2016-04-29 11:14:27 +03:00 |
|
Roman Zeyde
|
12d640c66b
|
fixup pep8
|
2016-04-29 10:25:46 +03:00 |
|
Roman Zeyde
|
32984d2d3f
|
agent: add support for gpg passphrase entry
|
2016-04-29 10:16:58 +03:00 |
|
Roman Zeyde
|
a45c6c1300
|
horrible hack - but IT WORKS!!!
|
2016-04-28 22:17:08 +03:00 |
|
Roman Zeyde
|
1d3ba7e9b7
|
subkey: add backsig
|
2016-04-28 22:10:40 +03:00 |
|
Roman Zeyde
|
673b1df648
|
1st try
|
2016-04-28 21:31:01 +03:00 |
|
Roman Zeyde
|
e63f03354e
|
gpg: refactor signing providers from actual Signer class
|
2016-04-28 14:56:58 +03:00 |
|
Roman Zeyde
|
3c9c1b4e14
|
gpg: export verifying_key from parsing
|
2016-04-28 14:44:52 +03:00 |
|
Roman Zeyde
|
5caf4728ee
|
gpg: fixup comment
|
2016-04-28 12:56:06 +03:00 |
|
Roman Zeyde
|
dde6dcdaeb
|
gpg: fix unpacking for subkey-case
|
2016-04-28 12:55:48 +03:00 |
|
Roman Zeyde
|
1f3c989884
|
gpg: 'dump' -> 'serialize'
|
2016-04-28 12:34:00 +03:00 |
|
Roman Zeyde
|
55dea41959
|
gpg: make sure gpg-agent is running before connecting
|
2016-04-28 12:09:45 +03:00 |
|
Roman Zeyde
|
ed01c00d0c
|
gpg: add agent-signing tool
|
2016-04-27 21:01:21 +03:00 |
|
Roman Zeyde
|
e09571151c
|
gpg: remove length type logging
|
2016-04-26 21:46:39 +03:00 |
|
Roman Zeyde
|
340aae4fb8
|
gpg: refactor decode to functional style
|
2016-04-26 21:38:59 +03:00 |
|
Roman Zeyde
|
9875c9927e
|
gpg: demo for subkeys decoding
|
2016-04-26 21:12:02 +03:00 |
|
Roman Zeyde
|
d9862ae0e1
|
gpg: debug logging for ECDSA verification
|
2016-04-26 12:57:27 +03:00 |
|
Roman Zeyde
|
5fb8b0e047
|
decode: parse GPG subkeys
|
2016-04-26 12:54:10 +03:00 |
|