mirror of
https://github.com/AtHeartEngineer/sss.git
synced 2026-01-07 20:13:49 -05:00
39 lines
940 B
C
39 lines
940 B
C
#include "hazmat.h"
|
|
#include <assert.h>
|
|
#include <string.h>
|
|
|
|
|
|
static void test_key_shares(void)
|
|
{
|
|
uint8_t key[32], restored[32];
|
|
sss_Keyshare key_shares[256];
|
|
size_t idx;
|
|
|
|
for (idx = 0; idx < 32; idx++) {
|
|
key[idx] = idx;
|
|
}
|
|
|
|
sss_create_keyshares(key_shares, key, 1, 1);
|
|
sss_combine_keyshares(restored, (const sss_Keyshare*) key_shares, 1);
|
|
assert(memcmp(key, restored, 32) == 0);
|
|
|
|
sss_create_keyshares(key_shares, key, 3, 2);
|
|
sss_combine_keyshares(restored, (const sss_Keyshare*) key_shares[1], 2);
|
|
assert(memcmp(key, restored, 32) == 0);
|
|
|
|
sss_create_keyshares(key_shares, key, 255, 127);
|
|
sss_combine_keyshares(restored, (const sss_Keyshare*) key_shares[128], 127);
|
|
assert(memcmp(key, restored, 32) == 0);
|
|
|
|
sss_create_keyshares(key_shares, key, 255, 255);
|
|
sss_combine_keyshares(restored, (const sss_Keyshare*) key_shares, 255);
|
|
assert(memcmp(key, restored, 32) == 0);
|
|
}
|
|
|
|
|
|
int main(void)
|
|
{
|
|
test_key_shares();
|
|
return 0;
|
|
}
|