Remove pureMD5 and SHA deps

This commit is contained in:
Michael Snoyman 2014-03-26 15:21:37 +02:00
parent f0d392a53e
commit bdcb174830
2 changed files with 8 additions and 4 deletions

View File

@ -34,10 +34,13 @@ module Yesod.Auth.Email
import Network.Mail.Mime (randomString) import Network.Mail.Mime (randomString)
import Yesod.Auth import Yesod.Auth
import System.Random import System.Random
import Data.Digest.Pure.MD5
import qualified Data.Text as TS import qualified Data.Text as TS
import qualified Data.Text as T
import qualified Data.Text.Lazy as TL import qualified Data.Text.Lazy as TL
import qualified Data.Text.Encoding as TE
import qualified Data.Text.Lazy.Encoding as TLE import qualified Data.Text.Lazy.Encoding as TLE
import qualified Crypto.Hash.MD5 as H
import Data.ByteString.Base16 as B16
import Data.Text.Encoding (encodeUtf8, decodeUtf8With) import Data.Text.Encoding (encodeUtf8, decodeUtf8With)
import Data.Text.Encoding.Error (lenientDecode) import Data.Text.Encoding.Error (lenientDecode)
import Data.Text (Text) import Data.Text (Text)
@ -526,7 +529,8 @@ saltPass = fmap (decodeUtf8With lenientDecode)
. encodeUtf8 . encodeUtf8
saltPass' :: String -> String -> String saltPass' :: String -> String -> String
saltPass' salt pass = salt ++ show (md5 $ TLE.encodeUtf8 $ TL.pack $ salt ++ pass) saltPass' salt pass =
salt ++ T.unpack (TE.decodeUtf8 $ B16.encode $ H.hash $ TE.encodeUtf8 $ T.pack $ salt ++ pass)
isValidPass :: Text -- ^ cleartext password isValidPass :: Text -- ^ cleartext password
-> SaltedPass -- ^ salted password -> SaltedPass -- ^ salted password

View File

@ -25,7 +25,8 @@ library
, yesod-core >= 1.2 && < 1.3 , yesod-core >= 1.2 && < 1.3
, wai >= 1.4 , wai >= 1.4
, template-haskell , template-haskell
, pureMD5 >= 2.0 , base16-bytestring
, cryptohash
, random >= 1.0.0.2 , random >= 1.0.0.2
, text >= 0.7 , text >= 0.7
, mime-mail >= 0.3 , mime-mail >= 0.3
@ -39,7 +40,6 @@ library
, transformers >= 0.2.2 , transformers >= 0.2.2
, persistent >= 1.2 && < 1.4 , persistent >= 1.2 && < 1.4
, persistent-template >= 1.2 && < 1.4 , persistent-template >= 1.2 && < 1.4
, SHA >= 1.4.1.3
, http-conduit >= 1.5 , http-conduit >= 1.5
, aeson >= 0.5 , aeson >= 0.5
, pwstore-fast >= 2.2 , pwstore-fast >= 2.2