Skip to content

Instantly share code, notes, and snippets.

@jon4syth
Created September 5, 2019 22:52
Show Gist options
  • Save jon4syth/59a7b677987c26502ea2c4263fcd2bf8 to your computer and use it in GitHub Desktop.
Save jon4syth/59a7b677987c26502ea2c4263fcd2bf8 to your computer and use it in GitHub Desktop.
HMAC.SHA256 in Elixir
defmodule TelnyxSignature do
@secret "rq789onm321yxzkjihfEdcAm"
@encoded_result "lAjxaJDT5pwXpdnbhUwIQng8zicKOEw3wa4fvLDHhjI="
@hash_input ~s[1520983646.{
"sms_id":"834f3d53-8a3c-4aa0-a733-7f2d682a72df",
"from": "+13129450002",
"to": "+13125550001",
"direction": "inbound",
"body": "Hello!"
}
]
def main() do
IO.puts("MY_ENCODED_SIGNATURE:")
create_hmac256(@hash_input) |> Base.encode64() |> IO.puts()
IO.puts("\n")
IO.puts("TELNYX_ENCODED_SIGNATURE: #{@encoded_result}")
end
def create_hmac256(input) do
Plug.Crypto.MessageVerifier.sign(input, @secret, :sha256)
end
end
TelnyxSignature.main()
MY_ENCODED_SIGNATURE:
U0ZNeU5UWS5NVFV5TURrNE16WTBOaTU3Q2lBZ0lDQWljMjF6WDJsa0lqb2lPRE0wWmpOa05UTXRPR0V6WXkwMFlXRXdMV0UzTXpNdE4yWXlaRFk0TW1FM01tUm1JaXdLSUNBZ0lDSm1jbTl0SWpvZ0lpc3hNekV5T1RRMU1EQXdNaUlzQ2lBZ0lDQWlkRzhpT2lBaUt6RXpNVEkxTlRVd01EQXhJaXdLSUNBZ0lDSmthWEpsWTNScGIyNGlPaUFpYVc1aWIzVnVaQ0lzQ2lBZ0lDQWlZbTlrZVNJNklDSklaV3hzYnlFaUNuMEsuTXBuYUVNZzhXS0RCN0U5dS1BM3R6TWVJSkFFc3UtYnoyRWw0a2lWeFA5OA==
TELNYX_ENCODED_SIGNATURE: lAjxaJDT5pwXpdnbhUwIQng8zicKOEw3wa4fvLDHhjI=
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment