siphash
Version:
SipHash-2-4 fast short-input pseudo-random function
732 lines (565 loc) • 19.5 kB
JavaScript
var siphash = require('../lib/siphash'),
assert = require('assert'),
vector,
key, message, expected, found, vectors = [
[
'aON1dHrq90SbG8Hx',
'v7LyiwuCrB7EgAibPve6Yg2gLmggxE6j7ocR37EudrH_P9XX2rQK',
'2acb62473f324993'
],
[
'YOT4AG5F7ONRW5na',
'4Ks1pPO_2wGYR-gfJShqUO-FirA9c5cF4oKwvStp2Ix5hHUg2klPofVJ8TZoBdFfgTh8',
'99a0a3b91b811b8a'
],
[
'63UlqXfSckA3Dv8S', 'bMQudI8yVdDx5ScGQCMQy4K_QXYCq1w1eC',
'f4711dbaa72c4e06'
],
[
'P3hpmZEuwfDO_uZ-',
'Wh8yRitk__n4MsETCTRFrB4bjWRtPjUZVLPnywlvv5nTMA2C71', 'ea9ca3a62c97abf1'
],
['d9oTrpd-a_Na4b6w', 'f-NT', 'cb77394158cb93b6'],
[
'fe88HBnyyEiuIJ8G', 'KSWP9sFkhSdGsha0Fmd5raCf_eA5gnV1',
'e5f132100a030ada'
],
['o6LxtnACG0RGQ3z-', 'k8zMl', '37b18ed691139e10'],
[
'AHGkoQQ6xdf90MD9',
'HC9bz8XUYkan0jxYSaj0vP-cs324Y4PrnAXutwKBgIko5oOOOViJSjLD2m8WenV8HdF78J',
'a3bb15a5eeffba9d'
],
['TlVmpfbZMFkeuENo', '5is', '1e4f6a653a7224a6'],
['iBLscVfsPM1xrSFJ', 'J-aH-', '1a48f7be9e405b0e'],
[
'hUehErdKolgd0erH', 'DhS94w_07-vaAXo_msv8Fk57slIHnuxy3iv4Yymh5k',
'445df39e18c0cf2d'
],
['B-aq-09jmO0z_PUD', '1p2IMG4A1NMyWsfUS02VK8fOEhn', 'b1832c5b5041e0a1'],
['fyNYE8SMJvYrDgao', 'HWCtQs19BHZcH', 'ad17e27c0efe727a'],
['5vQHK_yJlJez45N5', '8YJwfpxwbH9h-N27i-uTUUK2Vt', 'c70811104d57d88e'],
[
'q7Oo0g9DDjLJ_pyV',
'jQFAHtrTUDaCaSIcis5h2j4fyOJpJGfdZBMTO5GOAAB4AwZtutDenNZ',
'8d0ee7e919b66fe6'
],
[
'IUle6P8g2uyX_8ms', 'hOKGFGrsAux60CQmbOjQd-EzQBKUjLbDUhhtsKt3ZY4',
'980491d3ec66f740'
],
['-bZa23onpInwqNWG', 'DNbtZuulH9', '7f3c64d0ac8e02f7'],
['1xjmLXTmVJwse8M-', 'j1_Hh', '7e53ad39b80651c5'],
['Ey7hygEVd8RxZdtX', 'GNRDNJDu00L', 'bfbc1b9204b8c489'],
['weTzikz4EGUbhSgC', 'g1SXT7b4Zz6q2tQykV1tZS', 'f060d2c6dc452769'],
[
'OjSaplYVoQPDXG7S',
'QCk4v3D9s6R471p0xa--Vv00vzIaMpJ1S48Qnz6uzhmtke99HmWcY9vapyjdWVS',
'7aeff75fc28ed0b7'
],
[
'4g2ZB-SA-HlqJT7D',
'N5Ht5QIk6KziyTE4-q5eNkqGdQgg8fxkr4w-ARqRgdaZd3XpbePGGb4jPFo3',
'7fd4949bf898f57f'
],
['CXOF2EKm5CDPYpNC', 'xkY0T8bPF4JFq6Mu0K5YtFp7KfOni', 'e2eaecc64218ac7c'],
['ID4UzFBiztXW--b0', 'qyICNMPaivgDmX', '7abc58ba129c5f2e'],
['TaGesMDe_0UNGzcp', 'nlNv', '1100685746d3f567'],
['lMDS8Vcs-8aCV9hJ', 'KW44Qk', '3ece65c432822f45'],
[
'BmQCaB-c777zvFsc', 'o-tr2zQVbtrmkH4rCCAXoXFt8KwAWo4YFpK',
'd5bee9715eeba87b'
],
[
'OQlCpJOLmsouyme1',
'aRk9nyHhXlad-TpIemD2VTRiHVlzSysY7uKof9ApR5DejFjT-Bmdzl_z',
'd7f96332eedec959'
],
['t6Wl3FKDhr9FAMzz', 'BLu17bk_iQtpGv1N4A', '8c99547381790750'],
[
'XU5km7La0ujNVvlV', 'OUEAH4yu6SXQ4I8zjn07NuB_AudmoewXc39HqgN8rc',
'6c48b0d28e64b4dc'
],
['zDKBNpM2cdf0HwkK', 'dEqgpqTRc', '511b93c5f2392add'],
[
'yZGrKEShM0z7Vvns', 'sgUtgxRQpMl_o6iuZqomKhJxaSBCD_NBHa2lqX3cWfq8byu',
'41a8df813b72b3d3'
],
['4-wM8GXg1a7hyerE', 'djJ3-b2', '7372ef6d77fea59d'],
[
'jD3Y4PgdExHU2JaY', 'uQC59dKTf3unOGu-Lg9IgmC8MTSg-BcH-',
'ff28e876b5aeb3f9'
],
[
'dZhRW8ubIZovieQg', 'GCbxph1HICSKgHLafk_8TRjGdZa7jnJOu',
'df2b56c9e24c1849'
],
['P9hudzT3H87QzC9E', 'Vfeo26fUa3sLk6BNM', '6b7fd6e0dfae961f'],
[
'ocfdt04Np8Bs5hn9', 'dQiaUqksbXOWmBPt2kBn0ARiVkr3r4mBwypQq',
'd4515c94069bfdcb'
],
[
'UuQ68x330IdojsLI', 'pb6-OdmVdQ1gLP8E1szvlf0T6aOQp-EQHPW-tAKQ8Xj',
'e511fbd81a0b9e17'
],
['T4ec6Q68QKiuIARL', 'BeLjFIoODtDg5vLMLBN1Sae', '7442e550412b67fa'],
[
'xmZBUpwjJwnXZAp6', 'WS2F3Nzg2s7TqVIygm8W1tQyNc6DFy', '138a8bb6fab1ceba'
],
[
'4qB6m0d_ryzb3w6q',
'2Nr1sd1phWDB9gnuYOLUsjvX9jxntScWyRlX3Nj_xs8MV10LGgSgfRBKVGnO',
'fd8ecd374fcf6561'
],
[
'SmVONU3BEODnkbdM', 'G4WIU3UrBqbN6_nccFrIyx_TdXx-W80YzWw',
'6b02a94914869321'
],
[
'zseM9_-0y7B9URxM',
'us8B1DmHxOF10ue3jm2VfoJ250h364zRd2U8VIm2Lbkf3OWprSUpLF4ePjdj5aS',
'a64eaf8b97622f50'
],
[
'WY_sEWLFAybHSwX4', 'vLJyXNkHCYGHWsvhXcU2sWYzgFYlWF7A_ZjFg8kJ4wwuJ',
'eba90a5acca84384'
],
['maWrEov1bBjSq2Zn', 'sCP9zPakZ_wZ8hcQu-G6nN', 'c91fc642dd6bcc88'],
['tXInZHO-x4AWxKTp', 'JQUM_O-E4-YI6dhxo', '60c0de1fb7a6f524'],
[
'OqaQt_b1hvU-atC3', 'X7Ou8cKo17xHlq_5gwM56GZrCSJBReeA60pDj2hUer6',
'5d9918744faf6ba9'
],
['nHdnXHGmGknC8FfC', 'cRupnAESNmU', 'd508200751cdc812'],
['59n9lAJdrxIz3joe', 'WBPr', 'ffa5e9f27a98994b'],
[
'q-PAAgkE9z2xed85',
'AFOQD_H7MO3q3cxLa7TOUd89kpH03SpjpqmzY6AX16-uZFYcZZBb8D',
'042a63ae8565042d'
],
[
'tBzStZxn2ZqlQfBf', 'nZdIaI7-bdqqh6aU7w4HfDCByX-x4_3q9Jf',
'904bfd32e0c731fd'
],
[
'rH8Nn75LyYC0hjVG', 'IrDPpL-dkoh6VTy7pOtKKdAD9dLwUnE-',
'054a4abe7f61024c'
],
['F-pI7AhpS1V-48eT', 'Ao7hV41P08Zq4C1szyOVN7K1iWW8z', '72ae69a20d554c79'],
['Khje_RmXXmJ3CAb1', 'TvMx3ISTfIQ', 'b21b2df2b65c66ed'],
[
'G1KRzk-KMqCk-kbD', 'imHZWdBz01lGR3m1zuO74berNn68uFZR3kcoWEaMhVjJ1g',
'b8cb65c77e2203a5'
],
[
'wJhnTtBLcy_1rZay', 'qbZ6oK0a4eWf2ud1sEnKLeguOmYsbG4aOTdlMdrf',
'845a58b4930ea9e2'
],
['vVl9fhjkwASu2WXe', '8-CjQylw18IKWgAL2mMxo', '2a48ac4a22cac11e'],
[
'm2Qx2Dtbvwv3qjNJ',
'WrIqIIsHqbgm3Qfg03QvaVG9G6fz2zxjnfNZUVuX8XUtjz4LQuj3VZNh',
'6a75eabb3a40a3ed'
],
['5R1maUgHiPQ0ZoaD', 'SZJ6uMXnMuLll2xOfHcy_DE', '3705b41383b61ad1'],
[
'dDBufcmObAK1dKYw', 'ayjd0F5mqWsVF0MtUNJYo8S8GhuCsMCnEU6k3H9z0f8',
'3f270438f5cef47e'
],
['o_YPVOjQ7Xw0G9OD', 'UPF-HW1hJukwdVvhCl7IZJzy7a', '213bbd58d630d31e'],
[
'oule-vFYlFJfsXU3',
'8ORL7DUv28-yVfUw_cJ3imWP-iXrQRmzZRp0jtspwW_qm-rXmc1aBsbvbAut8',
'71e6179957f33e42'
],
['kEPlQxhC27GQcJeb', 'wL-dAWvwZapITZZvgW46', 'd8301721fc345399'],
['GFilE6NpBPWE25uB', 'RzoQCcd5NVeDbd2cx', 'd857f48e68dd6590'],
['sENqlFHs0NvkY28u', 'Gm2ojB-BJBdL', '34d70e5e072ae24b'],
['mxiOr15qouOEhzHS', 'SChjLg6SXpEb9', 'e5159ed34f3840ae'],
[
'pFL_Sbx5RW0fuPHO',
'hdb8HqaxEN99N4V1STTpnR4kr9F-lONwKp2TcOCopBFnDrjITz3jHPM4WKIYyw59US',
'c94e8e6fa5e4426c'
],
['sMgAXpCtVqeFm14R', 'dNPnh6shnGYEZuN0id', 'ff54217e14659365'],
[
'nTu9mRGqYc1SOPk7',
'ogL8VEqgoMkh6YNgTzvF4f87wHvmRhzncGPunN2ZJ5p3qUqZeJ3',
'521ccf22901710fd'
],
['d5jDH8Ppk82zj_vd', '5sfq9Q_0P0H', '4df01af75904f5c5'],
[
'bEEUPVwdHlYwYL6o',
'AGoiVTE9foWm2MZqsn3dfS1XQiQW0QJwLXi6oXR2L9nMnPCPG_oF',
'f214b10457d9cbba'
],
[
'JbKhWuTfRMWb4hFD',
'NTNhYIahQ769TsCDwFyfOYZ8x6np58jg9hMAHFH-BMv7hBwESi596D4aDuyPabFGbqcG',
'3bdfd59261a64f3c'
],
[
'hvCtw1q_GJUBFW_X', 'uL5zgFM9WUTyO25dzVCmSVOxbpV70ZPurKK-CPUAmP',
'3d7bb70769e9047f'
],
['hWxh0P6EXlm4yYKA', 'NUgrOoTOfqaB6JDZj', 'b7bdb27595f9ff60'],
[
'TLHDMak8qeH3ABaV', 'HW-7PPunyMCinXt8QjQUuJUzZZQs1-T9ADR-6y',
'4a83f022d855a72e'
],
['uE4OfzzqHVDH8lbd', '8KCUyGtkcG-T8gA3lpplC13LsnFZ', '4cf3842f60210912'],
[
'ocjA0Quge9vdCDbH',
'tLlU03I9CDBbP1Pnl6KM3MW34TNzuuZYv0u-uU-l7RtFF0OmGoySyg_yc7vWswGkz',
'0be85bc57ee3ae7c'
],
[
'TDVmxGeyDULfxyrz',
'A57Y0_L6K4TTzQx1-Yr1E6fVAZi31RyipeK0Q4uqwXXfRLo4tz2a5PSqN3-bdQ4f2',
'fb32550ce389d435'
],
[
'8OhqW3sA7s1vqEDr',
'jlFquRWvL07TyLjW9ZNk81gxkvs4u1WLkNhOQVLOjFjw3iecMjun5Yk0xcruo',
'22731deb43868293'
],
[
'9kPcY6rfhPzSzEGn', 'nS1kAxpsghzJJXiCzhNycDk2_EJ_yIT97fV2kxXTtfZ9p0',
'59d14fb8edb06db2'
],
['AJJ_yoEL8WyEtA1U', 'vFNErhfCk1TZiTFMA6J8D', '66a7321ef78e3f1a'],
['PBr4drRAJTaWv5Um', '5quc8Vd2rHVNk2NoDxk3TL', '022a4a6599d17196'],
[
'MnODoRJI2FgZrvLs', 'gqJ_7HnrfiqYkenyvhe53SB1vTBgMiMB3kxF5',
'a13c27829dd80bcd'
],
['iSxQPJpp_s0ws-4b', 'K-J', 'b55b5a70f1d14e2e'],
[
'ZMm2tCGDJ04A3I_6', 'gw-wcFYO1G2KEqJagWAic2l2d1FoTVXVT',
'1624924cd8a63c16'
],
[
'Hxf6qsSIV6blPdB1',
'GTWOerCQdUMkL6it6hEEPKBcOe_9f_B618ivjeM3BKfjzRQ8rvcGjUUJnsljerca6',
'5b04ad4f24644a7a'
],
['U5gXdMrRYUdxuDjK', 'siy9CxY2BbhazTqBWwFrtBLh', '331bd7bde7f85c4f'],
[
'YJiK_B-TENJsVnd_', 'Ohyz8XU06XWewcgTX-PffLVdatU3UFl6CYe',
'df46b8bced5b9316'
],
[
'J7wVNfLdkCCtndH5',
'1Vw163YqXwP8cPXIy5dSkcIoClBep7gWb0qGJzHM8h_hzk2GFtZyLKk',
'4a67904b91dcdd7b'
],
[
'elId3b7ZyOg6HVif',
'N89kQR7VMUgF4DyWhpTo_ZW2lERbNqFa1RdXjaUctO1FdevDAZaA',
'7022c1f03911f427'
],
[
'ydBueYO29jaUsEVU',
'HMcnfvYjjz8Uf8bUhxXlAYHcyO7x5NHE_gc3bcWSMWJD2JdryrUBBdYj1',
'22827e8ff4200ffc'
],
['fVprx-PzTSx6CUcX', 'Q', '01db373e87f016fd'],
[
'9ORMwecQjlob9aTT',
'2cpq2XTWPk5sVLlN4OR5y6X_rTRFNUURgrwnWDg76u927cYud6PS-17UTgd3TO9g3K4',
'fa55fe38886c7c0f'
],
[
'-V3BEGXuTWtFOMv4',
'8l6qcZXfG9iSywi1IgwJ_PkZh0Bg2iR1cbGps_sWPdKXbIvDDX-3IeTTg',
'e83848066312086f'
],
[
'Cbvx4_KdboiNHs6P', 'nzUo0UnqKn05adw5g0jtBN703bUgb8UxywfC93I7KN',
'2dce194d9d5f1155'
],
[
'SDPzfgeqkvmi62JH',
'Z6kJuDD-8FSz1VwOuPeoSJ6X-4hpib563UjYxtFcB4SvhQr-Hstg5OhMi4iZZ',
'615fb48d3aac2399'
],
[
'mBJlhP6D3M2raEjD', 'ogtg66jr2KLCFO2RvodOXw0mt4XS6BOnLhBI_gDV0',
'96e66cf061c6e755'
],
[
'Sz-mxKc7KGM7SDaf',
'ecQ-7-3VddOdMSeKUbZE1t6Aa67pYGXjQeOckq1l50GkvfomFr', 'b2da4a8e8518f112'
],
['_5ck5scojT4oyJEq', '43oLkeixGHShTMUhtI', '220ba502216bbe23'],
['48ulC82W4qv49InN', '8HQyT55TtmGahy6w', 'b96465a47c1c4602'],
['-exgd5coAHqBu3ga', 'vRfqYthbUNh', '8f84728a608dbc30'],
['hJEBugObOX06pplH', 'oYYZ-v', 'fed18a2e05597099'],
[
'eSDsC63oTtVfi_F7',
'BVmyPas409CmRHiRRiTPjJL87KgJefuDK6lEh5isghLl7l3a4Xmxa',
'52a524adfb1ec615'
],
[
'KZtUPWMUr469RWL8',
'F9K6TUd6j7Dm25rAS7cqOKDtSnnxj0hYKVTMFQ6CfA5218gPeZo',
'ad3c363927b7e9cb'
],
[
'0TeBxGk-V7RPSZML', 'kmL1fKqHwAoxI1b_ap8I9fGZMmcx3gIMiglxLLPFWOoDNUGe',
'87a6e747940d07c1'
],
[
'PWYY82PNqwshPHiv',
'Ya4LyHqxIxK8GaND9FIzqugleh-QELha_ntbRJixl6hZI5m3RfdrcntjiPJ',
'6c84a5813740b11b'
],
['PtCub86vGwNj1tcv', 'qR08eqAeNrrUYDl18C-wttqMDk', '7d07032664f78642'],
['3eqQxzhNdv2kJqy5', '0wxAd9NT-Z8xFzomFwgMqMVbaUg', '0d9b9fd369a5bf24'],
['MgEjpTNPFFwes6Sm', '7SCVGNJYZhtnbiLZAE5TrsL5K1X', 'c7e3033031c94fd0'],
[
'vSofRAYxXUU1qjhl', 'HATE-YsASxySRkK5aJR4yV0mxx1YAuEgM5tUqyJDc7cLL',
'4a07874418b7cd3d'
],
[
'kIUe96sZ6LV464T_',
'rjwrCOQAzLFbIM_3M7KfDQ1A6r3nkebk-dgqORG0Uy-n89_apYNLVTbdr3yuzXKOTfkRh',
'bae1da917e8fd653'
],
['8wao85IcCu1mC-Rc', 'AdVncBX6wkLXqMQPol3tNDPd5HJ', '3fd74bdb24f3dfa1'],
[
'NRVNeO5wysG3DRuU', 'Mr8vhiVPo5GpI6sho4R09k8D-vFgcghF3-kF',
'b4b6bdfee13977f6'
],
[
'VHJZOECxfyxVyufk',
'TMB3UMDEIs-vj_9aDBNDzT6HkHcwQQhr4EnG6A1AD9JkHENVAAQnS7s',
'3e7b1b3874455575'
],
[
'TUfnTd3pmaJzSdD4',
'VoRGCJgaGEhPSGRl0EPKWIzN7CRpD49CiyjC7y_4xRpppMNlR4v',
'ba4ed071048c7403'
],
['-I1YgwmWxehyB6kv', 'IplQLxea3JGywQn3XMNWrqVbE', '6184650bc96dfb89'],
[
'4ic5nM5lbfMOXDRR',
'TfVtpOoAQt1IxL0qJtAQoCJJThyxncIagOvKSpxjD7RDmh7YQBHWPkuv5lpSzpN',
'2c7ab8556354cbc0'
],
['NYOq6hIu2C-aZPhE', 'QQa0EWIHXqbrkq3nBeXt6yEj12z', '3a64355215c5c728'],
['nC93tajnfzk6bMtM', 'p9gbEB4nMHXDqmOC413rI4Z', '20dbaa598f668cc8'],
[
'ZCCkYIbGOzXa5GRO',
'2f9VGQeb4AtW6SwPjAGxxjyHNw3-MZj2BfxttNLxM0Tv_rpXO8TUH4YASb',
'0c512395c264ae00'
],
[
'oapO2W6hces4Pfkc', 'oEyf5eqpM-N7LBp3C5vejvO7M87OzT4MHdwJz',
'f0683ccf14c7c38c'
],
[
'__daPiDXrnPpS7eO', '1_tnhApr6nZbWIEPja0jAJ6LbTvD6oAEvPyrLYQ',
'd6927c7c774cf4ff'
],
[
'5iIExqPt5W-ZpudD', 'jNbLiDmQdN5X7HEOfgnAi5A7s1pGXwP41hX1Z',
'1f4296aecb7d4495'
],
[
'gD_J-R8tOb977BtL',
'f7A81Qbh8gQhfRpOmtz5-ZJqBxiQJ6myBhGfqK7BVaGBL_W2MvfB',
'6ee8be8dc48c266a'
],
[
'ZxHO4JJ8p45jTUXU',
'fs4Oy8mPZS6919SZ7gDyKIILDkXnPt8SsXkfBd-Mnm4wO6alw-veQD9',
'86548866646835d1'
],
[
'2bVzT0moojGNQgIX', 'nuyb-AgYY-rsmhtdav3LC7meSPy1dCosjSw0YAvgP',
'fc94936819f7c901'
],
[
'FicyyNT0BRua05i9',
'TG4leSS_mcrZ_L68GKFdxc4-McFCCtdG7QpbPu_MolD5luE6n3dKlPzb9MvfvkiZKi',
'ee72ebb2e0429688'
],
['g5Qaf7mQAIxuHR0O', 'A6u5gtb1yMSiGlWVt3exYsRS', 'c115472b207314a9'],
['aOACI6GP6u4WFyxp', '1eEx55L3E9MZga7l1WzpnKfI', 'c34565d91b0f1ab1'],
['Rr2jLg-asIQrlaRJ', 'rgALEbs', '20452e045afa67a3'],
[
'p8qW0oYzj5zi55s5',
'V1ZCoK73ifwcnzPjQEN7Q79MtZCskcpqiE3gfbqYPYRmy-q0lPxopkZZp2lNWKkpL_q5z',
'7bee2633aef0791d'
],
[
'wA0cNUJOhIMpiopE',
'U2RE2L2zZysyOTcsj5_JosVDaMRtUxkRWVCeBH0AeodMvYGBcHizhxc2QM89',
'2e03a807a494e628'
],
['zBCN1w4ypWCEfpwC', 'VRcTwONsyRQIy2ymVniMmry', 'de78bd983638b1b8'],
['i8cumEDwOxSXT0gL', 'ifKav', 'abf629b3e4c1be35'],
[
'g3EswbaCSNMsegzm',
'rTFnEuEDlwBB0Dw_q3-FUSaTCEjWe0pOPZDIWD35Us08Qa-nulc57YjDoGphUfBamq',
'1130933cb377409d'
],
[
'iYsckWoQTk5ap8YO',
'wIyTqa43-_GiZlHJ8UXcD_tnqKikH5DZUWxdQ1xjYMyzCr2JvKKRBm8BbcDl_Q8p',
'6a742d30b7aaed60'
],
[
'Iyk5MoAjoWq4n8bG', 'IV2N5MC6kvk95ykEzb3jj0A7Sv0jjif45SR1avc0bRWot2aW',
'072fccf2e1951763'
],
['NfzdRXCegRRsHHYj', '5uLBPbyFQqiv', 'daabcc24c06e2d88'],
[
'YiJTXegVwaNDtlpl', 'DbwKoF3CI5kd2JRKwfyuLpeGd6sFhqI0t43C2ph',
'3c6b7209bf937ebc'
],
['ZuUlFM-yEzZ9XHKj', 'errecd71', '6f5ce3952f54e79e'],
[
'EtEXELa6V_NSjvEh',
'yrTjrRuW8mJc3utw2JUH7iIW-J5vF3t9GC1-ZvRmO8UXNsG8-I3Iqgtinzoabqqbs1yvR',
'47aef668d79034ba'
],
[
'q2uA_VwMnaBtAgTx',
'uJOymuDgBBS9Ec56JRGmKYsMHoGLCKA5wzwhtYf-g8-IT7UsAX1JHFGSV0EF',
'ba6106d486bc41b0'
],
[
'4RmqR10QiIZDDKNO', 'oWY0Aj2CDCWuEFhdNHq2RFcGJD0sSRxK5K',
'0d52287ae4ee1c72'
],
['a9DfUPCLyQ_yrNIa', '5G-6AVe7CBJl-NuuUN_7TN', '6fe3cfc2b97cce5f'],
['8oB5yG87C2v5j0_4', '1S-aiUNRJ2c', '51d0245a4ff22a7b'],
[
'ZA2ZT22NXwD_UvTM',
'UpV3pLYniWPm-PnWUAbBNeO4V-zuuw6IZQ1ZprLsC_LjGdSJP7rZCnoPz',
'6dd48df68066d1bd'
],
[
'ycz6aiuQFGKxZVsM',
'fBuJp4_A_hiq--4uBhxjXfT3nRaYEJ8azW2_FKooXdSVRv2Y03VoWzPzG',
'184b0a49c7a27ff1'
],
['eAmt0pClMyL8Sk69', 'JFzXjfJhEMUCYEDrBKRM9OFFK0PSX', '02c245103c2ba7b0'],
[
'CTFnU2nwy9s1_kBj', 'hEHqR0idFTzbvG193aLYj6y2DFPi2UKQut_A--43PdN1XF',
'79e6377df89c5406'
],
['CAhom0f872WEDXP6', 'dmX', 'b1f40313acaf62cb']
];
for (var i = 0, j = vectors.length; i < j; i++) {
vector = vectors[i];
key = vector[0], message = vector[1], expected = vector[2];
found = siphash.hash_hex(siphash.string16_to_key(key), message);
assert.equal(
found, expected, 'Key: [' + key + '] Message: [' + message + ']' +
' ' +
'Found: [' + found + '] Expected: [' + expected + ']');
found = siphash.hash(siphash.string16_to_key(key), message);
var m = ((found.l >>> 0) & 0xff) + ',' + ((found.l >>> 8) & 0xff) + ',' +
((found.l >>> 16) & 0xff) + ',' + ((found.l >>> 24) & 0xff) + ',' +
((found.h >>> 0) & 0xff) + ',' + ((found.h >>> 8) & 0xff) + ',' +
((found.h >>> 16) & 0xff) + ',' + ((found.h >>> 24) & 0xff);
console.log('{<<"' + key + '">>, <<"' + message + '">>, <<' + m + '>>},')
}
key = [0xdeadbeef, 0xcafebabe, 0x8badf00d, 0x1badb002];
message = 'Short test message';
found = siphash.hash_hex(key, message);
expected = 'f2e893485bd3bade';
assert.equal(found, expected);
key = [0xdeadbeef, 0xcafebabe, 0x8badf00d, 0x1badb002];
message = 'Short test message';
found = siphash.hash(key, message);
expected = {
h: 4075328328,
l: 1540602590
};
assert.equal(found.h, expected.h);
assert.equal(found.l, expected.l);
key = siphash.string16_to_key('0123456789ABCDEF');
message = 'Short test message';
found = siphash.hash_uint(key, message);
assert.equal(found, 3323740134809132);
var siphash_double = require('../lib/siphash-double'),
assert = require('assert'),
vector, key, message, expected, found,
vectors = [
[
'aON1dHrq90SbG8Hx',
'v7LyiwuCrB7EgAibPve6Yg2gLmggxE6j7ocR37EudrH_P9XX2rQK',
'999b16aff116038a8dcd9565ce8c87ac'
]
];
for (var i = 0, j = vectors.length; i < j; i++) {
vector = vectors[i];
key = vector[0], message = vector[1], expected = vector[2];
found = siphash_double.hash_hex(siphash.string16_to_key(key), message);
assert.equal(
found, expected, 'Key: [' + key + '] Message: [' + message + ']' +
' ' +
'Found: [' + found + '] Expected: [' + expected + ']');
found = siphash.hash(siphash.string16_to_key(key), message);
var m = ((found.l >>> 0) & 0xff) + ',' + ((found.l >>> 8) & 0xff) + ',' +
((found.l >>> 16) & 0xff) + ',' + ((found.l >>> 24) & 0xff) + ',' +
((found.h >>> 0) & 0xff) + ',' + ((found.h >>> 8) & 0xff) + ',' +
((found.h >>> 16) & 0xff) + ',' + ((found.h >>> 24) & 0xff);
console.log('{<<"' + key + '">>, <<"' + message + '">>, <<' + m + '>>},')
}
var siphash13 = require('../lib/siphash13'),
assert = require('assert'),
vector,
key, message, expected, found,
vectors = [
[
'aON1dHrq90SbG8Hx',
'v7LyiwuCrB7EgAibPve6Yg2gLmggxE6j7ocR37EudrH_P9XX2rQK', '884fe2d407e90f36'
]
];
for (var i = 0, j = vectors.length; i < j; i++) {
vector = vectors[i];
key = vector[0], message = vector[1], expected = vector[2];
found = siphash13.hash_hex(siphash.string16_to_key(key), message);
assert.equal(
found, expected, 'Key: [' + key + '] Message: [' + message + ']' +
' ' +
'Found: [' + found + '] Expected: [' + expected + ']');
found = siphash.hash(siphash.string16_to_key(key), message);
var m = ((found.l >>> 0) & 0xff) + ',' + ((found.l >>> 8) & 0xff) + ',' +
((found.l >>> 16) & 0xff) + ',' + ((found.l >>> 24) & 0xff) + ',' +
((found.h >>> 0) & 0xff) + ',' + ((found.h >>> 8) & 0xff) + ',' +
((found.h >>> 16) & 0xff) + ',' + ((found.h >>> 24) & 0xff);
console.log('{<<"' + key + '">>, <<"' + message + '">>, <<' + m + '>>},')
}
var siphash13_double = require('../lib/siphash13-double'),
assert = require('assert'),
vector, key, message, expected, found,
vectors = [
[
'aON1dHrq90SbG8Hx',
'v7LyiwuCrB7EgAibPve6Yg2gLmggxE6j7ocR37EudrH_P9XX2rQK',
'61c10e46c4b584a74278452a1ab53ce6'
]
];
for (var i = 0, j = vectors.length; i < j; i++) {
vector = vectors[i];
key = vector[0], message = vector[1], expected = vector[2];
found = siphash13_double.hash_hex(siphash.string16_to_key(key), message);
assert.equal(
found, expected, 'Key: [' + key + '] Message: [' + message + ']' +
' ' +
'Found: [' + found + '] Expected: [' + expected + ']');
found = siphash.hash(siphash.string16_to_key(key), message);
var m = ((found.l >>> 0) & 0xff) + ',' + ((found.l >>> 8) & 0xff) + ',' +
((found.l >>> 16) & 0xff) + ',' + ((found.l >>> 24) & 0xff) + ',' +
((found.h >>> 0) & 0xff) + ',' + ((found.h >>> 8) & 0xff) + ',' +
((found.h >>> 16) & 0xff) + ',' + ((found.h >>> 24) & 0xff);
console.log('{<<"' + key + '">>, <<"' + message + '">>, <<' + m + '>>},')
}