packages feed

Cabal revisions of secret-sharing-1.0.0.3

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-name:                secret-sharing-version:             1.0.0.3-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.-license:             LGPL-2.1-license-file:        LICENSE-author:              Peter Robinson <peter.robinson@monoid.at>-maintainer:          peter.robinson@monoid.at-copyright:           Peter Robinson 2014-category:            Cryptography -build-type:          Simple-cabal-version:       >=1.8-homepage:            http://monoid.at/code-stability:           experimental--library-  hs-source-dirs:    src-  exposed-modules:   Crypto.SecretSharing-                     Crypto.SecretSharing.Internal--  build-depends:    base >=4.6 && < 5,-                    bytestring ==0.10.*,-                    dice-entropy-conduit >= 1.0.0.0,-                    binary >=0.5.1.1,-                    vector >=0.10.11.0,-                    finite-field >=0.8.0,-                    polynomial >= 0.7.1-  ghc-options:      -Wall ---test-suite Main-  type:            exitcode-stdio-1.0-  x-uses-tf:       true-  build-depends:   base >= 4 && < 5,-                   QuickCheck >= 2.4,-                   test-framework >= 0.4.1,-                   test-framework-quickcheck2-  hs-source-dirs:  src, tests-  main-is:         Tests.hs-+name:                secret-sharing
+version:             1.0.0.3
+x-revision: 1
+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.
+license:             LGPL-2.1
+license-file:        LICENSE
+author:              Peter Robinson <peter.robinson@monoid.at>
+maintainer:          peter.robinson@monoid.at
+copyright:           Peter Robinson 2014
+category:            Cryptography 
+build-type:          Simple
+cabal-version:       >=1.8
+homepage:            http://monoid.at/code
+stability:           experimental
+
+library
+  hs-source-dirs:    src
+  exposed-modules:   Crypto.SecretSharing
+                     Crypto.SecretSharing.Internal
+
+  build-depends:    base >=4.6 && < 5,
+                    bytestring ==0.10.*,
+                    dice-entropy-conduit == 1.0.*,
+                    binary >=0.5.1.1 && < 0.10,
+                    vector >=0.10.11.0 && < 0.13,
+                    finite-field ==0.8.*,
+                    polynomial >= 0.7.1 && < 0.8
+  ghc-options:      -Wall 
+
+
+test-suite Main
+  type:            exitcode-stdio-1.0
+  x-uses-tf:       true
+  build-depends:   base >= 4 && < 5,
+                   QuickCheck >= 2.4,
+                   test-framework >= 0.4.1,
+                   test-framework-quickcheck2
+  hs-source-dirs:  src, tests
+  main-is:         Tests.hs
+