enveloperb 0.3.1 → 0.4.0.1.g3e88b4f

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15f68f424df1c8f514827557bfe9a970a8f3ad0d15464e6a8b324ccf13532664
4
- data.tar.gz: d2b3ba99bd9cad4be552f390fc76a5ade303f69e7534fc9a4198982cfb14f893
3
+ metadata.gz: '09244f571b8327809228207aa5d4f3b8afd4fb4cf6349322892072d9ed49b183'
4
+ data.tar.gz: 5969db1f999cad890cf480491d142db0ed10bc51fa50b150a2e0210e8d6176a9
5
5
  SHA512:
6
- metadata.gz: f110838cf7165aa0be430592566c31a7d6cf6085db4df9843718a90e5bb4b9f6d23ad1bb75a29d8f146c23207be77c1df98ef0f0ec0dcbfbd604f4aec352230f
7
- data.tar.gz: fbca9519faefae27607de67c65a6494aae1e7203123b50c80ad54bee790f877a0679da0d94c04a5311820b388455f521ff0d6417c643b3ac19d0c9c5e41bb858
6
+ metadata.gz: 1e87cb46b8cd5f3e11ad3b6dac086f7ba7a6ccf5e4ac5235a357a6e6488bbe205b12bca40e3584f62a55ecbda3af94ed4ab63b0aede830d90eda7838256abf66
7
+ data.tar.gz: 99faf7705d503988dd95df0ebe31386ffd68a75d914ca2c7e3ea9fe853141c315a081f822d61c9db349b2caee268120db604c5604485267d9ae6b8da3c17729d
@@ -37,6 +37,17 @@ dependencies = [
37
37
  "subtle",
38
38
  ]
39
39
 
40
+ [[package]]
41
+ name = "ahash"
42
+ version = "0.7.6"
43
+ source = "registry+https://github.com/rust-lang/crates.io-index"
44
+ checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
45
+ dependencies = [
46
+ "getrandom",
47
+ "once_cell",
48
+ "version_check",
49
+ ]
50
+
40
51
  [[package]]
41
52
  name = "aho-corasick"
42
53
  version = "0.7.18"
@@ -556,18 +567,20 @@ dependencies = [
556
567
 
557
568
  [[package]]
558
569
  name = "envelopers"
559
- version = "0.2.0"
570
+ version = "0.3.0"
560
571
  source = "registry+https://github.com/rust-lang/crates.io-index"
561
- checksum = "23dbd85a683aabc899b8d9d2c891077e0f5f9dd20ae62b989d038fc241ab9257"
572
+ checksum = "f61714237566bf60718166f12f0c3da4646a5dd0dd9b9ca6f20948e38aabc391"
562
573
  dependencies = [
563
574
  "aes-gcm",
564
575
  "async-trait",
565
576
  "aws-sdk-kms",
577
+ "lru",
566
578
  "rand",
567
579
  "rand_chacha",
568
580
  "serde",
569
581
  "serde_cbor",
570
582
  "thiserror",
583
+ "zeroize",
571
584
  ]
572
585
 
573
586
  [[package]]
@@ -714,6 +727,9 @@ name = "hashbrown"
714
727
  version = "0.11.2"
715
728
  source = "registry+https://github.com/rust-lang/crates.io-index"
716
729
  checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
730
+ dependencies = [
731
+ "ahash",
732
+ ]
717
733
 
718
734
  [[package]]
719
735
  name = "hermit-abi"
@@ -888,6 +904,15 @@ dependencies = [
888
904
  "cfg-if",
889
905
  ]
890
906
 
907
+ [[package]]
908
+ name = "lru"
909
+ version = "0.7.7"
910
+ source = "registry+https://github.com/rust-lang/crates.io-index"
911
+ checksum = "c84e6fe5655adc6ce00787cf7dcaf8dc4f998a0565d23eafc207a8b08ca3349a"
912
+ dependencies = [
913
+ "hashbrown",
914
+ ]
915
+
891
916
  [[package]]
892
917
  name = "matches"
893
918
  version = "0.1.9"
@@ -1349,6 +1374,18 @@ dependencies = [
1349
1374
  "unicode-xid",
1350
1375
  ]
1351
1376
 
1377
+ [[package]]
1378
+ name = "synstructure"
1379
+ version = "0.12.6"
1380
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1381
+ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
1382
+ dependencies = [
1383
+ "proc-macro2",
1384
+ "quote",
1385
+ "syn",
1386
+ "unicode-xid",
1387
+ ]
1388
+
1352
1389
  [[package]]
1353
1390
  name = "termcolor"
1354
1391
  version = "1.1.3"
@@ -1728,6 +1765,21 @@ checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8"
1728
1765
 
1729
1766
  [[package]]
1730
1767
  name = "zeroize"
1731
- version = "1.5.4"
1768
+ version = "1.5.5"
1732
1769
  source = "registry+https://github.com/rust-lang/crates.io-index"
1733
- checksum = "7eb5728b8afd3f280a869ce1d4c554ffaed35f45c231fc41bfbd0381bef50317"
1770
+ checksum = "94693807d016b2f2d2e14420eb3bfcca689311ff775dcf113d74ea624b7cdf07"
1771
+ dependencies = [
1772
+ "zeroize_derive",
1773
+ ]
1774
+
1775
+ [[package]]
1776
+ name = "zeroize_derive"
1777
+ version = "1.3.2"
1778
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1779
+ checksum = "3f8f187641dad4f680d25c4bfc4225b418165984179f26ca76ec4fb6441d3a17"
1780
+ dependencies = [
1781
+ "proc-macro2",
1782
+ "quote",
1783
+ "syn",
1784
+ "synstructure",
1785
+ ]
@@ -4,7 +4,7 @@ version = "0.0.0"
4
4
  edition = "2021"
5
5
 
6
6
  [dependencies]
7
- envelopers = "0.2"
7
+ envelopers = "0.3"
8
8
  lazy_static = "^0.2.2"
9
9
  rb-sys = "0.8.0"
10
10
  rutie = { git = "https://github.com/mpalmer/rutie", branch = "rb_sys" }
@@ -10,7 +10,7 @@ extern crate lazy_static;
10
10
  use aws_config;
11
11
  use aws_sdk_kms;
12
12
  use aws_types;
13
- use envelopers::{EncryptedRecord, EnvelopeCipher, KMSKeyProvider, SimpleKeyProvider};
13
+ use envelopers::{CacheOptions, EncryptedRecord, EnvelopeCipher, KMSKeyProvider, SimpleKeyProvider};
14
14
  use std::borrow::Cow;
15
15
  use tokio::runtime::Runtime;
16
16
  use rutie::{Class, Encoding, Hash, Module, Object, RString, Symbol, VerifiedObject, VM};
@@ -55,7 +55,7 @@ methods!(
55
55
  key.clone_from_slice(rbkey.unwrap().to_bytes_unchecked());
56
56
 
57
57
  let provider = SimpleKeyProvider::init(key);
58
- let cipher = EnvelopeCipher::init(provider);
58
+ let cipher = EnvelopeCipher::init(provider, CacheOptions::default());
59
59
 
60
60
  let klass = Module::from_existing("Enveloperb").get_nested_class("Simple");
61
61
  return klass.wrap_data(SimpleCipher{ cipher: cipher, runtime: Runtime::new().unwrap() }, &*SIMPLE_CIPHER_WRAPPER);
@@ -121,7 +121,7 @@ methods!(
121
121
 
122
122
  let kmsclient = aws_sdk_kms::Client::new(&kmsclient_config);
123
123
  let provider = KMSKeyProvider::new(kmsclient, rbkey.unwrap().to_string());
124
- let cipher = EnvelopeCipher::init(provider);
124
+ let cipher = EnvelopeCipher::init(provider, CacheOptions::default().with_max_bytes(100_000));
125
125
 
126
126
  let klass = Module::from_existing("Enveloperb").get_nested_class("AWSKMS");
127
127
  return klass.wrap_data(AWSKMSCipher{ cipher: cipher, runtime: rt }, &*AWSKMS_CIPHER_WRAPPER);
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enveloperb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0.1.g3e88b4f
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Palmer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-17 00:00:00.000000000 Z
11
+ date: 2022-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rb_sys
@@ -235,9 +235,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
235
235
  version: 2.7.0
236
236
  required_rubygems_version: !ruby/object:Gem::Requirement
237
237
  requirements:
238
- - - ">="
238
+ - - ">"
239
239
  - !ruby/object:Gem::Version
240
- version: '0'
240
+ version: 1.3.1
241
241
  requirements: []
242
242
  rubygems_version: 3.1.6
243
243
  signing_key: