class Rack::GithubWebhooks::Signature

Constants

HMAC_DIGEST

Public Class Methods

new(secret, hub_signature, payload_body) click to toggle source
# File lib/rack/github_webhooks.rb, line 10
def initialize(secret, hub_signature, payload_body)
  @secret = secret
  @hub_signature = hub_signature
  @signature = "sha256=#{OpenSSL::HMAC.hexdigest(HMAC_DIGEST, secret, payload_body)}"
end

Public Instance Methods

valid?() click to toggle source
# File lib/rack/github_webhooks.rb, line 16
def valid?
  return true unless @secret
  return false unless @hub_signature
  Rack::Utils.secure_compare(@signature, @hub_signature)
end