File tree Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Original file line number Diff line number Diff line change
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
+ end
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
You can’t perform that action at this time.
0 commit comments