summaryrefslogtreecommitdiffhomepage
path: root/ExpensiveHash.hs
diff options
context:
space:
mode:
authorJoey Hess <joeyh@joeyh.name>2016-08-30 19:56:28 -0400
committerJoey Hess <joeyh@joeyh.name>2016-08-30 19:56:28 -0400
commitf2fa457a7e45721e94a3f5d0307faf874150cdb4 (patch)
tree738a45b4eedaf6b99a365100816e233a940ea66d /ExpensiveHash.hs
parent83f81b23a99ae64586737dec947e0bffc475393b (diff)
downloadkeysafe-f2fa457a7e45721e94a3f5d0307faf874150cdb4.tar.gz
make sure to hash a different value each time, to avoid any laziness issues
Diffstat (limited to 'ExpensiveHash.hs')
-rw-r--r--ExpensiveHash.hs10
1 files changed, 5 insertions, 5 deletions
diff --git a/ExpensiveHash.hs b/ExpensiveHash.hs
index ff9c51c..ddb7eaa 100644
--- a/ExpensiveHash.hs
+++ b/ExpensiveHash.hs
@@ -13,15 +13,14 @@ import Cost
import Serialization ()
import qualified Data.Text as T
import qualified Data.ByteString as B
+import qualified Data.ByteString.UTF8 as BU8
import qualified Crypto.Argon2 as Argon2
import Raaz.Core.Encode
import Data.Time.Clock
import Control.DeepSeq
import Control.Monad
import Data.Monoid
-import Data.List
import Data.Maybe
-import Text.Read
-- | A hash that is expensive to calculate.
--
@@ -53,10 +52,11 @@ benchmarkExpensiveHash rounds tunables@(UseArgon2 _ hashopts) expected = do
numcores <- fromIntegral . fromMaybe (error "Unknown number of physical cores.")
<$> getNumCores
start <- getCurrentTime
- forM_ [1..rounds] $ \_ -> do
+ forM_ [1..rounds] $ \n -> do
+ let base = BU8.fromString (show n)
let ExpensiveHash _ t = expensiveHash tunables
- (Salt (GpgKey (KeyId ("dummy" :: B.ByteString))))
- ("himom" :: B.ByteString)
+ (Salt (GpgKey (KeyId (base <> "dummy"))))
+ (base <> "himom")
t `deepseq` return ()
end <- getCurrentTime
let diff = floor $ end `diffUTCTime` start