adding test for pwhash_str_verify

This commit is contained in:
daveed-al 2018-02-01 00:54:20 +08:00
parent cd183efd34
commit d4a2a14bc9

View File

@ -456,6 +456,49 @@ prop_sign_open() ->
badargs(fun() -> enacl:sign_open(SignMsg, PK) end)
end)).
%% PWHASH
%% -------------------------------
% enacl:pwhash("password", enacl:randombytes(16)).
% {K, P} = enacl:pwhash_str("password").
% enacl:pwhash_str_verify(P, "password").
% enacl:pwhash_str_verify(P, <<"password">>).
pwhash(Passwd, Salt) ->
try
enacl:pwhash(Passwd, Salt)
catch
error:badarg -> badarg
end.
% pwhash
% pwhash_str
% pwhash_str_verify
% prop_pwhash() ->
% ?FORALL({Passwd, Salt},
% {?FAULT_RATE(1, 40, g_iodata()),
% ?FAULT_RATE(1, 40, g_binary(16))},
% begin
% case v_iodata(Passwd) andalso v_binary(16, Salt) of
% true ->
% {ok, PasswdHash} = enacl:pwhash(Passwd, Salt),
% equals();
% end).
prop_pwhash_str_verify() ->
?FORALL({PasswdHash, Passwd},
{?FAULT_RATE(1, 40, g_binary(32)),
?FAULT_RATE(1, 40, g_iodata())},
begin
case v_binary(32, PasswdHash) andalso v_iodata(Passwd) of
true ->
Verify = enacl:pwhash_str_verify(PasswdHash, Passwd),
equals(true, Verify);
false ->
badargs(fun() -> enacl:pwhash_str_verify(PasswdHash, Passwd) end)
end
end).
%% CRYPTO SECRET BOX
%% -------------------------------