/var/lib/ghc/package.conf.d/secret-sharing-1.0.0.3.conf is in libghc-secret-sharing-dev 1.0.0.3-3+b1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | name: secret-sharing
version: 1.0.0.3
id: secret-sharing-1.0.0.3-8hxm2WR9beuFxQz1qaEMIT
key: secret-sharing-1.0.0.3-8hxm2WR9beuFxQz1qaEMIT
license: LGPL-2.1
copyright: Peter Robinson 2014
maintainer: peter.robinson@monoid.at
stability: experimental
homepage: http://monoid.at/code
synopsis: Information-theoretic secure secret sharing
description:
Implementation of an (@m@,@n@)-threshold secret sharing scheme.
A given ByteString @b@ (the secret) is split into @n@ shares,
and any @m@ shares are sufficient to reconstruct @b@.
The scheme preserves information-theoretic perfect secrecy in the sense that the knowledge of up
to @m-1@ shares does not reveal any information about the secret @b@.
.
/Example in GHCi:/
Suppose that you want to split the string \"my secret data\" into n=5 shares such that
at least m=3 shares are necessary to reconstruct the secret.
.
>> :m + Data.ByteString.Lazy.Char8 Crypto.SecretSharing
>> let secret = pack "my secret message!"
>> shares <- encode 3 5 secret
>> mapM_ (Prelude.putStrLn . show) shares -- each share should be deposited at a different site.
> (1,"\134\168\154\SUBV\248\CAN:\250y<\GS\EOT*\t\222_\140")
> (2,"\225\206\241\136\SUBse\199r\169\162\131D4\179P\210x")
> (3,"~\238%\192\174\206\\\f\214\173\162\148\&3\139_\183\193\235")
> (4,"Z\b0\188\DC2\f\247\f,\136\&6S\209\&5\n\FS,\223")
> (5,"x\EM\CAN\DELI*<\193q7d\192!/\183v\DC3T")
>> let shares' = Prelude.drop 2 shares
>> decode shares'
> "my secret message!"
.
The mathematics behind the secret sharing scheme is described in:
\"/How to share a secret/.\" by Adi Shamir.
In Communications of the ACM 22 (11): 612–613, 1979.
category: Cryptography
author: Peter Robinson <peter.robinson@monoid.at>
exposed: True
exposed-modules:
Crypto.SecretSharing Crypto.SecretSharing.Internal
abi: 9cd5494c342560259c230c846dd70f9b
trusted: False
import-dirs: /usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-8.0.1/secret-sharing-1.0.0.3-8hxm2WR9beuFxQz1qaEMIT
library-dirs: /usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-8.0.1/secret-sharing-1.0.0.3-8hxm2WR9beuFxQz1qaEMIT
data-dir: /usr/share/secret-sharing
hs-libraries: HSsecret-sharing-1.0.0.3-8hxm2WR9beuFxQz1qaEMIT
depends:
base-4.9.0.0 binary-0.8.3.0 bytestring-0.10.8.1
dice-entropy-conduit-1.0.0.1-JPK53ammaIQCiGVDhIp9hE
finite-field-0.8.0-D4aos1v7esj8JEhvOki43U
polynomial-0.7.2-8W4ssXI5FHSGfuQATD9XCi
vector-0.11.0.0-BEDZb5o2QOhGbIm6ky7rl6
haddock-interfaces: /usr/lib/ghc-doc/haddock/secret-sharing-1.0.0.3/secret-sharing.haddock
haddock-html: /usr/share/doc/libghc-secret-sharing-doc/html/
|