Commit Graph

3826 Commits

Author SHA1 Message Date
zero
56cc2b1627 switch DAO auth enc to use ElGamalEncryptedNote from SDK 2024-01-23 11:00:29 +01:00
lunar-mining
63619cf061 outbound_session: downgrade host if we fail to connect 2024-01-23 10:39:17 +01:00
parazyd
c25cc17321 rpc/client: Trigger request-read-skip when receiving JSON notifications 2024-01-22 14:13:17 +01:00
aggstam
0317510dd7 sdk/crypto/diffie_hellman: remove unused import 2024-01-22 14:03:19 +02:00
zero
36a36b1728 kdf_sapling(): add comment about non-constant function call edge case. 2024-01-22 11:09:47 +01:00
zero
51440e732f sdk/crypto/diffie_hellman: remove .clear_cofactor() call which is useless with Pallas/Vesta curves in sapling_ka_agree(). 2024-01-22 10:52:33 +01:00
aggstam
613f3b3445 net/settings: use default value for hostlist if not present in args/config 2024-01-21 23:42:04 +02:00
zero
42acaf262f dao: rename proof/dao-(vote|propose)-burn.zk to proof/dao-\1-input.zk 2024-01-21 10:33:36 +01:00
zero
d5faf7296a dao: small simplification 2024-01-21 08:28:43 +01:00
lunar-mining
15d5f7e6d4 lilith: select last element from the whitelist, not random element
this reduces the chance of the same element being selected twice consecutively (would only happen consecutively whitelist has a length of 1)
2024-01-20 14:43:59 +01:00
lunar-mining
ef0d1c6f59 chore: update year on copyright text on new files 2024-01-20 13:46:50 +01:00
parazyd
d23f93c1cf validator/verification: Account for ZK proof verification cost when verifying tx fee 2024-01-20 13:42:09 +01:00
parazyd
2fdcc78b17 validator/fees: Add gas use calculator for ZK circuits 2024-01-20 13:42:09 +01:00
parazyd
f2ef873e32 validator: Add TODO note about RAM usage for circuit VKs 2024-01-20 13:42:09 +01:00
parazyd
bf43e8f77d validator: Account for Schnorr signature verification for fees in txs 2024-01-20 13:42:09 +01:00
parazyd
bb5b015a00 tx: Improve log messages 2024-01-20 13:42:09 +01:00
parazyd
317e443b7d validator/verification: Fix tx fee call index 2024-01-20 13:42:09 +01:00
zero
7e1795b6e8 dao: apply same verifiable encryption for other outputs, to the DAO change output as well. 2024-01-20 13:42:09 +01:00
parazyd
5fed38cb8f runtime/import/merkle: Account for gas costs in merkle_add() 2024-01-20 13:42:09 +01:00
zero
e4af7ec436 spec: DAO::exec() 2024-01-20 13:42:09 +01:00
parazyd
fe28c86fa3 runtime/import/db: Apply gas subtraction to remaining db.rs functions 2024-01-18 19:31:00 +01:00
parazyd
8a10b292c3 runtime/import/db: Implement host gas cost for zkas_db_set()
This is unfinished, as we should properly account for the ZkBinary
rather than just charging a fixed cost for every literal/witness/opcode.
2024-01-18 19:31:00 +01:00
zero
929166b412 spec: add dao::vote() 2024-01-18 19:31:00 +01:00
parazyd
ab3a55c6fe runtime/import: Subtract gas fee in get_slot() 2024-01-18 19:31:00 +01:00
parazyd
4f97ed6989 runtime: Begin implementation of host function gas costs 2024-01-18 19:31:00 +01:00
aggstam
1b19b54099 contract/money/error: added missing error code 2024-01-18 19:31:00 +01:00
aggstam
eb2dc41dd7 sdk/util: added block height retrieval functions and use them at appropriate places 2024-01-18 19:31:00 +01:00
parazyd
703666623f sdk: Apply relevant changes related to 3240221614 2024-01-18 19:31:00 +01:00
parazyd
0d67df0adb runtime/import: General function cleanup and use darkfi_sdk error codes
The general idea is that functional stuff inside wasm ends at 32-bits
and anything above is considered an error as per darkfi_sdk::error.
2024-01-18 19:31:00 +01:00
parazyd
e16e5ceed9 runtime/import: Enable pages assertion in put_object_bytes() 2024-01-18 19:31:00 +01:00
parazyd
5b104ef6a5 runtime: Minor comment cleanups and log verbosity. 2024-01-18 19:31:00 +01:00
aggstam
3d36a1b382 contract/money/Cargo.toml: added missing darkfi validator feature 2024-01-18 19:31:00 +01:00
parazyd
d3fae80d5a chore: Update copyright year in license headers 2024-01-18 19:30:56 +01:00
zero
639b4e89df test-harness: s/slot_to_day/blockheight_to_day/ 2024-01-18 19:30:31 +01:00
zero
4cd92a8189 dao/spec: rename all mentions of slot to blockheight 2024-01-18 19:30:31 +01:00
zero
6b9ea039d7 spec: add money coin, current day, pedersen commits 2024-01-18 19:30:31 +01:00
zero
be4898e0c7 Revert "sdk/crypto: use the same generator for pedersen_commit_base() and pedersen_commit_u64()"
This reverts commit f9a8b41657.
2024-01-18 19:30:31 +01:00
zero
e46c6dbb6b sdk/crypto: use the same generator for pedersen_commit_base() and pedersen_commit_u64() 2024-01-18 19:30:31 +01:00
parazyd
8087222a86 validator/verification: Allow fee call at any place in the transaction 2024-01-18 19:30:31 +01:00
parazyd
8e5e997426 contract/test-harness: Include Money::FeeV1 zk circuit for cached vks 2024-01-18 19:30:31 +01:00
parazyd
d7ef5c25e1 contract/money/integration: Assert expected PoW reward 2024-01-18 19:30:31 +01:00
parazyd
5d8e4a5451 Revert "contract: Move POW_REWARD constant to money contract"
This reverts commit 64c80377a2.

The constant is used for PoS rewards rather than PoW.
For PoW we can use the `expected_reward()` function.
2024-01-18 19:30:31 +01:00
parazyd
ab044b02fd contract/test-harness: Update VKS and PKS checksums 2024-01-18 19:30:31 +01:00
parazyd
d42ba0d511 contract: Move POW_REWARD constant to money contract 2024-01-18 19:30:31 +01:00
zero
ce5a92ff21 spec: add money contract with money transfer 2024-01-18 19:30:31 +01:00
zero
9fd2e2e467 make DAO nullifiers the same as money, otherwise we can't detect whether the coins we're using were already spent or not. Having access to a set non-membership merkle tree here would fix this. 2024-01-18 19:30:31 +01:00
Dastan-glitch
77fb9d4321 src/event_graph: aquire locks outside loops 2024-01-18 19:30:31 +01:00
zero
111c803085 spec: DAO::mint() and DAO::propose() 2024-01-18 19:30:31 +01:00
Dastan-glitch
2fe38d699c remove unused import 2024-01-18 19:30:31 +01:00
Dastan-glitch
2074625d1d src/event_graph: request and reply multiple events 2024-01-18 19:30:31 +01:00