diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-08-16 12:57:19 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-08-16 13:04:07 -0400 |
commit | 3b4a775d536b2b2956269a59f886487efe29ed51 (patch) | |
tree | bbd8fd580afad11f822b2929061b034abf376c50 /Shard.hs | |
parent | d7696832e183cc3e98d094b35ee4392d0c8d3df5 (diff) | |
download | keysafe-3b4a775d536b2b2956269a59f886487efe29ed51.tar.gz |
switch to random salt byte to make decryption expensive
Diffstat (limited to 'Shard.hs')
-rw-r--r-- | Shard.hs | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -41,13 +41,14 @@ shardIdents tunables (Name name) keyid = ShardIdents idents creationcost bruteforcecalc where (ExpensiveHash creationcost basename) = - expensiveHash tunables (Salt keyid) name + expensiveHash hashtunables (Salt keyid) name mk n = StorableObjectIdent $ Raaz.toByteString $ mksha $ E.encodeUtf8 $ basename <> T.pack (show n) mksha :: B.ByteString -> Raaz.Base16 mksha = Raaz.encode . Raaz.sha256 idents = map mk [1..totalObjects (head (shardParams tunables))] bruteforcecalc = bruteForceLinearSearch creationcost + hashtunables = nameGenerationHash $ nameGenerationTunable tunables genShards :: EncryptedSecretKey -> Tunables -> IO [Shard] genShards (EncryptedSecretKey esk _) tunables = do |