Skip to content
Snippets Groups Projects
Commit fa4a9c90 authored by Charles Wright's avatar Charles Wright
Browse files

Got this working with the higher-level Swift interface in the BlindSaltSpeke package

parent 64d4f3d9
No related branches found
No related tags found
No related merge requests found
......@@ -232,6 +232,13 @@ bsspeke_server_generate_B(const uint8_t P[32],
}
void
bsspeke_server_get_B(uint8_t B[32],
bsspeke_server_ctx *server)
{
memcpy(B, server->B, 32);
}
int
bsspeke_client_generate_keys_from_password(const uint8_t blind_salt[32],
uint32_t phf_blocks, uint32_t phf_iterations,
......@@ -365,6 +372,13 @@ bsspeke_client_generate_A(const uint8_t blind_salt[32],
return 0;
}
void
bsspeke_client_get_A(uint8_t A[32],
bsspeke_client_ctx *client)
{
memcpy(A, client->A, 32);
}
void
bsspeke_client_derive_shared_key(const uint8_t B[32],
bsspeke_client_ctx *client)
......@@ -455,7 +469,7 @@ bsspeke_server_derive_shared_key(const uint8_t A[32],
}
int
bsspeke_server_verify_client(uint8_t client_verifier[32],
bsspeke_server_verify_client(const uint8_t client_verifier[32],
bsspeke_server_ctx *server
) {
......
......@@ -21,6 +21,9 @@
#ifndef BSSPEKE_H
#define BSSPEKE_H
#include <stddef.h>
#include <sys/types.h>
#ifdef __cplusplus
extern "C" {
#endif
......@@ -34,6 +37,8 @@ extern "C" {
#define BSSPEKE_ARGON2_MIN_PHF_BLOCKS 100000
#define BSSPEKE_ARGON2_MIN_PHF_ITERATIONS 3
//typedef unsigned char uint8_t;
typedef struct {
// Login credentials
uint8_t client_id[256];
......@@ -101,6 +106,10 @@ void
bsspeke_server_generate_B(const uint8_t P[32],
bsspeke_server_ctx *server);
void
bsspeke_server_get_B(uint8_t B[32],
bsspeke_server_ctx *server);
int
bsspeke_client_generate_P_and_V(uint8_t P[32], uint8_t V[32],
const uint8_t blind_salt[32],
......@@ -112,6 +121,10 @@ bsspeke_client_generate_A(const uint8_t blind_salt[32],
uint32_t phf_blocks, uint32_t phf_iterations,
bsspeke_client_ctx *client);
void
bsspeke_client_get_A(uint8_t A[32],
bsspeke_client_ctx *client);
void
bsspeke_client_derive_shared_key(const uint8_t B[32],
bsspeke_client_ctx *client);
......@@ -127,7 +140,7 @@ bsspeke_server_derive_shared_key(const uint8_t A[32],
bsspeke_server_ctx *server);
int
bsspeke_server_verify_client(uint8_t client_verifier[32],
bsspeke_server_verify_client(const uint8_t client_verifier[32],
bsspeke_server_ctx *server);
void
......
import XCTest
@testable import BSSpeke
@testable import Cbsspeke
final class CbsspekeTests: XCTestCase {
func testExample() throws {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment