From 1cb2c3a2a2a6fa462b6ccd7c4cf260df0f1d8f71 Mon Sep 17 00:00:00 2001 From: Jesper Louis Andersen Date: Wed, 5 Feb 2020 13:41:19 +0100 Subject: [PATCH] Extend pwhashing with limits In the EQC tests, we generate limits at random and verify things work. --- CHANGELOG.md | 4 ---- eqc_test/enacl_eqc.erl | 8 +++++--- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c8b4fcc..85dece2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,10 +13,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - sign - Implement missing EQC tests - - Generichash - - Multi-part generic hash - - pwhash - - Extend with limit for ops and memory as well. ## [Unreleased] diff --git a/eqc_test/enacl_eqc.erl b/eqc_test/enacl_eqc.erl index 4b6f4ac..b449c32 100644 --- a/eqc_test/enacl_eqc.erl +++ b/eqc_test/enacl_eqc.erl @@ -762,12 +762,14 @@ pwhash_str_verify(PasswdHash, Passwd) -> end. prop_pwhash_str_verify() -> - ?FORALL({Passwd}, - {?FAULT_RATE(1, 40, g_iodata())}, + ?FORALL({Passwd, OLimit, MLimit}, + {?FAULT_RATE(1, 40, g_iodata()), + elements([interactive, moderate, sensitive]), + elements([interactive, moderate, sensitive])}, begin case v_iodata(Passwd) of true -> - Ascii = enacl:pwhash_str(Passwd), + Ascii = enacl:pwhash_str(Passwd, OLimit, MLimit), S = enacl:pwhash_str_verify(Ascii, Passwd), equals(S, true); false ->