Commit graph

200 commits

Author SHA1 Message Date
Fabian Schuh
c0db16bf3b Fix erros in unittest 2018-04-13 11:28:51 +02:00
Nathan Hourt
13d98e2cad Add OpenSSL 1.1.0 support
These changes should add support for openssl 1.1.0 while maintaining
compatibility with 1.0.2
2018-04-12 14:58:13 +02:00
Peter Conrad
a91822616e Added max_depth to remaining variant conversions 2018-03-18 10:49:44 +01:00
Peter Conrad
81c8d89341 Added max_depth parameter to variant conversions 2018-03-13 22:00:18 +01:00
Alexey Frolov
1ae7f6bb02 FIXES:
- 'bloom_test_1': infinite loop if file not exists
- 'websocket_test': uncatched exceptions
- 'fc_crypto*' test_stream<>: uninitialized variable (hash)
- 'blowfish_chain_test': using memory after allocated heap
- memcmp: passing nullptr, when non-null expected
- undefined behavior: return value from function
- static_variant: member alignment - performance issue on 64-bit arch
- memory leak: fc::thread cleanup in asio thread
- warning: signed-unsigned comparison
- warning: unused variables
2018-02-05 12:19:06 +03:00
Alexey Frolov
5138c58e09 sanitize, remove warnings 2018-02-02 15:29:46 +03:00
Vikram Rajkumar
cb627980a5 Remove unused CyoEncode and Base32
5c466150ec
2017-06-04 18:13:13 -05:00
Vikram Rajkumar
a30647d32e Revert "Add OpenSSL 1.1.0 support"
This reverts commit fee06a4c75.

Max compatible Boost version is not compatible with OpenSSL 1.1.0
2017-06-04 17:44:25 -05:00
Vikram Rajkumar
680731ef1b Remove equihash 2017-06-01 16:11:35 -05:00
Nathan Hourt
fee06a4c75 Add OpenSSL 1.1.0 support
These changes should add support for openssl 1.1.0 while maintaining
compatibility with 1.0.2
2017-04-25 15:50:56 -05:00
theoreticalbts
fe8710a7aa Implement test_canonical_order and test_intermediate_zeros for equihash 2016-12-13 15:27:44 -05:00
Michael Vandeberg
50dbc2b139 Add equihash 2016-11-16 11:23:33 -05:00
theoreticalbts
636d4530e3 sha256: Add method to return approx log as double 2016-10-04 14:19:59 -04:00
theoreticalbts
585cea9472 sha256: Add inverse log and testing 2016-10-04 14:19:59 -04:00
theoreticalbts
f3e69d81a9 sha256: Implement and test clz(), approx_log_32() 2016-08-11 12:10:14 -04:00
arhag
66d4b0841d Changes to fc to get MinGW cross-compilation working 2016-05-22 01:33:19 -04:00
Daniel Larimer
eaa763aff1 adding canonical flag 2016-03-11 12:33:33 -05:00
Daniel Larimer
7840ef16e9 adding rshift 2016-02-04 16:32:13 -05:00
Michael Vandeberg
d74eee8110 Implements deserialize for extended_public_key and extended_private_key.
Implementation needed by cryptonomex/graphene#500
2016-01-07 17:14:16 -05:00
Eric Frias
2b2dfc62fc Win32 compile fixes (replace nonstandard runtime-sized auto arrays with alloca) 2015-10-05 12:09:35 -04:00
Daniel Larimer
7e32df4978 Merge pull request #46 from pmconrad/blinding
Blinding a la Oleg Andreev
2015-10-01 09:55:28 -04:00
Eric Frias
18ed468c6f Win32 compile fix (allocate buffer on heap instead of stack, probably a good
idea anyway given fc task stack sizes)
2015-08-17 12:38:54 -04:00
Peter Conrad
e3fc463efc Initialize openssl properly, use ssl wrapper types instead of ..._free, unify DH_check 2015-07-30 17:43:43 +02:00
Peter Conrad
5377b45d97 Fixed signedness, simplified word-shift 2015-07-30 14:58:35 +02:00
Peter Conrad
d67c18f6c3 Fixed shift in hashes + more tests 2015-07-29 23:22:34 +02:00
Peter Conrad
ef92e68146 Created + added test vectors, various fixes - working! 2015-07-29 21:00:08 +02:00
Peter Conrad
622de81402 Added tests, fixes (sig format, canonicalization) 2015-07-29 21:00:08 +02:00
Peter Conrad
56e98e136a Initial blinding implementation, untested 2015-07-29 21:00:08 +02:00
Peter Conrad
5ecdcba4b6 Some refactoring 2015-07-29 21:00:08 +02:00
Peter Conrad
0f67ca751e Implemented extended keys 2015-07-29 20:59:32 +02:00
Peter Conrad
0878e7f8f8 Tested + fixed more cases 2015-07-27 22:22:20 +02:00
Peter Conrad
fe0ec4a42d Added FC_ASSERT to prevent buffer overflow 2015-07-27 21:23:15 +02:00
Peter Conrad
0e681dfb1c Added tests for base_n encodings, fixed base32 + base36 2015-07-27 21:23:15 +02:00
Daniel Larimer
d76a15ec89 adding child key derivation for ecc keys 2015-07-23 18:45:35 -04:00
Vikram Rajkumar
943fe5150e Remove unused salsa20
See https://github.com/bitshares/bitshares/issues/1089
2015-06-23 15:43:36 -04:00
Vikram Rajkumar
43f3aff577 Remove unused scrypt-jane
See https://github.com/bitshares/bitshares/issues/1016
2015-06-23 15:34:28 -04:00
Eric Frias
10e747409c Fix FC win32 compiling (secp256k1 related errors) 2015-06-15 14:38:33 -04:00
Daniel Larimer
8087aa66d0 removing AGPL code 2015-06-11 09:10:12 -04:00
Daniel Larimer
a824aa04a9 Mapping blinding crypto to fc ecc api 2015-06-10 18:34:19 -04:00
Eric Frias
043ead5579 Fix compile with microsoft c++ which still doesn't support noexcept 2015-05-22 16:15:00 -04:00
Peter Conrad
d9f6b7a526 Rebase + upgrade to latest libsecp256k1 API 2015-05-07 15:59:21 +02:00
Peter Conrad
a164a55c86 Fixed move constructor + assignment 2015-05-07 14:51:03 +02:00
Peter Conrad
5782fd42af Added missing constructors + pubkey::valid 2015-05-07 14:51:03 +02:00
Peter Conrad
05dee8669f Much refactoring
Fixed Move semantics in openssl impl
Use in-place construction for secp256k1
Swapped implementations in mixed - sign with libsecp256k1, verify with openssl
2015-05-07 14:51:03 +02:00
Peter Conrad
10897adf1e Hopefully this is more thread-safe 2015-05-07 14:51:03 +02:00
Peter Conrad
d69e67c032 Work around too deterministic nonce 2015-05-07 14:51:03 +02:00
Peter Conrad
1de9a3ba87 Bugfix 2015-05-07 14:51:03 +02:00
Peter Conrad
abab7617c8 Minor fixes 2015-05-07 14:51:02 +02:00
Peter Conrad
2f383f078f More refactoring 2015-05-07 14:51:02 +02:00
Peter Conrad
bab3864437 Added mixed implementation, fixed interop test script 2015-05-07 14:51:02 +02:00
Peter Conrad
55f9cf5e16 Added mixed implementation, fixed interop test script 2015-05-07 14:51:02 +02:00
Peter Conrad
414617d8e3 Refactoring, step 2 2015-05-07 14:51:02 +02:00
Peter Conrad
55c5773a46 Started refactoring 2015-05-07 14:51:02 +02:00
Peter Conrad
7b15098f3a Woot! 2015-05-07 14:49:52 +02:00
Peter Conrad
34af5d98ec Intermediate version 2015-05-07 14:49:52 +02:00
Peter Conrad
f17444d90b Added ECC_IMPL switch + interop test 2015-05-07 14:48:00 +02:00
Peter Conrad
8bcaa01541 Mark internal helper functions as static 2015-05-07 14:48:00 +02:00
Nathan Hourt
4194a609c2 Allow hashing of uint128 2015-03-06 16:41:52 -05:00
Vikram Rajkumar
ee370dd5a8 Define sha256::hash( sha256 ) 2015-02-11 18:58:19 -05:00
theoretical
0642eb63d3 Throw more appropriate exception type in from_base58 2015-01-21 14:57:04 -05:00
Vikram Rajkumar
36baae683e Minor spelling fix 2014-12-11 19:16:02 -05:00
Daniel Larimer
a4a90fac05 Update to elliptic curve signature verification 2014-12-10 22:43:37 -08:00
Eric Frias
2f066e4adf Fix a crash in fc::process when not capturing all three stdin/out/err
Quiet a few 64-bit warnings.
2014-09-18 11:17:41 -04:00
Nathan
55e7a073cf Fix build error in salsa20.cpp 2014-09-09 16:09:49 -04:00
Daniel Larimer
6e31ffd963 Merge branch 'master' of https://github.com/InvictusInnovations/fc 2014-08-01 17:21:24 -04:00
PaulEU
eae493a8c1 Remove unnecessary code from init_openssl after update new OpenSSL package. 2014-07-29 23:44:47 +02:00
Daniel Larimer
3ccbe26dd5 adding aes exception 2014-07-29 13:54:50 -04:00
PaulEU
4890351b34 Added OpenSSL configuration file path. (qt_wallet issue #10 Some clients on Windows 7 quit/crash on start) 2014-07-23 00:18:09 +02:00
grzegorzs
06fe9e0303 [GS] Fix types u_int32_t to uint32_t etc. - continued 2014-07-15 14:20:42 +02:00
Vikram Rajkumar
e442b29f6e Fix scrypt 2014-07-14 13:40:33 -04:00
Eric Frias
a034239313 Add missing include 2014-07-07 12:36:34 -04:00
Eric Frias
62ea4ae9c3 Add mutexes to make OpenSSL thread safe 2014-07-07 12:22:01 -04:00
Eric Frias
560b107e58 Fix signed/unsigned warnings 2014-06-26 15:51:01 -04:00
Eric Frias
862e7bb5d3 fix a few 64-bit to 32-bit conversion warnings 2014-06-26 15:50:40 -04:00
Eric Frias
f01d25788e Fix 32-bit error in uint128 to bigint conversion, move bswap_64 into its own header file 2014-06-11 17:32:59 -04:00
Daniel Larimer
454da57a32 adding base58 helper 2014-06-11 17:28:47 -04:00
Daniel Larimer
0c64d208d9 adding ntp support to fc 2014-06-11 15:17:28 -04:00
PaulEU
7b2361518c Use _putenv instead of putenv because on some Windows machines putenv doesn't work properly. 2014-06-05 10:00:50 +02:00
Daniel Larimer
73dd2d68ea fix for mac 2014-06-03 11:16:29 -04:00
vogel76
57e1d60257 [BW]: [Fix] Looks like OpenSSL_config argument doesn't refer to configuration file path, which can be passed only through environment variable unfortunetly. 2014-06-03 17:04:34 +02:00
Eric Frias
2220920126 Fix signed bigint conversion (probably never used) 2014-06-02 17:19:36 -04:00
Eric Frias
2251d0f241 Fix bigint on conversions to and from 64-bit integers on 32-bit platforms
Fixes BitShares/bitshares_toolkit#150
2014-06-02 13:32:42 -04:00
vogel76
04f07aa429 [BW]: [Fix] Eliminated OpenSSL initialization from CRT init time (which caused random problems on windows7 machines leading the application to silent crash). Right now it is done at first use of fc parts using it. Also added method to setup OpenSSL configuration path to custom one (to avoid using path compiled into OpenSSL at configuration & build time). 2014-06-02 17:34:04 +02:00
dnotestein
54c66bbb86 Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
Conflicts:
	src/crypto/aes.cpp
2014-05-27 09:44:54 -04:00
dnotestein
d1c3637a9f Fix variable name (input parameter to function is length of cipher text, not decoded plain text) and function comments (looks like it was some copy/paste error). 2014-05-27 09:40:23 -04:00
Vikram Rajkumar
6b455ab850 Fix typos 2014-05-19 02:52:21 -04:00
Eric Frias
2837892ec0 Upgrade to new version of city_hash library. This version has performance improvements, plus implements a variant with 32-bit output which will quiet some compiler warnings on win32. 2014-05-14 17:11:36 -04:00
Eric Frias
3d02e3bc00 Wrap OpenSSL's random number generator in fc clothing 2014-04-02 08:54:13 -04:00
dnotestein
10127a854c Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix
Conflicts:
	src/crypto/elliptic.cpp
2014-03-30 18:32:20 -04:00
dnotestein
f09c91f878 added hash64 function that uses sha256 to replace city_hash in blockchain and message protocol-related hashing 2014-03-30 14:16:33 -04:00
Daniel Larimer
5f9dfa9a42 update http code 2014-03-27 19:53:40 -04:00
Daniel Larimer
987568e31b update apis 2014-03-27 01:09:08 -04:00
vogel76
163be8a6d0 [BW]: [NIP] Added public_key::to_base58 text conversion to simplify contact display_name generation at bts side. 2014-03-03 11:31:08 +01:00
Daniel Larimer
4b2d221c05 fix ecc point seralization 2014-02-27 23:35:24 -05:00
BrownBear
46bfcfe74d added missing files: romix.[hc]pp 2014-02-27 12:37:23 +01:00
BrownBear2
49ff83922b added romix kdf and cfb for aes 2014-02-26 12:05:17 +01:00
Tzadik Vanderhoof
0761d32d01 safer sha256 binary constructor 2014-02-24 02:08:48 -05:00
Tzadik Vanderhoof
57769e4df9 BSX-21 Import Bitcoin Private Key from String 2014-02-24 00:47:00 -05:00
Daniel Larimer
c7baf276a1 scrypt code does not compile with clang 2014-02-21 15:10:34 -05:00
batmaninpink
1b8b4da925 fix scrypt-jane OS X compile 2014-02-21 20:57:04 +01:00