Portability | portable (needs FFI) |
---|---|
Stability | provisional |
Maintainer | felipe.lessa@gmail.com |
Safe Haskell | None |
Crypto.Skein.Internal
Description
Basic wrappers around the C library. You shouldn't need to use these functions. Instead, use the high-level Crypto.Skein module.
- sKEIN_SUCCESS :: CInt
- sKEIN_FAIL :: CInt
- sKEIN_BAD_HASHLEN :: CInt
- check :: IO CInt -> IO ()
- newtype Skein256Ctx = S256Ctx {}
- skein256Init :: Ptr Skein256Ctx -> CSize -> IO CInt
- skein256Update :: Ptr Skein256Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein256Final :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- skein256InitExt :: Ptr Skein256Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein256FinalPad :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- skein256Output :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
- newtype Skein512Ctx = S512Ctx {}
- skein512Init :: Ptr Skein512Ctx -> CSize -> IO CInt
- skein512Update :: Ptr Skein512Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein512Final :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- skein512InitExt :: Ptr Skein512Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein512FinalPad :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- skein512Output :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
- newtype Skein1024Ctx = S1024Ctx {}
- skein1024Init :: Ptr Skein1024Ctx -> CSize -> IO CInt
- skein1024Update :: Ptr Skein1024Ctx -> Ptr Word8 -> CSize -> IO CInt
- skein1024Final :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- skein1024InitExt :: Ptr Skein1024Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
- skein1024FinalPad :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- skein1024Output :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
- sKEIN_SEQUENTIAL :: Word64
Return codes
sKEIN_FAIL :: CInt
Skein-256
skein256Init :: Ptr Skein256Ctx -> CSize -> IO CInt
skein256Update :: Ptr Skein256Ctx -> Ptr Word8 -> CSize -> IO CInt
skein256Final :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
skein256InitExt :: Ptr Skein256Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
skein256FinalPad :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
skein256Output :: Ptr Skein256Ctx -> Ptr Word8 -> IO CInt
Skein-512
skein512Init :: Ptr Skein512Ctx -> CSize -> IO CInt
skein512Update :: Ptr Skein512Ctx -> Ptr Word8 -> CSize -> IO CInt
skein512Final :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
skein512InitExt :: Ptr Skein512Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
skein512FinalPad :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
skein512Output :: Ptr Skein512Ctx -> Ptr Word8 -> IO CInt
Skein-1024
skein1024Init :: Ptr Skein1024Ctx -> CSize -> IO CInt
skein1024Update :: Ptr Skein1024Ctx -> Ptr Word8 -> CSize -> IO CInt
skein1024Final :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
skein1024InitExt :: Ptr Skein1024Ctx -> CSize -> Word64 -> Ptr Word8 -> CSize -> IO CInt
skein1024FinalPad :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
skein1024Output :: Ptr Skein1024Ctx -> Ptr Word8 -> IO CInt
Misc constants
Pass to InitExt
to get sequential processing.