Skip to content

selectel/etsdangerous

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

etsdangerous Build Status

Authors: Dmitry Groshev, Sergei Lebedev.

An Erlang port of itsdangerous.

Quick examples

Signing:

1> S = etsdangerous:signer(<<"secret-key>>>).
{signer,untimed,<<"secret-key">>,<<"etsdangerous.Signer">>,
        <<".">>}
2> D = etsdangerous:sign(S, <<"data">>).
<<"data.tfT7zMsPOFv84VxV6CUew_09xvs">>
3> etsdangerous:unsign(S, D).
{ok,{<<"data">>,undefined}}

Expiring signatures:

1> S = etsdangerous:ts_signer(<<"secret-key">>, 10).
{signer,{timed,10},
        <<"secret-key">>,<<"etsdangerous.Signer">>,<<".">>}
2> D = etsdangerous:sign(S, <<"data">>).
<<"data.BCyr0A.qmWS3-TkJ9eiElgZELGmubxsuRA">>
3> etsdangerous:unsign(S, D).
{ok,{<<"data">>,{{2013,3,21},{14,33,52}}}}
...
4> etsdangerous:unsign(S, D).
{error,signature_expired}

Salt:

1> S1 = etsdangerous:signer(<<"secret-key">>, <<"salt-1">>).
{signer,untimed,<<"secret-key">>,<<"salt-1">>,<<".">>}
2> S2 = etsdangerous:signer(<<"secret-key">>, <<"salt-2">>).
{signer,untimed,<<"secret-key">>,<<"salt-2">>,<<".">>}
3> D = etsdangerous:sign(S1, <<"data">>).
<<"data.siZlJhySx8NoTIwrmOmupfvGnO8">>
4> etsdangerous:unsign(S2, D).
{error,bad_signature}

Releases

No releases published

Packages

No packages published