[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/web-devel/attachments/20120107/528a02dd/attachment.htm>


More information about the web-devel mailing list