Граф коммитов

120 Коммитов

Автор SHA1 Сообщение Дата
Julien Maffre a8d5351d6a
Small bank balance as a Read handler (#421) 2019-10-09 10:59:04 +01:00
Amaury Chamayou e0a031c0c0
Merge node and mgmt frontends (#402) 2019-10-01 16:17:14 +01:00
olgavrou 72c5d4aa4f
Consensus naming (#306) 2019-08-15 17:52:43 +01:00
Julien Maffre 612303c786
Remove CircleCI and rename vsts to azure-pipelines (#301) 2019-08-12 11:10:05 +01:00
olgavrou 3843ff0ccf
Lua demo app (#287) 2019-08-08 15:21:55 +01:00
Eddy Ashton c5de34f9ad Separate standard from CCF error codes, allow app extensions (#267) 2019-07-21 16:15:28 +01:00
Eddy Ashton 0f3fa033d2
Support multiple crypto curves (#243)
* Sketch CurveImpl enum, replace macro definitions with templates

* Replace use of MD_TYPE and HASH macros with templates

* Replace HASH macro

* WIP

* Remove remaining compile-disabled code from keypair.h

* Expose CurveImpl, correct 256k1_bitcoin params

* Test all supported curves

* Add test that wrong curve fails to validate

* verify(vector, vector) should delegate, not reimplement

* Corrupt more, to ensure we affect content not padding

* Rename CURVE_CHOICE options to be LEDGER_CURVE_CHOICE

* LEDGER_CURVE_CHOICE determines default_curve_choice

* Proof-of-concept - factories for virtual implementation

* Virtualise PublicKey

* Re-enable other tests

* Remove templated CurveParameters

* Add labels, test for wrong curve, wrong impl

* Correct comment

* Delegate sign(CBuffer), reducing code duplication

* Remove TODO enum

* tls_bench compares curves for signing

* Extract make_contents

* tls_bench does comparison of all supported curves

* Tidy

* Temporary verbose logging of ecp group ID

* Produce standard (non-recoverable) signatures by default, for compatibility

* Fix curve logging, add tests of key transfer across implementations

* Verify with non-recoverable sigs too

* Log inconsistent failing cases

* Correct implementation substitutability test

* Normalize secp256k1 signatures - they may  have come from mbedtls

* Re-order picobench results for readability

* Add some secp256k1 link dependencies

* Unprotect constructors - there are legitimate uses for direct construction

* Verifier curve type is parsed from cert

* history_bench builds

* Reminder TODO comment

* frontend_test builds and passes

* Clients compile

* genesisgenerator compiles

* membervoting_test builds

* Fix sign_hash, sign/verify ack data normally

* Remove unneeded CurveParams entirely

Detect PublicKey type

Simplify construction to minimum

* Correct test with new API

* verify_hash via publickey, test sign_hash and verify_hash

* Include tests

* Update to latest signature

* Ditto

* Update function signatures for people with raw data

* Fix history calls

* When constructing from explicit key, don't pass curve too

* API updates

* Fix nodestate

* inline

* EVERYTHING BUILDS

* Tidy cmake link args

* Remove unnecessary direct use of mbedtls_ecdsa_*

* Remove uint8_t restriction in sig_size

* tls_bench actually compares relevant hash operations

* bitcoin preference doesn't need to be a macro

* Standardise use of use_bitcoin_impl

* clang-format

* Test now uses distinct manual hash operation

CHECK rather than REQUIRE

* Rename LEDGER_curve to SERVICE_IDENTITY_curve

* use fmtlib

* Let mbedtls determine message digest size/function

* Add details to all thrown errors

* Remove parameter packs, document use_bitcoin_impl

* Name magic constant, extract parse_secp256k_bc
2019-07-12 11:12:05 +01:00
Amaury Chamayou e3b1f0140e Remove warmup cooldown (#246) 2019-07-12 10:32:20 +01:00
Eddy Ashton 395e1b05cc
Remove jsonrpc::success() (#164)
* No success without an argument

* Make it clear that JoinNetwork gets an async response

* return json::success(true);

* Expect truth

* luA luI

* Make logging.lua consistent with logging.cpp

* KO OK
2019-06-17 09:30:56 +01:00
Eddy Ashton 3ca4304db1
Choose iterations of signed small bank perf tests depending on curve (#160)
* Separate lines

* Separate files for 2k and 50k signed smallbank transctions

* Choose iterations by curve
2019-06-14 13:10:57 +01:00
Julien Maffre 6be013c0e5
Increase tx count for performance test with signature (#155) 2019-06-13 10:33:34 +01:00
Julien Maffre 85f20eeb91 Support forwarding performance tests (#150)
* Remove unused coverage CI step

* Add new e2e forwarding performance test

* Remove verification file

* Re-enable storage of tx-times and metrics data + copy all clients csv
files back

* Disable signatures for forwarding test for now

* Actually push performance data

* Only push client* csv files

* Re-enable compress time and metrics

* Indentation of CI yml file

* Some more fixups

* Added fast-start for clients and fixups

* Cleanup

* Change comment

* Remove fast-start option as join protocol is now synchronous
2019-06-12 17:59:18 +01:00
Julien Maffre da51ea350e
Failing performance test fix (#126) 2019-06-06 16:02:39 +01:00
Amaury Chamayou b84f28c601
Clean up CI (#102) 2019-05-31 12:58:03 +01:00
Amaury Chamayou e2670448fb Revert "Split off performance build and use secp256k1 for client sigs benchmark"
This reverts commit bbd0c7faf1.
2019-05-30 14:05:44 +01:00
Amaury Chamayou bbd0c7faf1 Split off performance build and use secp256k1 for client sigs benchmark 2019-05-29 15:28:12 +01:00
olgavrou 3d0eb8fc36
Metrics (#79) 2019-05-21 09:27:22 +01:00
Eddy Ashton 9692fe4f8a
Fix smallbank sigs (#14)
* Don't mask exceptional failures

* Print account balances in verify-pastable format

* Update small_bank_short verification target
2019-05-02 12:24:24 +01:00
Amaury Chamayou 608b036037 Add copyright headers, remove hardcoded subscription 2019-04-30 11:05:13 +01:00
Amaury Chamayou 7cd7bde6e9 Add smallbank performance sample to CCF repo 2019-04-30 10:14:06 +01:00