1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
|
Cabal-version: >= 1.8
Name: skein
Version: 0.1.0.7
Synopsis: Skein, a family of cryptographic hash functions. Includes Skein-MAC as well.
License: BSD3
License-file: LICENSE
Author: Felipe Lessa <felipe.lessa@gmail.com>, Doug Whiting
Maintainer: Felipe Lessa <felipe.lessa@gmail.com>
Category: Cryptography
Build-type: Simple
Homepage: https://github.com/meteficha/skein
Description:
Skein (<http://www.skein-hash.info/>) is a family of fast
secure cryptographic hash functions designed by Niels
Ferguson, Stefan Lucks, Bruce Schneier, Doug Whiting, Mihir
Bellare, Tadayoshi Kohno, Jon Callas and Jesse Walker.
.
This package uses bindings to the optimized C implementation
of Skein. We provide a high-level interface (see module
"Crypto.Skein") to some of the Skein use cases. We also
provide a low-level interface (see module
"Crypto.Skein.Internal") should you need to use Skein in a
different way.
.
Currently we have support for Skein as cryptographic hash
function as Skein as a message authentication code
(Skein-MAC). For examples of how to use this package, see
"Crypto.Skein" module documentation.
Extra-source-files:
c_impl/optimized/skein.c
c_impl/optimized/skein.h
c_impl/optimized/skein_block.c
c_impl/optimized/skein_debug.c
c_impl/optimized/skein_debug.h
c_impl/optimized/skein_iv.h
c_impl/optimized/skein_port.h
c_impl/reference/skein.c
c_impl/reference/skein.h
c_impl/reference/skein_block.c
c_impl/reference/skein_debug.c
c_impl/reference/skein_debug.h
c_impl/reference/skein_port.h
tests/runtests.hs
Data-files:
tests/skein_golden_kat.txt
Source-repository head
Type: git
Location: git://github.com/meteficha/skein.git
Flag reference
Description: Use the reference implementation instead of the optimized one.
Default: False
Flag force-endianness
Description: Use a manually selected endian when compiling (see flag 'big-endian').
Default: False
Flag big-endian
Description: When manually selecting the endianness, use big-endian (default is little-endian).
Default: False
Library
Hs-Source-Dirs: src
Exposed-modules:
Crypto.Skein
Crypto.Skein.Internal
Build-depends:
base >= 3 && < 5,
bytestring >= 0.9 && < 0.10,
cereal >= 0.3 && < 0.4,
tagged >= 0.2 && < 0.5,
crypto-api >= 0.6 && < 0.11
Build-tools: hsc2hs
GHC-options: -Wall
Extensions:
BangPatterns
CPP
ForeignFunctionInterface
MultiParamTypeClasses
Includes:
skein.h
if flag(force-endianness)
if flag(big-endian)
CC-options: "-DSKEIN_NEED_SWAP=1"
else
CC-options: "-DSKEIN_NEED_SWAP=0"
else
if arch(i386) || arch(x86_64)
CC-options: "-DSKEIN_NEED_SWAP=0"
if arch(ppc) || arch(sparc) || arch(s390) || arch(hppa)
CC-options: "-DSKEIN_NEED_SWAP=1"
if flag(reference)
Include-Dirs:
c_impl/reference
C-sources:
c_impl/reference/skein.c
c_impl/reference/skein_block.c
-- c_impl/reference/skein_debug.c -- not used
else
Include-Dirs:
c_impl/optimized
C-sources:
c_impl/optimized/skein.c
c_impl/optimized/skein_block.c
-- c_impl/optimized/skein_debug.c -- not used
Test-suite runtests
Type: exitcode-stdio-1.0
Build-depends:
base >= 3 && < 5,
bytestring >= 0.9 && < 0.10,
cereal >= 0.3 && < 0.4,
tagged >= 0.2 && < 0.3,
crypto-api >= 0.6 && < 0.10,
filepath == 1.*,
transformers,
hspec == 0.9.*,
-- finally, our own package
skein
GHC-options: -Wall
Hs-source-dirs: tests
Main-is: runtests.hs
Other-modules: Paths_skein
|