matebeamter/src/Types/Reader.hs

38 lines
779 B
Haskell
Raw Normal View History

2019-09-08 10:48:57 +00:00
module Types.Reader where
import Network.HTTP.Client (Manager)
import Servant (Handler)
2019-09-16 07:44:46 +00:00
import Servant.Client (ClientEnv)
2019-09-08 10:48:57 +00:00
import Control.Monad.Reader (ReaderT)
import qualified Data.Text as T
2019-09-08 15:27:38 +00:00
import Data.Text.I18n
2019-09-17 19:29:56 +00:00
import Crypto.KDF.PBKDF2
import Crypto.Hash.Algorithms
2019-09-08 10:48:57 +00:00
data ReadState = ReadState
2019-09-16 07:44:46 +00:00
-- { rsManager :: Manager
{ rsL10n :: L10n
, rsBackend :: ClientEnv
, rsHashParams :: HashParams
, rsCurrencySymbol :: T.Text
, rsBackendVersion :: T.Text
2019-09-08 10:48:57 +00:00
}
type UserHandler = ReaderT ReadState Handler
2019-09-17 19:29:56 +00:00
data HashParams = HashParams
{ hashIterations :: Int
, hashSaltLength :: Int
, hashOutputLength :: Int
}
recommendedHashParams = HashParams
{ hashIterations = 8000
, hashSaltLength = 23
, hashOutputLength = 512
}