Adding sigs

parent b7f14fde
...@@ -22,9 +22,9 @@ std::string *stringFromKey(libff::alt_bn128_Fr *_key) { ...@@ -22,9 +22,9 @@ std::string *stringFromKey(libff::alt_bn128_Fr *_key) {
return new std::string(tmp); return new std::string(tmp);
} }
libff::alt_bn128_Fr *keyFromString(std::string &_keyString) { libff::alt_bn128_Fr *keyFromString(const char* _keyString) {
return new libff::alt_bn128_Fr(_keyString.c_str()); return new libff::alt_bn128_Fr(_keyString);
} }
bool check_key(const char *_keyString) { bool check_key(const char *_keyString) {
...@@ -39,7 +39,7 @@ bool check_key(const char *_keyString) { ...@@ -39,7 +39,7 @@ bool check_key(const char *_keyString) {
// std::string keyString = // std::string keyString =
// "4160780231445160889237664391382223604184857153814275770598791864649971919844"; // "4160780231445160889237664391382223604184857153814275770598791864649971919844";
auto key = keyFromString(ks); auto key = keyFromString(ks.c_str());
auto s1 = stringFromKey(key); auto s1 = stringFromKey(key);
...@@ -54,3 +54,29 @@ bool check_key(const char *_keyString) { ...@@ -54,3 +54,29 @@ bool check_key(const char *_keyString) {
return true; return true;
} }
char* sign(const char *_keyString, const char* _hashXString, const char* _hashYString,
const char* _hashZString) {
auto key = keyFromString(_keyString);
libff::alt_bn128_Fq hashX(_hashXString);
libff::alt_bn128_Fq hashY(_hashYString);
libff::alt_bn128_Fq hashZ(_hashZString);
libff::alt_bn128_G1 hash(hashX, hashY, hashZ);
libff::alt_bn128_G1 sign = key->as_bigint() * hash; // sign
return nullptr;
}
...@@ -39,6 +39,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ...@@ -39,6 +39,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <math.h> #include <math.h>
#define MAX_KEY_LENGTH 128
void *(*gmp_realloc_func)(void *, size_t, size_t); void *(*gmp_realloc_func)(void *, size_t, size_t);
void *(*oc_realloc_func)(void *, size_t, size_t); void *(*oc_realloc_func)(void *, size_t, size_t);
void (*gmp_free_func)(void *, size_t); void (*gmp_free_func)(void *, size_t);
...@@ -106,7 +109,7 @@ void encrypt_key(int *err_status, unsigned char *key, ...@@ -106,7 +109,7 @@ void encrypt_key(int *err_status, unsigned char *key,
*err_status = -1; *err_status = -1;
if (strnlen(key) >= 128) if (strnlen(key) >= MAX_KEY_LENGTH)
return; return;
*err_status = -3; *err_status = -3;
...@@ -133,7 +136,7 @@ void encrypt_key(int *err_status, unsigned char *key, ...@@ -133,7 +136,7 @@ void encrypt_key(int *err_status, unsigned char *key,
*err_status = -6; *err_status = -6;
char key2[128]; char key2[MAX_KEY_LENGTH];
decrypt_key(err_status, encrypted_key, sealedLen, key2); decrypt_key(err_status, encrypted_key, sealedLen, key2);
...@@ -166,4 +169,17 @@ void decrypt_key(int *err_status, unsigned char *encrypted_key, ...@@ -166,4 +169,17 @@ void decrypt_key(int *err_status, unsigned char *encrypted_key,
void sign_message(int *err_status, unsigned char *encrypted_key, void sign_message(int *err_status, unsigned char *encrypted_key,
uint32_t enc_len, unsigned char *message, uint32_t enc_len, unsigned char *message,
unsigned char *signature) {} unsigned char *signature) {
\ No newline at end of file
uint8_t key[MAX_KEY_LENGTH];
decrypt_key(err_status, encrypted_key, enc_len, key);
if (err_status != 0) {
return;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment