Skip to content

Instantly share code, notes, and snippets.

@saswata-dutta
Created September 27, 2019 16:41
Show Gist options
  • Save saswata-dutta/48a3ae19040159f3e7aadd5b6a693e0b to your computer and use it in GitHub Desktop.
Save saswata-dutta/48a3ae19040159f3e7aadd5b6a693e0b to your computer and use it in GitHub Desktop.
// cat payload.json | openssl sha256 -hmac 'secret'
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
val payload = scala.io.Source.fromFile("payload.json").mkString
val secret = "secret"
val sha256_HMAC = Mac.getInstance("HmacSHA256")
val secret_key = new SecretKeySpec(secret.getBytes("UTF-8"), "HmacSHA256");
sha256_HMAC.init(secret_key)
val hash = sha256_HMAC.doFinal(payload.getBytes())
val signature = hash.map(b => "%02x".format(b)).mkString
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment