|
Packit |
c1c4f9 |
{-# LANGUAGE ViewPatterns #-}
|
|
Packit |
c1c4f9 |
{-# LANGUAGE OverloadedStrings #-}
|
|
Packit |
c1c4f9 |
module SipHash (tests) where
|
|
Packit |
c1c4f9 |
|
|
Packit |
c1c4f9 |
import Imports
|
|
Packit |
c1c4f9 |
import Utils
|
|
Packit |
c1c4f9 |
import qualified Data.ByteArray as B
|
|
Packit |
c1c4f9 |
import Data.ByteArray.Hash (SipKey(..), SipHash(..), sipHash)
|
|
Packit |
c1c4f9 |
|
|
Packit |
c1c4f9 |
katKey = SipKey 0x0706050403020100 0x0f0e0d0c0b0a0908
|
|
Packit |
c1c4f9 |
|
|
Packit |
c1c4f9 |
vectors =
|
|
Packit |
c1c4f9 |
[ ( katKey
|
|
Packit |
c1c4f9 |
, ""
|
|
Packit |
c1c4f9 |
, SipHash 0x726fdb47dd0e0e31
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00"
|
|
Packit |
c1c4f9 |
, SipHash 0x74f839c593dc67fd
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01"
|
|
Packit |
c1c4f9 |
, SipHash 0x0d6c8009d9a94f5a
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02"
|
|
Packit |
c1c4f9 |
, SipHash 0x85676696d7fb7e2d
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03"
|
|
Packit |
c1c4f9 |
, SipHash 0xcf2794e0277187b7
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04"
|
|
Packit |
c1c4f9 |
, SipHash 0x18765564cd99a68d
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05"
|
|
Packit |
c1c4f9 |
, SipHash 0xcbc9466e58fee3ce
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06"
|
|
Packit |
c1c4f9 |
, SipHash 0xab0200f58b01d137
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07"
|
|
Packit |
c1c4f9 |
, SipHash 0x93f5f5799a932462
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08"
|
|
Packit |
c1c4f9 |
, SipHash 0x9e0082df0ba9e4b0
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09"
|
|
Packit |
c1c4f9 |
, SipHash 0x7a5dbbc594ddb9f3
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a"
|
|
Packit |
c1c4f9 |
, SipHash 0xf4b32f46226bada7
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b"
|
|
Packit |
c1c4f9 |
, SipHash 0x751e8fbc860ee5fb
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c"
|
|
Packit |
c1c4f9 |
, SipHash 0x14ea5627c0843d90
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d"
|
|
Packit |
c1c4f9 |
, SipHash 0xf723ca908e7af2ee
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e"
|
|
Packit |
c1c4f9 |
, SipHash 0xa129ca6149be45e5
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
|
|
Packit |
c1c4f9 |
, SipHash 0x3f2acc7f57c29bdb
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10"
|
|
Packit |
c1c4f9 |
, SipHash 0x699ae9f52cbe4794
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11"
|
|
Packit |
c1c4f9 |
, SipHash 0x4bc1b3f0968dd39c
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12"
|
|
Packit |
c1c4f9 |
, SipHash 0xbb6dc91da77961bd
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13"
|
|
Packit |
c1c4f9 |
, SipHash 0xbed65cf21aa2ee98
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14"
|
|
Packit |
c1c4f9 |
, SipHash 0xd0f2cbb02e3b67c7
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15"
|
|
Packit |
c1c4f9 |
, SipHash 0x93536795e3a33e88
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16"
|
|
Packit |
c1c4f9 |
, SipHash 0xa80c038ccd5ccec8
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17"
|
|
Packit |
c1c4f9 |
, SipHash 0xb8ad50c6f649af94
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18"
|
|
Packit |
c1c4f9 |
, SipHash 0xbce192de8a85b8ea
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19"
|
|
Packit |
c1c4f9 |
, SipHash 0x17d835b85bbb15f3
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a"
|
|
Packit |
c1c4f9 |
, SipHash 0x2f2e6163076bcfad
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b"
|
|
Packit |
c1c4f9 |
, SipHash 0xde4daaaca71dc9a5
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c"
|
|
Packit |
c1c4f9 |
, SipHash 0xa6a2506687956571
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d"
|
|
Packit |
c1c4f9 |
, SipHash 0xad87a3535c49ef28
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e"
|
|
Packit |
c1c4f9 |
, SipHash 0x32d892fad841c342
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
|
|
Packit |
c1c4f9 |
, SipHash 0x7127512f72f27cce
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20"
|
|
Packit |
c1c4f9 |
, SipHash 0xa7f32346f95978e3
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21"
|
|
Packit |
c1c4f9 |
, SipHash 0x12e0b01abb051238
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22"
|
|
Packit |
c1c4f9 |
, SipHash 0x15e034d40fa197ae
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23"
|
|
Packit |
c1c4f9 |
, SipHash 0x314dffbe0815a3b4
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24"
|
|
Packit |
c1c4f9 |
, SipHash 0x027990f029623981
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25"
|
|
Packit |
c1c4f9 |
, SipHash 0xcadcd4e59ef40c4d
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26"
|
|
Packit |
c1c4f9 |
, SipHash 0x9abfd8766a33735c
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27"
|
|
Packit |
c1c4f9 |
, SipHash 0x0e3ea96b5304a7d0
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28"
|
|
Packit |
c1c4f9 |
, SipHash 0xad0c42d6fc585992
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29"
|
|
Packit |
c1c4f9 |
, SipHash 0x187306c89bc215a9
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a"
|
|
Packit |
c1c4f9 |
, SipHash 0xd4a60abcf3792b95
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b"
|
|
Packit |
c1c4f9 |
, SipHash 0xf935451de4f21df2
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c"
|
|
Packit |
c1c4f9 |
, SipHash 0xa9538f0419755787
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d"
|
|
Packit |
c1c4f9 |
, SipHash 0xdb9acddff56ca510
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e"
|
|
Packit |
c1c4f9 |
, SipHash 0xd06c98cd5c0975eb
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
|
|
Packit |
c1c4f9 |
, SipHash 0xe612a3cb9ecba951
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30"
|
|
Packit |
c1c4f9 |
, SipHash 0xc766e62cfcadaf96
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31"
|
|
Packit |
c1c4f9 |
, SipHash 0xee64435a9752fe72
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32"
|
|
Packit |
c1c4f9 |
, SipHash 0xa192d576b245165a
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33"
|
|
Packit |
c1c4f9 |
, SipHash 0x0a8787bf8ecb74b2
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34"
|
|
Packit |
c1c4f9 |
, SipHash 0x81b3e73d20b49b6f
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35"
|
|
Packit |
c1c4f9 |
, SipHash 0x7fa8220ba3b2ecea
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36"
|
|
Packit |
c1c4f9 |
, SipHash 0x245731c13ca42499
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37"
|
|
Packit |
c1c4f9 |
, SipHash 0xb78dbfaf3a8d83bd
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38"
|
|
Packit |
c1c4f9 |
, SipHash 0xea1ad565322a1a0b
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39"
|
|
Packit |
c1c4f9 |
, SipHash 0x60e61c23a3795013
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a"
|
|
Packit |
c1c4f9 |
, SipHash 0x6606d7e446282b93
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b"
|
|
Packit |
c1c4f9 |
, SipHash 0x6ca4ecb15c5f91e1
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c"
|
|
Packit |
c1c4f9 |
, SipHash 0x9f626da15c9625f3
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x3d"
|
|
Packit |
c1c4f9 |
, SipHash 0xe51b38608ef25f57
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
, ( katKey
|
|
Packit |
c1c4f9 |
, "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x3d\x3e"
|
|
Packit |
c1c4f9 |
, SipHash 0x958a324ceb064572
|
|
Packit |
c1c4f9 |
)
|
|
Packit |
c1c4f9 |
]
|
|
Packit |
c1c4f9 |
|
|
Packit |
c1c4f9 |
katTests witnessID v = map makeTest $ numberedList v
|
|
Packit |
c1c4f9 |
where makeTest (i, (key,msg,tag)) = testCase ("kat " ++ show i) $ tag @=? sipHash key (witnessID $ B.pack $ unS msg)
|
|
Packit |
c1c4f9 |
|
|
Packit |
c1c4f9 |
tests witnessID =
|
|
Packit |
c1c4f9 |
[ testGroup "KAT" $ katTests witnessID vectors
|
|
Packit |
c1c4f9 |
]
|