Commit Graph

52 Commits

Author SHA1 Message Date
PacificYield
655dc24f8c test: revert paths 2024-12-19 11:51:13 +01:00
jatZama
6319bee113 chore: moved FHEVMConfig.sol to examples folder 2024-12-03 12:21:45 +01:00
jatZama
3ba5c16820 chore: fixed FHEVMConfig imports 2024-12-03 12:00:47 +01:00
Joseph-André Turk
45e860d577 feat: updated TFHEExecutor to support new types
chore: eq-neq  bool support and bitwise scalar support

chore: overloads for fheEq and fheNe

fix: reverts onchain when rhs is 0 in fheDiv-fheRem

feat: added support for scalar and,or,xor

chore: cleanup codegen

feat: adds euint128 and euint256 types

chore: removes ebool fheRandBounded and adds manual tests

feat: adds new types for fheRand

feat: adds trivialEncrypt for ebytesXXX

feat: adds fheEq fheNe ifThenElse for new types

chore: rename asyncDecrypt() to initGateway()
2024-10-18 02:33:10 +02:00
Joseph-André Turk
b5c3234874 feat: set null FHE gas prices + remove Payment lib 2024-09-27 15:42:42 +02:00
Joseph-André Turk
fa5cb0edaf feat: set protocol addresses in dApp storage
chore: removed useless import
2024-09-10 15:01:43 +02:00
Joseph-André Turk
aa11c4e263 feat: added allowThis function and docs 2024-08-30 12:42:42 +02:00
Joseph-André Turk
0049e9df76 chore: move deposit function from TFHE to Payment library
chore fixed typo
2024-08-28 21:26:11 +02:00
Joseph-André Turk
ce34ad5fd6 feat: fhe-payment v0 2024-08-27 19:35:28 +02:00
Joseph-André Turk
84802f5497 test: updated test suite 2024-07-19 21:45:35 +02:00
Joseph-André Turk
e2fcc68bee test: updated manual tests 2024-07-19 16:14:17 +02:00
Joseph-André Turk
205f7e9fda fix: kmsverifier, solidity ver and silence transient warning
chore: updated version of package

chore: updated npmignore and deleted abstracts
2024-07-05 18:50:44 +02:00
Joseph-André Turk
2a92701338 feat: unit test for ebytes256 2024-06-27 18:41:13 +02:00
Petar Ivanov
68ea71ac70 feat: update with latest Solidity implementation
There are a number of tests that are still not rewritten with the new
APIs. The EncryptedERC20 and Rand examples do work.
2024-06-21 08:05:05 +03:00
Petar Ivanov
d1d41843c1 feat: add support for list-based inputs
More info: https://github.com/zama-ai/fhevm-go/pull/120

API changes will be described in the documentation.

More tests and examples are to be done in a future commit.
2024-06-18 12:45:12 +03:00
Petar Ivanov
94c43ce637 fix: BlindAuction and manual tests compilation 2024-06-12 11:53:32 +03:00
Petar Ivanov
7c19b2b426 feat: introduce the ACL and TFHEExecutor contracts
Purpose of this commit is to establish a baseline for a working fhEVM
using the ACL and TFHEExecutor contracts. More tests and a rewrite of
examples will come in a future commit.

The ACL contract manages ciphertext permissions, removing the need for
privileged storage and memory in fhEVM.

The TFHEExecutor contract checks ciphertext permissions in the ACL
contract. Only TFHEExecutor is allowed to call FHE precompiles in the
fhEVM.

Not all tests are passing at that point. Only the Rand and the
EncryptedERC20 ones work.

Tests don't use the KMS for decryption. Instead, we load the secret FHE
key and pass it to fhevmjs for decryption.

Update to fhevmjs 0.5.0-1 and tfhe-rs 0.6.1
2024-06-12 11:30:52 +03:00
Clément 'birdy' Danjou
025bb718d9 test: add test with multiple different param 2024-05-29 20:29:23 +02:00
Clément 'birdy' Danjou
dfbe567fc7 test: add test for array of euint4 2024-05-28 16:59:07 +02:00
Clément 'birdy' Danjou
ebe7e8f9cc test: fix array size 2024-05-27 15:52:05 +02:00
Clément 'birdy' Danjou
a46463c835 test: many fixes 2024-05-27 15:26:24 +02:00
Clément 'birdy' Danjou
eb3962e0d9 test: add tests for eq_array 2024-05-27 13:57:19 +02:00
Levent DEMIR
d98c02f61e chore: run prettier 2024-04-09 14:06:54 +02:00
Joseph-André Turk
4a8c703bdd fix: runned codegen 2024-04-09 13:59:49 +02:00
jat
461a0364e5 Merge branch 'main' into fix/euint160_nooracleservicechange 2024-04-09 13:32:13 +02:00
Levent DEMIR
53edf79780 feat: add select for eaddress 2024-04-05 16:15:17 +02:00
Clément 'birdy' Danjou
0f6dd3bb06 feat: add rotl and rotr 2024-04-04 15:27:07 +02:00
Levent DEMIR
e209353400 chore: add reencrypt 2024-04-03 16:49:06 +02:00
Levent DEMIR
9910e4da0f chore: use decrypt function name for eaddress also 2024-04-03 16:49:06 +02:00
Levent DEMIR
2d336dda3a chore: consistency for naming 2024-04-03 16:49:06 +02:00
Levent DEMIR
5ee434a663 feat(eaddress): add eaddress with (scalar) ne and (scalar) eq 2024-04-03 16:49:03 +02:00
Clément 'birdy' Danjou
faad51a6ea feat: introduce select in place of cmux 2024-03-08 11:31:53 +01:00
Clément 'birdy' Danjou
756e4e6dae refactor: remove deprecated optReq 2024-03-08 03:34:30 +01:00
Clément 'birdy' Danjou
9212a32e7c fix: fix typo and add test for cast ebool from euint4 and euint8 2024-03-01 13:53:47 +01:00
Clément 'birdy' Danjou
42de399ce9 feat: add generator for overloads and implement 4bits tests 2024-02-29 12:52:59 +01:00
Clément 'birdy' Danjou
b511101b1b feat: add 4bits 2024-02-28 14:03:52 +01:00
Clément 'birdy' Danjou
31dbeced23 fix: update Lib for new ebool type 2024-02-28 01:37:11 +01:00
Clément 'birdy' Danjou
6111441224 feat: add test for cast bool to 64bits 2024-02-09 10:58:23 +01:00
Clément 'birdy' Danjou
dc18f050e0 feat: add 64bits support 2024-02-09 10:04:55 +01:00
Joseph-André Turk
535b055fc8 Updated Solidity version to ^0.8.20 and OpenZeppelin Contracts to ^5.0.1
updated to ethermint node

updated node dev version

removed parallel flag from hardhat test

reput inband test for ci

setup evm version to Paris to avoid PUSH0 error and updated hardhat version

removed utils.ts.new file

synced package.json and package-lock.json

prettier
2024-01-09 11:05:38 +01:00
Joseph-André Turk
bc6649def1 made shl and shr more consistent with cleartext shift operators by restraining second operand to 8 bits
reset signers.ts

made shl and shr more consistent with cleartext shift operators by restraining second operand to 8 bits
2023-12-21 10:36:21 +01:00
David
edd0e11ecf Fix ebool not + tests for ebool ops 2023-11-27 11:44:22 +08:00
youben11
d35e512aa0 feat(lib): add support for the remainder operation 2023-10-10 14:58:18 +01:00
David
0b1eca810e Add stateful opt req test 2023-10-09 12:41:31 +08:00
David
ba72900223 Fix optimistic requires 2023-10-06 11:19:18 +08:00
David
e68a07fc4e Add explicit casting from ebool to euint16/euint32 2023-10-02 12:35:19 +08:00
Clément 'birdy' Danjou
cb1b8a27f1 fix() force 0.8.19 2023-09-25 16:37:13 +02:00
Clément 'birdy' Danjou
59f3480e3f fix() force 0.8.19 version for everything 2023-09-25 16:03:23 +02:00
David
3d133c6951 Implement operator overloading
following operators are supported:
+, - (unary and binary), *, &, |, ^, ~ (unary)
2023-09-21 10:16:47 +03:00
David
f9a7ee72bf Use fheLib precompile for all internal functions 2023-09-19 14:29:01 +03:00