ruby-pgp 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.rbenv-version +1 -0
- data/.rspec +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +14 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +82 -0
- data/Rakefile +12 -0
- data/bin/jrpgp +12 -0
- data/bin/rpgp +12 -0
- data/lib/pgp/cli/runner.rb +78 -0
- data/lib/pgp/cli.rb +160 -0
- data/lib/pgp/decryptor.rb +16 -0
- data/lib/pgp/encryptor.rb +33 -0
- data/lib/pgp/gpg/engine.rb +141 -0
- data/lib/pgp/gpg/runner.rb +189 -0
- data/lib/pgp/gpg/temp_path_helper.rb +25 -0
- data/lib/pgp/keys_importer.rb +11 -0
- data/lib/pgp/log.rb +28 -0
- data/lib/pgp/ruby_decryptor.rb +9 -0
- data/lib/pgp/signer.rb +16 -0
- data/lib/pgp/verifier.rb +14 -0
- data/lib/pgp/version.rb +3 -0
- data/lib/pgp.rb +20 -0
- data/lib/ruby-pgp.rb +1 -0
- data/ruby-pgp.gemspec +24 -0
- data/run_tests.sh +7 -0
- data/spec/helpers/keys_helper.rb +9 -0
- data/spec/helpers/process_helper.rb +13 -0
- data/spec/helpers/temp_helper.rb +28 -0
- data/spec/lib/pgp/cli_spec.rb +41 -0
- data/spec/lib/pgp/decryptor_spec.rb +58 -0
- data/spec/lib/pgp/encryptor_spec.rb +86 -0
- data/spec/lib/pgp/gpg/engine_spec.rb +276 -0
- data/spec/lib/pgp/gpg/runner_integration_spec.rb +38 -0
- data/spec/lib/pgp/gpg/runner_spec.rb +432 -0
- data/spec/lib/pgp/gpg/temp_path_helper_spec.rb +53 -0
- data/spec/lib/pgp/signer_spec.rb +48 -0
- data/spec/lib/pgp/verifier_spec.rb +40 -0
- data/spec/lib/quirks_spec.rb +102 -0
- data/spec/spec_helper.rb +27 -0
- data/spec/support/fixtures/encrypted_with_passphrase_key.txt +1 -0
- data/spec/support/fixtures/encrypted_with_passphrase_key.txt.asc +13 -0
- data/spec/support/fixtures/private_key.asc +63 -0
- data/spec/support/fixtures/private_key_with_passphrase.asc +59 -0
- data/spec/support/fixtures/public_key.asc +36 -0
- data/spec/support/fixtures/public_key_with_passphrase.asc +30 -0
- data/spec/support/fixtures/signed_file.txt +1 -0
- data/spec/support/fixtures/signed_file.txt.asc +14 -0
- data/spec/support/fixtures/unencrypted_file.txt +1 -0
- data/spec/support/fixtures/unencrypted_file.txt.asc +19 -0
- data/spec/support/fixtures/wrong_private_key_for_signature.asc +63 -0
- data/spec/support/fixtures/wrong_public_key_for_signature.asc +36 -0
- data/spec/verify.sh +124 -0
- metadata +155 -0
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'rspec'
|
2
|
+
require 'bundler'
|
3
|
+
require 'ruby-pgp'
|
4
|
+
require 'helpers/keys_helper'
|
5
|
+
require 'helpers/process_helper'
|
6
|
+
require 'helpers/temp_helper'
|
7
|
+
|
8
|
+
Fixtures_Path = Bundler.root + 'spec/support/fixtures/'
|
9
|
+
|
10
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
11
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
12
|
+
# Require this file using `require "spec_helper"` to ensure that it is only
|
13
|
+
# loaded once.
|
14
|
+
#
|
15
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
16
|
+
RSpec.configure do |config|
|
17
|
+
config.include KeysHelper
|
18
|
+
|
19
|
+
config.run_all_when_everything_filtered = true
|
20
|
+
config.filter_run :focus
|
21
|
+
|
22
|
+
# Run specs in random order to surface order dependencies. If you find an
|
23
|
+
# order dependency and want to debug it, you can fix the order by providing
|
24
|
+
# the seed, which is printed after each run.
|
25
|
+
# --seed 1234
|
26
|
+
config.order = 'random'
|
27
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
here is some unencrypted stuff, yo
|
@@ -0,0 +1,13 @@
|
|
1
|
+
-----BEGIN PGP MESSAGE-----
|
2
|
+
Version: BCPG v1.48
|
3
|
+
|
4
|
+
hQEMA5U54ioziO4kAQf+NdzYMb6XwRHg52pbuknrDmQeW6qJBwdtn0rsG6eUTVtr
|
5
|
+
LoR3NEXNmBd+Hk2kPd10cQTQ6nVSvaJvgiu+9pVf6j/GGiNEWDNKqsLPokHN5uwv
|
6
|
+
5VsRxNdfkChs7fYJf97fiSxt3I7OyCTx9r2R2Gy1kEx3+wwGfBZm+ZDUCs8W/TMs
|
7
|
+
lmGxliFqJ8MNWr7bbFvlDB5FPpeWFW6U2bYMGYAXx5bzIGM8a+CyglShdz6lLlLv
|
8
|
+
831wGM1kK4eBHtyEKQa0bMqQ2y4p8BAToyMJTef1OFg4kDw4W6MgSlIgJcCCpUhN
|
9
|
+
oPLMqNLRv9SKqi+3GN8YmUmDjREBClb8jewAnnz9GMlT1s48T6KESXqwXwAZmF7o
|
10
|
+
LHTmCnW3HOKy0aUgZuEDjJPCinEI21gZ7hW35XIKIJQ/hIxar1C9bDbYXboo9uIt
|
11
|
+
Jwk/lT3994V3Pw763v6SeaXMcCw=
|
12
|
+
=xYIS
|
13
|
+
-----END PGP MESSAGE-----
|
@@ -0,0 +1,63 @@
|
|
1
|
+
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
2
|
+
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
|
3
|
+
|
4
|
+
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
|
62
|
+
=Xb/x
|
63
|
+
-----END PGP PRIVATE KEY BLOCK-----
|
@@ -0,0 +1,59 @@
|
|
1
|
+
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
2
|
+
Version: GnuPG v1.4.12 (Darwin)
|
3
|
+
|
4
|
+
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
|
57
|
+
ZhNj/9kNlvnmMIxQ334RF3HfP0mNhFrhnoc=
|
58
|
+
=KOPk
|
59
|
+
-----END PGP PRIVATE KEY BLOCK-----
|
@@ -0,0 +1,36 @@
|
|
1
|
+
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
2
|
+
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
|
3
|
+
|
4
|
+
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
|
34
|
+
Jkt3CWvXLoN0LHFHnS56KNOYpHWKPd3Z1HeD6w==
|
35
|
+
=vAW+
|
36
|
+
-----END PGP PUBLIC KEY BLOCK-----
|
@@ -0,0 +1,30 @@
|
|
1
|
+
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
2
|
+
Version: GnuPG v1.4.12 (Darwin)
|
3
|
+
|
4
|
+
mQENBFE1G+YBCACbAxhkShGGLEvCcA60zD1ozlgE2Ed0U92/iCVQBkY05Y8F0sxq
|
5
|
+
NwaJfi+IbSeGq4PVrqEzOsD7pPGRwAkZ9dkzYJVC6jnflQPEYdF12HePQasQovWX
|
6
|
+
GMdHmTGAiEe4MrA/y10smF6jF5ft7U0J/xh6/VobiLyX961FSjOQtaE3io5kmqRT
|
7
|
+
juc6E2pxkk9QGF13/6wvxW85SlqHz+4KimqFlWwx3bp2kqgQEu9bH+uKE+BQOcMN
|
8
|
+
1nGgz7cSt8iXQg7fP2xHPoxuUfSlRGPp8/bHPmUKqo2LYInQq1Phpwf9WT+d0hBA
|
9
|
+
uehvDUxWfF2vcNS7x+VvTgHT08wDzfPGjNblABEBAAG0KUNocmlzIE5lbHNvbiA8
|
10
|
+
c3VwZXJjaHJpc25lbHNvbkBnbWFpbC5jb20+iQE4BBMBAgAiBQJRNRvmAhsDBgsJ
|
11
|
+
CAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRCVOeIqM4juJCZsB/4+U6EJH0O8nTV4
|
12
|
+
+isStuZES2+o4lHGiHUyaZF18ucL6disNK0JmZwyg8tCE6EFAdi9j+K79+MR1aqv
|
13
|
+
EHnm2QdhBnee5F7sjEbQdmNx9hSUFE2Zwl6jSp+TWTt8f5IYYtH7Cl7Txl9NKwZU
|
14
|
+
/0VFCegeBvOjPfgDECcqb+CiA7y+lLaRXhAQLcqPNTUo2PrzOVesk3T6k8/RMEH0
|
15
|
+
R0zzAlb2YeUHZj/8U0YOYhd84O88YD2kjVx/dpAgN78czbVDHhRYYNaX5ey2juVu
|
16
|
+
KD4D8SFkvQolAXR3lUrYJOewuWrp5V33U6Eqes+7wiV4FSdfuzv5CAKJfMzQ9XOt
|
17
|
+
gLDF8ouKuQENBFE1G+YBCACqkPuusUI9h+g4CRKYDPWBeQsRkexK7v3LNcnSVTmu
|
18
|
+
ukFe0tpZoJ1W1mKeS8fUYJq3uBg2IOFJ9XwOn0HqOLJIebI310gzpWiU4zFcNkWQ
|
19
|
+
EdNRfMoGG+xplobu8fUGAruaM/a8f8096/GmaeIgFB2ZCzUCURof5f0carL1yXrJ
|
20
|
+
bD0avZjQe9CMQMeLWLVC2tSH9si72hKgOeTMka9kTJSpigFsxft2S6NIBv50nHi8
|
21
|
+
3X7qWN6WceR6MZwVM2LpBQTitOBjqT+FFyPQfqSLXP3848P/Ql50yzS+tLCuGylv
|
22
|
+
HL+mtAVf5Erbay7tehGxXW/xbEypKj8HGYAUAP+45ya5ABEBAAGJAR8EGAECAAkF
|
23
|
+
AlE1G+YCGwwACgkQlTniKjOI7iTL4gf/XHIqADZH1bfmLDvNZJ9V1EevxewZ4tzH
|
24
|
+
49e0woHB4tUwmvCtipP4fidhH6L1oWrKTh49DHsA+gWLVH5dvhIxTlCR6dj80pvP
|
25
|
+
U5+okyWvvuYO3KaCOsBBUyS6YY7T0l5uWCkKPNXr3zU0hcHa8D+4T0ftiKktbNyy
|
26
|
+
4hmB1YYWQWYv1fTkv5WcKsikpJ+Z+7QKhMCxjlRsTRm+QWm9whtcmxCE3eS+3BDi
|
27
|
+
ifE1SCYMKrFHt/Lniu81tJ4P5smquLe2jWyXc5ITe9kcc2a8U5c4SqYjFocKh7w5
|
28
|
+
jrTovElsR6L3q65JU11mE2P/2Q2W+eYwjFDffhEXcd8/SY2EWuGehw==
|
29
|
+
=OnFp
|
30
|
+
-----END PGP PUBLIC KEY BLOCK-----
|
@@ -0,0 +1 @@
|
|
1
|
+
Here is some stuff to sign, yo
|
@@ -0,0 +1,14 @@
|
|
1
|
+
-----BEGIN PGP MESSAGE-----
|
2
|
+
Version: BCPG v1.48
|
3
|
+
|
4
|
+
owJ4nJvAy8zAxDjV8pGWccc7FcbTJkn8xZnpeakp8WmZOal6JRUlgZZ8azxSi1IV
|
5
|
+
MosVivNzUxWKS0rT0hRK8hVACnUUKvO5OhndWRgYmRgMWZmAqk9oyThnFAFV+6Xm
|
6
|
+
FOfnKdgUlxakFiWDhPLAIg7puYmZOXrJ+bl2DFycAjDLS5LY//sEH7GKr3Pd8+aW
|
7
|
+
0zNBkWiVPxF2z+xketdnJzsebj/NvvLN6pV/9P1+VmjMj7jdrnK51iTz397Y5loF
|
8
|
+
BWfLyWed/v8q6J57U/7k+dbXauaCW/7um/RuGr+Iamc895Yr5g23r4jPebDDb3Z6
|
9
|
+
7B6bcIW1KzOOHXXNcdo2jcv8OLPVh5im7CUSNyY3vH5TUdfA2bn9SIqqpEHq6eM7
|
10
|
+
BL3EzT86FSf9ivXk32lq3vzGn+1wtsOsKSsMBD9bHbG+VOggefpm0vx/ejcny3xM
|
11
|
+
Xlh20G1mnNnPzezvrvueO3HW2UF12op1E9VWBxmofnHbtXbe5nPzeG64tk9W9lq4
|
12
|
+
8sjOm3ZaD1aWBu8R4K2cfrH7hgEAwrOvhQ==
|
13
|
+
=nUp1
|
14
|
+
-----END PGP MESSAGE-----
|
@@ -0,0 +1 @@
|
|
1
|
+
Top Secret Stuff
|
@@ -0,0 +1,19 @@
|
|
1
|
+
-----BEGIN PGP MESSAGE-----
|
2
|
+
Version: BCPG v1.47
|
3
|
+
|
4
|
+
hQEMA0hQjTEd00ExAQgAq2/daWwiAyNXrQVmJeWa7lM9oSFN1gae+yNVz7zysicw
|
5
|
+
B7KxUxOtDm4bmNfV72aQxzqOF1+vbn9NFv+beoat9/ZtqfSRSPeMow8AZSSii8Cp
|
6
|
+
I31xMfsbmzCKOQHqto3tNHU1bcyD8fF3STVo2bsbohUcAJ0wGQker+dQqqxBfElp
|
7
|
+
iLJQTQY+0DXwujV4w3+k+I5IeWPDuviqc7BVqKxq/pISbcre2OmS7wl63FCIimPW
|
8
|
+
2PHW+B9s9aEwTbaJNqr9Dc98xWmrmbQlnWi1U/RCHHpZpV3ME7HwH3bBHB5/HzLe
|
9
|
+
Zt4SHZU8TV2iIZTauEnlr24GJ7thbc6mP+KMaN2xNIUBDAMhK4YyQS5dIQEIAI6r
|
10
|
+
2UIYIyl8MY8uGZbm9oIp+HbQvL7Uu7CggHc2+L9fJovGGw1iAvywIGFxyuVQKe/m
|
11
|
+
QYcAgPIKwrSV6OAE4mZkV9yqBQkKiQMoYlzS4ZwBgle+6PiUeJBFoh5suTcxHn3I
|
12
|
+
wKkeSHZ/zZsfh5skC5jvp1d8K6aplL1NoRsXEXDkOSzAL//CVF6gnvRWmVe4Rt9u
|
13
|
+
lfwHiEa7k1HAkS9Gb3GBhLFSTY/ZxoiZMtXWT86P8KI5zwfFLOE2SbpvBGs9OCeD
|
14
|
+
DNDH3HA1jG7n9YpAc1pmqok4s/j5X4uJkJDRU0bQo2J3rcfS6tXRMSnWjqWAVTp5
|
15
|
+
24YnhPb/ee2+w20xP6zSUgHH1na+O4vmNgRHDGBjgWCzEcqJCW45OpcQ+rl/1VmT
|
16
|
+
nGSYc3FZA3+JPtBU98pAHrbPEeFBLOWoEc9mb0nS0f8OTky8ZJkzp2EQ1SsH+jV4
|
17
|
+
ZIk=
|
18
|
+
=15jR
|
19
|
+
-----END PGP MESSAGE-----
|
@@ -0,0 +1,63 @@
|
|
1
|
+
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
2
|
+
Version: GnuPG/MacGPG2 v2.0.18 (Darwin)
|
3
|
+
|
4
|
+
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
|
62
|
+
=vjEq
|
63
|
+
-----END PGP PRIVATE KEY BLOCK-----
|
@@ -0,0 +1,36 @@
|
|
1
|
+
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
2
|
+
Version: GnuPG/MacGPG2 v2.0.18 (Darwin)
|
3
|
+
|
4
|
+
mQENBFE6kEoBCACk3kXNCj84My+mzx17/VLkZFP1c8/4QuULK+6LiJdMdTYM0XFZ
|
5
|
+
NAr5Pk/CCCI+1NeB/e7ZUF8gbfmCA9NNkT8NQX49w3SUKlmvHll7kepmlq8VbqgE
|
6
|
+
wskjaP7hO9Q9H90p9pNpimVNPFNq8b6FJti5p9kOck7ZbU6WBvbobJgSi5TQzVNm
|
7
|
+
h0rTwvF9tX8IhzMXxGwNWIlQ7B7e4fyfSUkYaviMGK4q+cdiRa8LIg2stzDgwwhK
|
8
|
+
4AB+2ho2lL9VdxKlT6vWYqjdLrqlXgmBF4SsNktU+u14QeY9XUN68ljpv8ae6FRD
|
9
|
+
LJbtOMQvnFmltOtSo4gD17gj5cOa8gOGZf2FABEBAAG0KU1yLiBXcm9uZyA8d3Jv
|
10
|
+
bmctcHJpdmF0ZS1rZXlAZXhhbXBsZS5jb20+iQE5BBMBAgAjBQJROpBKAhsvBwsJ
|
11
|
+
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQGu2V1OI+tdIq+QgAn50s5345yiI6
|
12
|
+
pU/euMYBNNjjhqEt5P9Fo7as4Jbp63geJxIUOHgwSo9f7Xd/B5kvdaLUU6uv7cAL
|
13
|
+
vibL6OKIW/LSgX8AVtD2mcFNMaVGkc/Bil/yjA4F1xF7cSeJrZdGHNN9VYqCaSnr
|
14
|
+
plL48pJykhJQnDcRHD4YT95OSBGJ+P1NLecZNEgTR5Dxh+U6I53TF0luXcqrvhBL
|
15
|
+
fzvu+0jFJJqybDLP0F+gG5YjrqhSplelI6em1iVklkRJqgFJs4+s+bKzyXxmXsqm
|
16
|
+
6wJPCOZDJFl9lk81xTcuXMKqIdsbH1ixF9LTnshzHZCfHkJ8KCAT2OUpq5ei+EbN
|
17
|
+
FLwamPlX/rkBDQRROpBKAQgAoNNJE47Lmn7zZ4vmkcmU55qyA2r4tbKfDXGeIqwh
|
18
|
+
rhpbxhf4X1jbxAvpZsUIHCHilPsNjBpuU5P5+cb+h33Ww8zJ8ZnHnrm1bBjdoV5s
|
19
|
+
slKu/wvxrE2wSbvc+AtAlLastcTs3Dx08x5ROcYArv/UTCvMyfHBxCXZ5S6z/OCF
|
20
|
+
lk84U9eSfsy2GzgLCrUqyDFpKYqC38msH1wlE7QjNILrpLYN/NLQonWXg7mzXCnV
|
21
|
+
ZxjR1POBBPJFvWtamOMnwbSZncrr0Gyo5zf/8QBu+GUXCXZD3GtsRWTL8niylC4m
|
22
|
+
STSQJUQGYcuxDzqbVOPkyO9VQLePZhvIqOU4z12frn6YEwARAQABiQI+BBgBAgAJ
|
23
|
+
BQJROpBKAhsuASkJEBrtldTiPrXSwF0gBBkBAgAGBQJROpBKAAoJENm+T100RqKg
|
24
|
+
RHkIAJo/+wNupu3eXjJNQnzKhNVIDrOtH/CgMLUZsHsLYhxImvpUaWxx/ubrSHh9
|
25
|
+
L7aYWxRkRqiGJ6PSaSJzS9xX5/gSdwpsp1Z5WmMfVoaX24wIDtCBOvj+uhc+MzEi
|
26
|
+
atP1w8JRzLFggLmJ8Qs0OqYpGOjRFnw/+wPJ8aWu1Z+z/25SRdj+qIYnQa9KS/qt
|
27
|
+
FOqO8RoULzqodE4i6gvf8DBe1ynsIWEoQtZZpEDGmWy/APVsjetQ1MVtNRIpvXo8
|
28
|
+
fVy2+MiRc5XwdwaNXxKoi8xisLno3wGX3HvVoRRVp5/b8dI+xXXDZC3w3PN6DQ7e
|
29
|
+
Cn0FZwSawc0rSlcNmSs361RejgB9owf/bW3tsrirRw22eJiE1FNXqV7Ice4ChH3z
|
30
|
+
rynP69YyS85Rc/P5gwHvuTYoq0a9sK9Ob/HKzW7qijaniW4zQkXysYiYNiOuTME+
|
31
|
+
zqeFFh3L2U0aWroiu9dkrwckGqALsTo1xFKKdf3UzkGGdjjPd0pobjFi3KaFFWFM
|
32
|
+
NAhq0g7XGc2RGkzJVb9mnZky4+RoJVmgy/7obAxcn4B9QLg8CKU4r5EegNrUWcB6
|
33
|
+
5aRGo24XJP2PbaWexC+5fRzvWfuIdIUM0covGmnFyXfzeE8zlcmXx6f00cCcMiw8
|
34
|
+
XFTa39eqeG+pxntgG8pRrjfXkiAMHgRv70iSO2ESRbBdeN6ThRkKsg==
|
35
|
+
=66YG
|
36
|
+
-----END PGP PUBLIC KEY BLOCK-----
|
data/spec/verify.sh
ADDED
@@ -0,0 +1,124 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
BASE_DIR='.'
|
4
|
+
|
5
|
+
function cleanup() {
|
6
|
+
echo 'Cleanup existing keys'
|
7
|
+
rspec ${BASE_DIR}/spec/lib/pgp/gpg/runner_integration_spec.rb > /dev/null
|
8
|
+
|
9
|
+
listKeys
|
10
|
+
}
|
11
|
+
|
12
|
+
function listKeys() {
|
13
|
+
echo 'List existing public keys'
|
14
|
+
gpg --quiet --batch --list-keys --fingerprint
|
15
|
+
|
16
|
+
echo 'List existing private keys'
|
17
|
+
gpg --quiet --batch --list-secret-keys --fingerprint
|
18
|
+
}
|
19
|
+
|
20
|
+
function sectionStart() {
|
21
|
+
echo ''
|
22
|
+
echo $1
|
23
|
+
echo '================================================'
|
24
|
+
}
|
25
|
+
|
26
|
+
function sectionEnd() {
|
27
|
+
echo '================================================'
|
28
|
+
echo ''
|
29
|
+
}
|
30
|
+
|
31
|
+
function printExitCode() {
|
32
|
+
echo "=> $?"
|
33
|
+
}
|
34
|
+
|
35
|
+
sectionStart 'Setup'
|
36
|
+
gpg --version
|
37
|
+
printExitCode
|
38
|
+
cleanup
|
39
|
+
sectionEnd
|
40
|
+
|
41
|
+
|
42
|
+
sectionStart 'Decrypt key without passphrase'
|
43
|
+
gpg --quiet --batch --import ${BASE_DIR}/spec/support/fixtures/private_key.asc
|
44
|
+
listKeys
|
45
|
+
echo 'Decrypting message'
|
46
|
+
rm -f /tmp/msg1.txt
|
47
|
+
gpg --quiet --batch --yes --ignore-mdc-error --output /tmp/msg1.txt --decrypt ${BASE_DIR}/spec/support/fixtures/unencrypted_file.txt.asc
|
48
|
+
printExitCode
|
49
|
+
cat /tmp/msg1.txt
|
50
|
+
cleanup
|
51
|
+
sectionEnd
|
52
|
+
|
53
|
+
|
54
|
+
sectionStart 'Decrypt key with passphrase'
|
55
|
+
gpg --quiet --batch --import ${BASE_DIR}/spec/support/fixtures/private_key_with_passphrase.asc
|
56
|
+
listKeys
|
57
|
+
|
58
|
+
echo 'Decrypting message with gpg > 2.1'
|
59
|
+
rm -f /tmp/msg1.txt
|
60
|
+
gpg --quiet --batch --pinentry-mode loopback --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --decrypt ${BASE_DIR}/spec/support/fixtures/encrypted_with_passphrase_key.txt.asc
|
61
|
+
printExitCode
|
62
|
+
cat /tmp/msg1.txt
|
63
|
+
|
64
|
+
echo 'Decrypting message with gpg 2.0'
|
65
|
+
rm -f /tmp/msg1.txt
|
66
|
+
gpg --quiet --batch --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --decrypt ${BASE_DIR}/spec/support/fixtures/encrypted_with_passphrase_key.txt.asc
|
67
|
+
printExitCode
|
68
|
+
cat /tmp/msg1.txt
|
69
|
+
|
70
|
+
cleanup
|
71
|
+
sectionEnd
|
72
|
+
|
73
|
+
|
74
|
+
sectionStart 'Encrypt with public key'
|
75
|
+
echo 'Import public key'
|
76
|
+
gpg --quiet --batch --import ${BASE_DIR}/spec/support/fixtures/public_key.asc
|
77
|
+
printExitCode
|
78
|
+
|
79
|
+
echo 'Encrypt text'
|
80
|
+
rm -f /tmp/encrypted1.txt
|
81
|
+
echo "FooBar" > /tmp/plaintext1.txt
|
82
|
+
gpg --quiet --batch --yes --output /tmp/encrypted1.txt --recipient foo@bar.com --trust-model always --encrypt /tmp/plaintext1.txt
|
83
|
+
printExitCode
|
84
|
+
cleanup
|
85
|
+
|
86
|
+
echo 'Import private key'
|
87
|
+
gpg --quiet --batch --import ${BASE_DIR}/spec/support/fixtures/private_key.asc
|
88
|
+
printExitCode
|
89
|
+
|
90
|
+
echo 'Decrypting message with gpg > 2.1'
|
91
|
+
rm -f /tmp/msg1.txt
|
92
|
+
gpg --quiet --batch --pinentry-mode loopback --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --decrypt /tmp/encrypted1.txt
|
93
|
+
printExitCode
|
94
|
+
cat /tmp/msg1.txt
|
95
|
+
|
96
|
+
echo 'Decrypting message with gpg 2.0'
|
97
|
+
rm -f /tmp/msg1.txt
|
98
|
+
gpg --quiet --batch --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --decrypt /tmp/encrypted1.txt
|
99
|
+
printExitCode
|
100
|
+
cat /tmp/msg1.txt
|
101
|
+
|
102
|
+
cleanup
|
103
|
+
sectionEnd
|
104
|
+
|
105
|
+
|
106
|
+
sectionStart 'Sign a file with passphrase'
|
107
|
+
gpg --quiet --batch --import ${BASE_DIR}/spec/support/fixtures/private_key_with_passphrase.asc
|
108
|
+
printExitCode
|
109
|
+
|
110
|
+
echo 'Sign message with gpg > 2.1'
|
111
|
+
rm -f /tmp/msg1.txt
|
112
|
+
gpg --quiet --batch --pinentry-mode loopback --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --sign ${BASE_DIR}/spec/support/fixtures/signed_file.txt
|
113
|
+
printExitCode
|
114
|
+
cat /tmp/msg1.txt
|
115
|
+
|
116
|
+
echo 'Sign message with gpg 2.0'
|
117
|
+
rm -f /tmp/msg1.txt
|
118
|
+
gpg --quiet --batch --passphrase "testingpgp" --yes --ignore-mdc-error --output /tmp/msg1.txt --sign ${BASE_DIR}/spec/support/fixtures/signed_file.txt
|
119
|
+
printExitCode
|
120
|
+
cat /tmp/msg1.txt
|
121
|
+
|
122
|
+
|
123
|
+
cleanup
|
124
|
+
sectionEnd
|
metadata
ADDED
@@ -0,0 +1,155 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ruby-pgp
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Camilo Sanchez
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-02-13 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '13'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '13'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rspec
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 3.9.0
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 3.9.0
|
41
|
+
description: PGP for Ruby
|
42
|
+
email:
|
43
|
+
- gems@tddapps.com
|
44
|
+
executables:
|
45
|
+
- jrpgp
|
46
|
+
- rpgp
|
47
|
+
extensions: []
|
48
|
+
extra_rdoc_files: []
|
49
|
+
files:
|
50
|
+
- ".gitignore"
|
51
|
+
- ".rbenv-version"
|
52
|
+
- ".rspec"
|
53
|
+
- ".ruby-version"
|
54
|
+
- ".travis.yml"
|
55
|
+
- Gemfile
|
56
|
+
- LICENSE.txt
|
57
|
+
- README.md
|
58
|
+
- Rakefile
|
59
|
+
- bin/jrpgp
|
60
|
+
- bin/rpgp
|
61
|
+
- lib/pgp.rb
|
62
|
+
- lib/pgp/cli.rb
|
63
|
+
- lib/pgp/cli/runner.rb
|
64
|
+
- lib/pgp/decryptor.rb
|
65
|
+
- lib/pgp/encryptor.rb
|
66
|
+
- lib/pgp/gpg/engine.rb
|
67
|
+
- lib/pgp/gpg/runner.rb
|
68
|
+
- lib/pgp/gpg/temp_path_helper.rb
|
69
|
+
- lib/pgp/keys_importer.rb
|
70
|
+
- lib/pgp/log.rb
|
71
|
+
- lib/pgp/ruby_decryptor.rb
|
72
|
+
- lib/pgp/signer.rb
|
73
|
+
- lib/pgp/verifier.rb
|
74
|
+
- lib/pgp/version.rb
|
75
|
+
- lib/ruby-pgp.rb
|
76
|
+
- ruby-pgp.gemspec
|
77
|
+
- run_tests.sh
|
78
|
+
- spec/helpers/keys_helper.rb
|
79
|
+
- spec/helpers/process_helper.rb
|
80
|
+
- spec/helpers/temp_helper.rb
|
81
|
+
- spec/lib/pgp/cli_spec.rb
|
82
|
+
- spec/lib/pgp/decryptor_spec.rb
|
83
|
+
- spec/lib/pgp/encryptor_spec.rb
|
84
|
+
- spec/lib/pgp/gpg/engine_spec.rb
|
85
|
+
- spec/lib/pgp/gpg/runner_integration_spec.rb
|
86
|
+
- spec/lib/pgp/gpg/runner_spec.rb
|
87
|
+
- spec/lib/pgp/gpg/temp_path_helper_spec.rb
|
88
|
+
- spec/lib/pgp/signer_spec.rb
|
89
|
+
- spec/lib/pgp/verifier_spec.rb
|
90
|
+
- spec/lib/quirks_spec.rb
|
91
|
+
- spec/spec_helper.rb
|
92
|
+
- spec/support/fixtures/encrypted_with_passphrase_key.txt
|
93
|
+
- spec/support/fixtures/encrypted_with_passphrase_key.txt.asc
|
94
|
+
- spec/support/fixtures/private_key.asc
|
95
|
+
- spec/support/fixtures/private_key_with_passphrase.asc
|
96
|
+
- spec/support/fixtures/public_key.asc
|
97
|
+
- spec/support/fixtures/public_key_with_passphrase.asc
|
98
|
+
- spec/support/fixtures/signed_file.txt
|
99
|
+
- spec/support/fixtures/signed_file.txt.asc
|
100
|
+
- spec/support/fixtures/unencrypted_file.txt
|
101
|
+
- spec/support/fixtures/unencrypted_file.txt.asc
|
102
|
+
- spec/support/fixtures/wrong_private_key_for_signature.asc
|
103
|
+
- spec/support/fixtures/wrong_public_key_for_signature.asc
|
104
|
+
- spec/verify.sh
|
105
|
+
homepage: https://github.com/cshtdd/ruby-pgp
|
106
|
+
licenses:
|
107
|
+
- MIT
|
108
|
+
metadata: {}
|
109
|
+
post_install_message:
|
110
|
+
rdoc_options: []
|
111
|
+
require_paths:
|
112
|
+
- lib
|
113
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - ">="
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '0'
|
123
|
+
requirements: []
|
124
|
+
rubygems_version: 3.0.6
|
125
|
+
signing_key:
|
126
|
+
specification_version: 4
|
127
|
+
summary: This is a GnuPG2 wrapper modeled after the jruby-pgp api
|
128
|
+
test_files:
|
129
|
+
- spec/helpers/keys_helper.rb
|
130
|
+
- spec/helpers/process_helper.rb
|
131
|
+
- spec/helpers/temp_helper.rb
|
132
|
+
- spec/lib/pgp/cli_spec.rb
|
133
|
+
- spec/lib/pgp/decryptor_spec.rb
|
134
|
+
- spec/lib/pgp/encryptor_spec.rb
|
135
|
+
- spec/lib/pgp/gpg/engine_spec.rb
|
136
|
+
- spec/lib/pgp/gpg/runner_integration_spec.rb
|
137
|
+
- spec/lib/pgp/gpg/runner_spec.rb
|
138
|
+
- spec/lib/pgp/gpg/temp_path_helper_spec.rb
|
139
|
+
- spec/lib/pgp/signer_spec.rb
|
140
|
+
- spec/lib/pgp/verifier_spec.rb
|
141
|
+
- spec/lib/quirks_spec.rb
|
142
|
+
- spec/spec_helper.rb
|
143
|
+
- spec/support/fixtures/encrypted_with_passphrase_key.txt
|
144
|
+
- spec/support/fixtures/encrypted_with_passphrase_key.txt.asc
|
145
|
+
- spec/support/fixtures/private_key.asc
|
146
|
+
- spec/support/fixtures/private_key_with_passphrase.asc
|
147
|
+
- spec/support/fixtures/public_key.asc
|
148
|
+
- spec/support/fixtures/public_key_with_passphrase.asc
|
149
|
+
- spec/support/fixtures/signed_file.txt
|
150
|
+
- spec/support/fixtures/signed_file.txt.asc
|
151
|
+
- spec/support/fixtures/unencrypted_file.txt
|
152
|
+
- spec/support/fixtures/unencrypted_file.txt.asc
|
153
|
+
- spec/support/fixtures/wrong_private_key_for_signature.asc
|
154
|
+
- spec/support/fixtures/wrong_public_key_for_signature.asc
|
155
|
+
- spec/verify.sh
|