Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
sgxwallet
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董子豪
sgxwallet
Commits
2e6e8f91
Unverified
Commit
2e6e8f91
authored
May 18, 2020
by
Oleh Nikolaiev
Committed by
GitHub
May 18, 2020
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #83 from skalenetwork/bug/SKALE-2545-invalid-secret-share-length
Bug/skale 2545 invalid secret share length
parents
d6fc4674
356c669e
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
5 additions
and
31 deletions
+5
-31
BLSCrypto.cpp
BLSCrypto.cpp
+1
-16
SGXWalletServer.cpp
SGXWalletServer.cpp
+0
-9
libjson-rpc-cpp.tar.gz
jsonrpc/pre_downloaded/libjson-rpc-cpp.tar.gz
+0
-0
build_deps.py
scripts/build_deps.py
+2
-2
docker_test.py
scripts/docker_test.py
+1
-1
DKGUtils.cpp
secure_enclave/DKGUtils.cpp
+1
-1
secure_enclave.c
secure_enclave/secure_enclave.c
+0
-2
No files found.
BLSCrypto.cpp
View file @
2e6e8f91
...
...
@@ -151,8 +151,6 @@ bool hex2carray2(const char *_hex, uint64_t *_bin_len,
bool
sign
(
const
char
*
_encryptedKeyHex
,
const
char
*
_hashHex
,
size_t
_t
,
size_t
_n
,
size_t
_signerIndex
,
char
*
_sig
)
{
//cerr << "ENTER SIGN" << endl;
auto
keyStr
=
make_shared
<
string
>
(
_encryptedKeyHex
);
auto
hash
=
make_shared
<
array
<
uint8_t
,
32
>>
();
...
...
@@ -168,10 +166,7 @@ bool sign(const char *_encryptedKeyHex, const char *_hashHex, size_t _t, size_t
auto
keyShare
=
make_shared
<
BLSPrivateKeyShareSGX
>
(
keyStr
,
_t
,
_n
);
//cerr << "keyShare created" << endl;
// {
auto
sigShare
=
keyShare
->
signWithHelperSGX
(
hash
,
_signerIndex
);
// }
auto
sigShareStr
=
sigShare
->
toString
();
...
...
@@ -184,16 +179,12 @@ bool sign(const char *_encryptedKeyHex, const char *_hashHex, size_t _t, size_t
// auto sig_ptr = make_shared<string>(test_sig);
// strncpy(_sig, sig_ptr->c_str(), BUF_LEN);
//cerr<< "sig " << _sig <<endl;
return
true
;
}
bool
sign_aes
(
const
char
*
_encryptedKeyHex
,
const
char
*
_hashHex
,
size_t
_t
,
size_t
_n
,
size_t
_signerIndex
,
char
*
_sig
)
{
//cerr << "ENTER SIGN" << endl;
auto
keyStr
=
make_shared
<
string
>
(
_encryptedKeyHex
);
auto
hash
=
make_shared
<
array
<
uint8_t
,
32
>>
();
...
...
@@ -208,10 +199,7 @@ bool sign_aes(const char *_encryptedKeyHex, const char *_hashHex, size_t _t, siz
// auto keyShare = make_shared<BLSPrivateKeyShareSGX>(keyStr, _t, _n);
//
// //cerr << "keyShare created" << endl;
// // {
// auto sigShare = keyShare->signWithHelperSGX(hash, _signerIndex);
// // }
//
// auto sigShareStr = sigShare->toString();
//
...
...
@@ -296,8 +284,6 @@ bool sign_aes(const char *_encryptedKeyHex, const char *_hashHex, size_t _t, siz
// auto sig_ptr = make_shared<string>(test_sig);
// strncpy(_sig, sig_ptr->c_str(), BUF_LEN);
//cerr<< "sig " << _sig <<endl;
return
true
;
}
...
...
@@ -320,7 +306,6 @@ char *encryptBLSKeyShare2Hex(int *errStatus, char *err_string, const char *_key)
unsigned
int
encryptedLen
=
0
;
//status = trustedEncryptKey(eid, errStatus, errMsg, keyArray, encryptedKey, &encryptedLen);
status
=
trustedEncryptKeyAES
(
eid
,
errStatus
,
errMsg
->
data
(),
keyArray
->
data
(),
encryptedKey
->
data
(),
&
encryptedLen
);
spdlog
::
debug
(
"errStatus is {}"
,
*
errStatus
);
...
...
@@ -373,4 +358,4 @@ char *decryptBLSKeyShareFromHex(int *errStatus, char *errMsg, const char *_encry
return
plaintextKey
;
}
\ No newline at end of file
}
SGXWalletServer.cpp
View file @
2e6e8f91
...
...
@@ -43,7 +43,6 @@
#include "Log.h"
void
setFullOptions
(
int
_printDebugInfo
,
int
_printTraceInfo
,
int
_useHTTPS
,
int
_autoconfirm
,
int
_encryptKeys
)
{
if
(
_printDebugInfo
)
...
...
@@ -447,13 +446,11 @@ Json::Value SGXWalletServer::getVerificationVectorImpl(const string &_polyName,
shared_ptr
<
string
>
encr_poly_ptr
=
readFromDb
(
_polyName
);
verifVector
=
get_verif_vect
(
encr_poly_ptr
->
c_str
(),
_t
,
_n
);
//cerr << "verif vect size " << verifVector.size() << endl;
for
(
int
i
=
0
;
i
<
_t
;
i
++
)
{
vector
<
string
>
cur_coef
=
verifVector
.
at
(
i
);
for
(
int
j
=
0
;
j
<
4
;
j
++
)
{
result
[
"verificationVector"
][
i
][
j
]
=
cur_coef
.
at
(
j
);
result
[
"Verification Vector"
][
i
][
j
]
=
cur_coef
.
at
(
j
);
}
}
...
...
@@ -462,7 +459,6 @@ Json::Value SGXWalletServer::getVerificationVectorImpl(const string &_polyName,
result
[
"status"
]
=
_e
.
status
;
result
[
"errorMessage"
]
=
_e
.
errString
;
result
[
"verificationVector"
]
=
""
;
result
[
"Verification Vector"
]
=
""
;
}
return
result
;
...
...
@@ -499,7 +495,6 @@ Json::Value SGXWalletServer::getSecretShareImpl(const string &_polyName, const J
result
[
"secretShare"
]
=
s
;
}
catch
(
SGXException
&
_e
)
{
//cerr << " err str " << _e.errString << endl;
result
[
"status"
]
=
_e
.
status
;
result
[
"errorMessage"
]
=
_e
.
errString
;
result
[
"secretShare"
]
=
""
;
...
...
@@ -616,7 +611,6 @@ Json::Value SGXWalletServer::getBLSPublicKeyShareImpl(const string &_blsKeyName)
vector
<
string
>
public_key_vect
=
GetBLSPubKey
(
encryptedKeyHex_ptr
->
c_str
());
for
(
uint8_t
i
=
0
;
i
<
4
;
i
++
)
{
result
[
"blsPublicKeyShare"
][
i
]
=
public_key_vect
.
at
(
i
);
result
[
"BlsPublicKeyShare"
][
i
]
=
public_key_vect
.
at
(
i
);
}
}
HANDLE_SGX_EXCEPTION
(
result
)
...
...
@@ -639,7 +633,6 @@ Json::Value SGXWalletServer::complaintResponseImpl(const string &_polyName, int
result
[
"share*G2"
]
=
*
shareG2_ptr
;
result
[
"dhKey"
]
=
DHKey
;
result
[
"DHKey"
]
=
DHKey
;
}
HANDLE_SGX_EXCEPTION
(
result
)
...
...
@@ -666,14 +659,12 @@ Json::Value SGXWalletServer::isPolyExistsImpl(const string &_polyName) {
INIT_RESULT
(
result
)
result
[
"IsExist"
]
=
false
;
result
[
"exists"
]
=
false
;
try
{
std
::
shared_ptr
<
std
::
string
>
poly_str_ptr
=
LevelDB
::
getLevelDb
()
->
readString
(
_polyName
);
if
(
poly_str_ptr
!=
nullptr
)
{
result
[
"IsExist"
]
=
true
;
result
[
"exists"
]
=
true
;
}
}
HANDLE_SGX_EXCEPTION
(
result
)
...
...
jsonrpc/pre_downloaded/libjson-rpc-cpp.tar.gz
deleted
100644 → 0
View file @
d6fc4674
File deleted
scripts/build_deps.py
View file @
2e6e8f91
...
...
@@ -133,10 +133,10 @@ os.chdir(topDir)
assert
subprocess
.
call
([
"cp"
,
"sgx_tgmp.h"
,
TGMP_BUILD_DIR
+
"/include/sgx_tgmp.h"
])
==
0
os
.
chdir
(
SSL_DIR
)
print
"===>>> Downloading vanilla openssl source package"
print
(
"===>>> Downloading vanilla openssl source package"
)
os
.
chdir
(
SSL_SOURCE_DIR
)
assert
subprocess
.
call
([
"wget"
,
"https://www.openssl.org/source/openssl-1.1.1b.tar.gz"
])
==
0
print
"===>>> Making SSL project"
print
(
"===>>> Making SSL project"
)
os
.
chdir
(
SSL_MAKE_DIR
)
#assert subprocess.call(["make", "SGX_SDK=" + SGX_SDK_DIR_SSL, "all", "test"]) == 0
assert
subprocess
.
call
([
"make"
,
"SGX_SDK="
+
SGX_SDK_DIR_SSL
,
"all"
])
==
0
...
...
scripts/docker_test.py
View file @
2e6e8f91
...
...
@@ -31,7 +31,7 @@ import sys, os, subprocess, socket, time
os
.
chdir
(
".."
)
topDir
=
os
.
getcwd
()
+
"/sgxwallet"
print
(
"Starting container
b
test"
)
print
(
"Starting container test"
)
print
(
"Top directory is:"
+
topDir
)
SCRIPTS_DIR
=
topDir
+
"/scripts"
...
...
secure_enclave/DKGUtils.cpp
View file @
2e6e8f91
...
...
@@ -174,7 +174,7 @@ int calc_secret_share(const char* decrypted_coeffs, char * s_share,
}
libff
::
alt_bn128_Fr
secret_share
=
PolynomialValue
(
poly
,
libff
::
alt_bn128_Fr
(
ind
),
_t
);
string
cur_share
=
ConvertToString
(
secret_share
,
16
);
//stringFromFr(secret_share);
string
cur_share
=
ConvertToString
(
secret_share
,
16
);
int
n_zeroes
=
64
-
cur_share
.
size
();
cur_share
.
insert
(
0
,
n_zeroes
,
'0'
);
...
...
secure_enclave/secure_enclave.c
View file @
2e6e8f91
...
...
@@ -645,8 +645,6 @@ void trustedGetEncryptedSecretShare(int *errStatus, char *err_string, uint8_t *e
memset
(
pub_key_x
,
0
,
BUF_LEN
);
char
pub_key_y
[
BUF_LEN
];
memset
(
pub_key_y
,
0
,
BUF_LEN
);
//char *pub_key_x = (char *)calloc(1024, 1);
// char *pub_key_y = (char *)calloc(1024, 1);
uint32_t
enc_len
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment