[Haskell-cafe] [web-devel] [ANNOUNCE] First release of crypto-conduit
Greg Weber
greg at gregweber.info
Sat Jan 7 11:06:54 CET 2012
great!
I am wondering if you can provide even higher-level APIs for the common
case:
hash <- runResourceT $ hashFile "my-file"
and possibly something that runs the ResourceT transformer:
hash <- runHashFile "my-file"
On Sat, Jan 7, 2012 at 12:16 AM, Felipe Almeida Lessa <
felipe.lessa at gmail.com> wrote:
> Hello!
>
> I'm pleased to announce the first release of crypto-conduit [1]! The
> crypto-api [2] package provides APIs for many cryptographic
> operations, such as cryptographic hashes and block ciphers. This new
> crypto-conduit package allows you to use many of these operations with
> conduits [3], giving you safe I/O using constant memory and no leaks.
>
> As an example, here's how you could get the SHA1 hash a file:
>
> import Crypto.Conduit -- from crypto-conduit
> import Crypto.Hash.SHA1 (SHA1) -- from cryptohash
> import Data.Conduit -- from conduit
> import Data.Conduit.Binary (sourceFile) -- from conduit
>
> main = do
> hash <- runResourceT $ sourceFile "my-file" $$ sinkHash
> print (hash :: SHA1)
>
> The code snippet above, despite having only "sourceFile ... $$
> sinkHash" on its core, guarantees that the file handle is not kept
> open and uses a constant amount of memory. Sweet!
>
> Please break this package! Although it comes with a test suite, it
> has just seen the light of the day.
>
> Cheers, =)
>
> [1] http://hackage.haskell.org/package/crypto-conduit
> [2] http://hackage.haskell.org/package/crypto-api
> [3] http://hackage.haskell.org/package/conduit
>
> --
> Felipe.
>
> _______________________________________________
> web-devel mailing list
> web-devel at haskell.org
> http://www.haskell.org/mailman/listinfo/web-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20120107/528a02dd/attachment-0001.htm>
More information about the Haskell-Cafe
mailing list