Safe Haskell | None |
---|---|
Language | Haskell2010 |
Distribution.Client.HashValue
Synopsis
- data HashValue
- hashValue :: ByteString -> HashValue
- truncateHash :: Int -> HashValue -> HashValue
- showHashValue :: HashValue -> String
- showHashValueBase64 :: HashValue -> String
- readFileHashValue :: FilePath -> IO HashValue
- hashFromTUF :: Hash -> HashValue
Documentation
Instances
Structured HashValue # | |||||
Defined in Distribution.Client.HashValue | |||||
Generic HashValue # | |||||
Defined in Distribution.Client.HashValue Associated Types
| |||||
Show HashValue # | |||||
Binary HashValue # | |||||
Eq HashValue # | |||||
type Rep HashValue # | |||||
Defined in Distribution.Client.HashValue type Rep HashValue = D1 ('MetaData "HashValue" "Distribution.Client.HashValue" "cabal-install-3.10.2.1-EH6AEtqwlbKE3rh89dIk81" 'True) (C1 ('MetaCons "HashValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteString))) |
hashValue :: ByteString -> HashValue #
Hash some data. Currently uses SHA256.
truncateHash :: Int -> HashValue -> HashValue #
Truncate a 32 byte SHA256 hash to
For example 20 bytes render as 40 hex chars, which we use for unit-ids.
Or even 4 bytes for hashedInstalledPackageIdShort
showHashValue :: HashValue -> String #
showHashValueBase64 :: HashValue -> String #
readFileHashValue :: FilePath -> IO HashValue #
Hash the content of a file. Uses SHA256.
hashFromTUF :: Hash -> HashValue #
Convert a hash from TUF metadata into a PackageSourceHash
.
Note that TUF hashes don't necessarily have to be SHA256, since it can support new algorithms in future.