Mariano Cano
7104588fcb
Fix linter error.
2020-05-20 17:58:37 -07:00
Mariano Cano
aaf71ce66a
Add unit tests for awskms.
2020-05-20 17:04:01 -07:00
Mariano Cano
d4cb9f4ac7
Define an interface for kms operations.
...
This interface will be used for unit testing.
2020-05-20 12:43:14 -07:00
Mariano Cano
82fb96588e
Fix unit tests.
2020-05-19 17:45:15 -07:00
Mariano Cano
c32abb76cd
Add initial implementation to support AWS KMS.
2020-05-19 17:35:36 -07:00
Mariano Cano
b0f768a3fb
Add implementation of URIs for KMS.
...
Implementation is based on the PKCS #11 URI Scheme RFC
https://tools.ietf.org/html/rfc7512
2020-05-19 17:32:52 -07:00
Mariano Cano
012a4734bf
Add better messaging when yubikey is not detected.
2020-05-15 11:33:04 -07:00
Mariano Cano
7d61c0003c
Enable softkms and cloudkms.
2020-05-15 11:32:12 -07:00
Mariano Cano
63e36ecd7a
Refactor the initialization of KeyManagers.
2020-05-11 18:47:22 -07:00
Mariano Cano
029483463b
Remove extra +build statement.
2020-05-07 18:51:41 -07:00
Mariano Cano
677e99793e
Create alternative yubikey file when cgo is not enabled.
...
This yubikey will always fail.
2020-05-07 18:35:10 -07:00
Mariano Cano
6868190fff
Add initial support for yubikey.
2020-05-07 18:22:09 -07:00
Mariano Cano
1138cc4207
Retry CloudKMS GetPublicKey.
...
On HSM keys are not generated instantly and the GetPublicKey fails
with a FailedPrecondition error. This change will retry GetPublicKey
if this happens.
2020-02-21 12:36:29 -08:00
Mariano Cano
5c8c741fab
Fix linting issues.
2020-02-14 11:46:31 -08:00
Mariano Cano
dd5a96a42e
Fix typo.
2020-02-14 10:42:50 -08:00
Mariano Cano
b724f5a338
Fix typos.
2020-02-14 10:24:56 -08:00
Mariano Cano
6987a46b76
Skip test on travis.
2020-02-13 18:38:00 -08:00
Mariano Cano
b11bbd5728
Fix typo.
2020-02-13 18:34:43 -08:00
Mariano Cano
cff346e7fd
Skip test on travis, it won't fail because they have access to the KMS.
2020-02-13 15:49:16 -08:00
Mariano Cano
fa8116497c
Make Signer public and add contructor NewCloudKMS.
2020-01-21 19:09:21 -08:00
Mariano Cano
5d5ee68d88
Make GCP client public to facilitate extensibility.
2020-01-21 12:50:21 -08:00
Mariano Cano
dff498f17f
Add tests for cloudkms.
2020-01-15 19:32:26 -08:00
Mariano Cano
264179cda3
Add tests for kms and kms/apiv1 packages.
2020-01-15 17:56:50 -08:00
Mariano Cano
c250c6ad91
Add unit tests for softkms.
2020-01-15 17:30:17 -08:00
Mariano Cano
a773977a81
Fix interface change.
2020-01-15 17:29:34 -08:00
Mariano Cano
927a3b3a86
Return crypto.PublicKey on kms.GetPublicKey.
2020-01-15 17:27:21 -08:00
Mariano Cano
a9c2db8f98
Add close method and fix types in softkms.
2020-01-14 18:46:18 -08:00
Mariano Cano
a3128a26bb
Add Close method to the key manager interface.
2020-01-14 18:46:01 -08:00
Mariano Cano
e60beeb7fc
Make cloudkms more robust.
...
* Automatically create key rings if needed.
* User CryptoKeyVersions if needed.
* Add support to close the client.
* Add new pareters to CreateKey responses to make things easier.
2020-01-14 18:43:39 -08:00
Mariano Cano
3f8de17a40
Cleanup types and add initial support for the options required for PKCS11.
2020-01-14 18:42:14 -08:00
Mariano Cano
d13754166a
Add support for cloudkms and softkms.
2020-01-09 18:41:13 -08:00