altcha 0.2.0 → 1.0.0

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: 0a73eb5e2cb41fa8c01e97581e324b339b590029304626f9436c9231ccc83d6a
4
- data.tar.gz: 6638144e6618b817cbafd5493a35f73cf1d924f5f2d9ff3e0456da199ed87d95
3
+ metadata.gz: b8a3ab9fc23e2e62bd9a0355d917260fe5441d5f4980e19f27a9373449409c23
4
+ data.tar.gz: a0ee5531bb2edccebbedf99db05a6d4b036d0c3425c7dad214b8c3a1c2e9195e
5
5
  SHA512:
6
- metadata.gz: c113ecb7813f2cff11e324138f64d44245322382b4a85943008e8be0fb739f702388c59bfe7e24fc46ab93da43ac242761106eb4f2b7bcda0c52ff3b992250c2
7
- data.tar.gz: 274512ef1fc281efd55d000aac65391e270969cbffbdb7b04b2f5ed15a7ad54278f08d37eeb0d6c9462022b026b055f2f5a20e09743fdb63a19c2135d5a36b07
6
+ metadata.gz: 28ba37f3008fe75770d77138d3eba714bbe6cff6cf1cccda077b4633e83256bbf3ad97479208ab5b79896a46e21aba7fc860d6e3694cc5ba931c2d3673cdbede
7
+ data.tar.gz: 025f7a66d20e1752bb67ef8f109fde608e3f66327d26af3728d064de0b24cc128b17b09df3ae89f97030b87140420cc87cc21101bc909c1a560aa3281db5b383
data/Gemfile.lock CHANGED
@@ -1,26 +1,26 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- altcha (0.2.0)
4
+ altcha (1.0.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- diff-lcs (1.5.1)
10
- rake (10.5.0)
11
- rspec (3.13.0)
9
+ diff-lcs (1.6.2)
10
+ rake (13.3.1)
11
+ rspec (3.13.1)
12
12
  rspec-core (~> 3.13.0)
13
13
  rspec-expectations (~> 3.13.0)
14
14
  rspec-mocks (~> 3.13.0)
15
- rspec-core (3.13.0)
15
+ rspec-core (3.13.5)
16
16
  rspec-support (~> 3.13.0)
17
- rspec-expectations (3.13.1)
17
+ rspec-expectations (3.13.5)
18
18
  diff-lcs (>= 1.2.0, < 2.0)
19
19
  rspec-support (~> 3.13.0)
20
- rspec-mocks (3.13.1)
20
+ rspec-mocks (3.13.5)
21
21
  diff-lcs (>= 1.2.0, < 2.0)
22
22
  rspec-support (~> 3.13.0)
23
- rspec-support (3.13.1)
23
+ rspec-support (3.13.6)
24
24
 
25
25
  PLATFORMS
26
26
  arm64-darwin-23
@@ -28,9 +28,9 @@ PLATFORMS
28
28
 
29
29
  DEPENDENCIES
30
30
  altcha!
31
- bundler (~> 2.5)
32
- rake (~> 10.0)
31
+ bundler (~> 4.0.1)
32
+ rake (~> 13.3.1)
33
33
  rspec (~> 3.0)
34
34
 
35
35
  BUNDLED WITH
36
- 2.5.11
36
+ 4.0.1
data/README.md CHANGED
@@ -17,7 +17,7 @@ This library is compatible with:
17
17
  To install the ALTCHA Ruby Library, add it to your Gemfile:
18
18
 
19
19
  ```ruby
20
- gem 'altcha', git: 'https://github.com/altcha-org/altcha-lib-rb'
20
+ gem 'altcha'
21
21
  ```
22
22
 
23
23
  Then run:
data/altcha.gemspec CHANGED
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib"]
24
24
 
25
- spec.add_development_dependency "bundler", "~> 2.5"
26
- spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency "bundler", "~> 4.0.1"
26
+ spec.add_development_dependency "rake", "~> 13.3.1"
27
27
  spec.add_development_dependency "rspec", "~> 3.0"
28
28
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Altcha
4
- VERSION = '0.2.0'
4
+ VERSION = '1.0.0'
5
5
  end
data/lib/altcha.rb CHANGED
@@ -254,6 +254,7 @@ module Altcha
254
254
 
255
255
  salt = options.salt || random_bytes(salt_length).unpack1('H*')
256
256
  salt += "?#{URI.encode_www_form(params)}" unless params.empty?
257
+ salt += salt.end_with?('&') ? '' : '&'
257
258
 
258
259
  number = options.number || random_int(max_number)
259
260
 
@@ -376,7 +377,7 @@ module Altcha
376
377
 
377
378
  hash_data = hash(payload.algorithm, payload.verification_data)
378
379
  expected_signature = hmac_hex(payload.algorithm, hash_data, hmac_key)
379
-
380
+
380
381
  params = URI.decode_www_form(payload.verification_data).to_h
381
382
  verification_data = ServerSignatureVerificationData.new.tap do |v|
382
383
  v.classification = params['classification'] || nil
@@ -385,6 +386,8 @@ module Altcha
385
386
  v.email = params['email'] || nil
386
387
  v.expire = params['expire'] ? params['expire'].to_i : nil
387
388
  v.fields = params['fields'] ? params['fields'].split(',') : nil
389
+ v.fields_hash = params['fieldsHash'] || nil
390
+ v.ip_address = params['ipAddress'] || nil
388
391
  v.reasons = params['reasons'] ? params['reasons'].split(',') : nil
389
392
  v.score = params['score'] ? params['score'].to_f : nil
390
393
  v.time = params['time'] ? params['time'].to_i : nil
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: altcha
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Regeci
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-03 00:00:00.000000000 Z
11
+ date: 2025-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.5'
19
+ version: 4.0.1
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.5'
26
+ version: 4.0.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: 13.3.1
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: 13.3.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement