enquo-core 0.2.0-x86_64-linux → 0.2.0.1.g790fccd-x86_64-linux

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 25961892b7417177f6ee2fedc8a9485c818c6778fd046b24ed99939ccc9d3019
4
- data.tar.gz: 900a26185e08b33bb68136789d8b48262a924f42b7a74a51f04a916f388fb455
3
+ metadata.gz: 168e4ad255ea3c7b365c893543cac37ac753cf4afbaf6bfa8f58fbe161279b10
4
+ data.tar.gz: 31bca829ee8935e300351c7e2fe02def8890df0316de12224e2f595d7f4ce41b
5
5
  SHA512:
6
- metadata.gz: 77cf514f375bcfaf8eb105e374565d490fa2e144eeb6119b18c7e6fd7735a10a292b1c3743cfcabe5a1a555460d5622a4d2673dd5ae5ce9832f787ec0481867b
7
- data.tar.gz: aa394aa731752bb8f07cb6d2b27c51526f5087ea1086c0acc93ec2ebfae63ea329ecbf46433bb5445092ac048d1199a2f0335f11c7ce355f228fb92c27c4a25e
6
+ metadata.gz: e7c8d854a87c6c0f673edd0543f9d66ea71dda616449abeb57e13db391bcf58f191c755a36b10f33e15dbb63dd23604e33b22c07f8d26f8f7effe4eabb6780b1
7
+ data.tar.gz: e4d186df9a9c1b2387f57e1d931d2122f2eaafbf07c33c0d7e7cc0dcbb7bda914b8c9c03d3760650a853b6d2764452c59de92bb998e28936d26aaa85b628be9e
data/ext/enquo/src/lib.rs CHANGED
@@ -2,7 +2,7 @@
2
2
  extern crate rutie;
3
3
 
4
4
  use enquo_core::{Field, Root, I64};
5
- use rutie::{Boolean, Class, Integer, Module, Object, RString, VerifiedObject, VM};
5
+ use rutie::{Class, Integer, Module, Object, RString, Symbol, VerifiedObject, VM};
6
6
 
7
7
  class!(EnquoRoot);
8
8
  class!(EnquoRootKeyStatic);
@@ -81,18 +81,24 @@ impl VerifiedObject for EnquoRootKeyStatic {
81
81
  methods!(
82
82
  EnquoField,
83
83
  rbself,
84
- fn enquo_field_encrypt_i64(value: Integer, context: RString, unsafe_parts: Boolean) -> RString {
84
+ fn enquo_field_encrypt_i64(value: Integer, context: RString, mode: Symbol) -> RString {
85
85
  let i = value.unwrap().to_i64();
86
86
  let field = rbself.get_data(&*FIELD_WRAPPER);
87
+ let r_mode = mode.unwrap();
88
+ let s_mode = r_mode.to_str();
87
89
 
88
- let res = maybe_raise(
89
- if unsafe_parts.unwrap().to_bool() {
90
+ let mut res = maybe_raise(
91
+ if s_mode == "unsafe" {
90
92
  I64::new_with_unsafe_parts(i, &context.unwrap().to_vec_u8_unchecked(), field)
91
93
  } else {
92
94
  I64::new(i, &context.unwrap().to_vec_u8_unchecked(), field)
93
95
  },
94
96
  "Failed to create encrypted i64",
95
97
  );
98
+ if s_mode == "no_query" {
99
+ res.drop_ore_ciphertext();
100
+ }
101
+
96
102
  RString::new_utf8(&serde_json::to_string(&res).unwrap())
97
103
  },
98
104
  fn enquo_field_decrypt_i64(ciphertext: RString, context: RString) -> Integer {
data/lib/2.7/enquo.so CHANGED
Binary file
data/lib/3.0/enquo.so CHANGED
Binary file
data/lib/3.1/enquo.so CHANGED
Binary file
data/lib/enquo/field.rb CHANGED
@@ -4,7 +4,7 @@ module Enquo
4
4
  raise RuntimeError, "Enquo::Field cannot be instantiated directly; use Enquo::Crypto#field instead"
5
5
  end
6
6
 
7
- def encrypt_i64(i, ctx, safety: nil)
7
+ def encrypt_i64(i, ctx, safety: true, no_query: false)
8
8
  unless i.is_a?(Integer)
9
9
  raise ArgumentError, "Enquo::Field#encrypt_i64 can only encrypt integers"
10
10
  end
@@ -17,7 +17,7 @@ module Enquo
17
17
  raise ArgumentError, "Encryption context must be a string (got a #{ctx.class})"
18
18
  end
19
19
 
20
- _encrypt_i64(i, ctx, safety == :unsafe)
20
+ _encrypt_i64(i, ctx, no_query ? :no_query : safety == :unsafe ? :unsafe : :default)
21
21
  end
22
22
 
23
23
  def decrypt_i64(data, ctx)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enquo-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.0.1.g790fccd
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - Matt Palmer
@@ -193,9 +193,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
193
193
  version: 3.2.dev
194
194
  required_rubygems_version: !ruby/object:Gem::Requirement
195
195
  requirements:
196
- - - ">="
196
+ - - ">"
197
197
  - !ruby/object:Gem::Version
198
- version: '0'
198
+ version: 1.3.1
199
199
  requirements: []
200
200
  rubygems_version: 3.3.22
201
201
  signing_key: