SignedRequest is an Elixir module created to sign request query strings using HMAC.
defdepsdo[{:signed_request,"~> 0.1.0"}]endconfig:signed_request,:secret_key,"foo"iex>SignedRequest.SignedURI.encode_query(%{size: 512})"sig=7dc5fc28fa59ff89dff64bed05920978471f10ced63aca98452b54574a3aef0e&size=512"iex>SignedRequest.SignedURI.decode_query("sig=7dc5fc28fa59ff89dff64bed05920978471f10ced63aca98452b54574a3aef0e&size=512"){:ok,%{"sig"=>"7dc5fc28fa59ff89dff64bed05920978471f10ced63aca98452b54574a3aef0e","size"=>"512"}}iex>SignedRequest.SignedURI.decode_query("sig=invalid&size=512"){:error,:invalid_hmac}