The hackage-security package

[ Tags: bsd3, distribution, library ] [ Propose Tags ]

The hackage security library provides both server and client utilities for securing the Hackage package server ( It is based on The Update Framework (, a set of recommendations developed by security researchers at various universities in the US as well as developers on the Tor project (

The current implementation supports only index signing, thereby enabling untrusted mirrors. It does not yet provide facilities for author package signing.

The library has two main entry points: Hackage.Security.Client is the main entry point for clients (the typical example being cabal), and Hackage.Security.Server is the main entry point for servers (the typical example being hackage-server).


Change log
Dependencies base (>=4.5 && <5), base16-bytestring (>=0.1.1 && <0.2), base64-bytestring (==1.0.*), bytestring (>=0.9 && <0.11), Cabal (>=1.14 && <2.2), containers (>=0.4 && <0.6), cryptohash-sha256 (==0.11.*), directory (>= && <1.4), ed25519 (==0.0.*), filepath (>=1.2 && <1.5), ghc-prim, mtl (==2.2.*), network (>=2.5 && <2.7), network-uri (==2.6.*), old-locale (>=1.0), old-time (>=1 && <1.2), parsec (==3.1.*), pretty (>=1.0 && <1.2), tar (==0.5.*), template-haskell, time (>=1.2 && <1.9), transformers (>=0.4 && <0.6), zlib (>=0.5 && <0.7) [details]
License BSD3
Copyright Copyright 2015-2016 Well-Typed LLP
Author Edsko de Vries
Category Distribution
Home page
Bug tracker
Source repository head: git clone
Uploaded Sun Aug 28 23:06:36 UTC 2016 by DuncanCoutts
Updated Fri May 19 20:41:44 UTC 2017 by HerbertValerioRiedel to revision 4   [What is this?]
Distributions Arch:, LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 18371 total (2601 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-08-28 [all 1 reports]
Hackage Matrix CI





Are we using base 4.8 or later?


Are we using network-uri?


Use directory < 1.2 and old-time


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees