geetest3 0.0.2 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/geetest/sdk3.rb +9 -8
- data/lib/geetest/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 37d1053316dd760e7b5b4d5e3fa86333e31002aa
|
4
|
+
data.tar.gz: 76281e9626d8695a8fa9abbce182887b88de850b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9b6e17e9c92d91dc55471d00b4bf18207b4ae303af9989e8c29433b9602fdd44320712807bb57c6adf33cc3f15642e1d6c1da24a4d3e3587bba6dff87f1a8f77
|
7
|
+
data.tar.gz: 11b15e2a2494334a32d3634ffad6fd2af103cac89e4335e07b32a22426a832f863dc7734b57445490da7b3441d63952a5c65a88a1fa4e879629a3ed9d32fa634
|
data/Gemfile.lock
CHANGED
data/lib/geetest/sdk3.rb
CHANGED
@@ -106,23 +106,24 @@ module Geetest
|
|
106
106
|
end
|
107
107
|
|
108
108
|
def decode_response(challenge, userresponse)
|
109
|
-
return 0 if userresponse.length > 100
|
109
|
+
return 0 if !userresponse || userresponse.length > 100
|
110
110
|
|
111
111
|
numbers = [1, 2, 5, 10, 50]
|
112
112
|
repeat_numbers = []
|
113
|
-
|
114
|
-
challenge.chars.each_with_index do |char,
|
113
|
+
h = {}
|
114
|
+
challenge.chars.each_with_index do |char, i|
|
115
115
|
continue if repeat_numbers.include?(char)
|
116
116
|
|
117
|
-
|
118
|
-
repeat_numbers.push(
|
117
|
+
h[char] = numbers[i % numbers.length]
|
118
|
+
repeat_numbers.push(i)
|
119
119
|
end
|
120
|
-
|
121
|
-
|
120
|
+
res = 0
|
121
|
+
userresponse.chars.each { |c| res += h.fetch(c, 0) }
|
122
|
+
res - decode_rand_base(challenge)
|
122
123
|
end
|
123
124
|
|
124
125
|
def decode_rand_base(challenge)
|
125
|
-
temp_array = challenge[32..-1].
|
126
|
+
temp_array = challenge[32..-1].chars.map do |char|
|
126
127
|
char_ascii = char.ord
|
127
128
|
char_ascii - (char_ascii > 57 ? 87 : 48)
|
128
129
|
end
|
data/lib/geetest/version.rb
CHANGED