We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent e21fdd2 commit 8bf31f6Copy full SHA for 8bf31f6
1 file changed
connect_test.rb
@@ -0,0 +1,19 @@
1
+def ComputeHash(secret, payload)
2
+ require 'openssl'
3
+ require 'base64'
4
+
5
+ digest = OpenSSL::Digest.new('sha256')
6
+ hashBytes = OpenSSL::HMAC.digest(digest, secret, payload)
7
+ base64Hash = Base64.encode64(hashBytes)
8
+ return base64Hash;
9
+end
10
11
+def HashIsValid(secret, payload, signature)
12
+ ver = ComputeHash(secret, payload)
13
+ OpenSSL.secure_compare(ver.chomp, signature)
14
15
16
+secret = 'xxoxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGE=' # Replace this value with your own secret
17
+signature = 'c60xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxew=' # Replace this value with your own signature
18
+payload = File.read('payload.txt') # Read the payload from a file named payload.txt
19
+puts HashIsValid(secret, payload, signature) # should return true for valid
0 commit comments