Anonymous user
Parallel brute force: Difference between revisions
m
→{{header|Haskell}}
Line 793:
</pre>
Or using worker threads with buffered read/write channels
<lang haskell>import Control.Concurrent (forkIO
import Control.Concurrent.Chan (Chan, newChan, readChan,
import Control.Monad (replicateM, forever, replicateM_)
import Crypto.Hash
import Data.Bifunctor (first)
import Data.ByteString (pack)
import Data.Char (isDigit)
import Data.List.Split (chunksOf)
import Data.Word (Word8)
import System.Environment (getArgs)
import Text.Printf (printf)
type Decrypted = String
|