Commit Graph

33 Commits

Author SHA1 Message Date
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
52c90d75fd feat: factored tx gasprice in fhe gasprice with min cap 2024-08-28 16:33:27 +02:00
Joseph-André Turk
ce34ad5fd6 feat: fhe-payment v0 2024-08-27 19:35:28 +02:00
Joseph-André Turk
cebe474755 chore: added missing await 2024-07-23 12:02:09 +02:00
Joseph-André Turk
59c7a0dbe5 test: parallel tests 2024-07-20 11:34:14 +02:00
Joseph-André Turk
84802f5497 test: updated test suite 2024-07-19 21:45:35 +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
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
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
Joseph-André Turk
c95296d2b6 fix: updated mocked mode to be compatible with new types 2024-03-05 16:31:16 +01:00
Clément 'birdy' Danjou
d42393ef19 fix: set as bigint all parameters in tests 2024-03-01 17:33:41 +01:00
Clément 'birdy' Danjou
502f15c45d feat: fix test with highest values 2024-03-01 17:05:32 +01:00
Clément 'birdy' Danjou
a798189340 fix: add bigint support for inputs 2024-03-01 13:50:03 +01:00
Clément 'birdy' Danjou
c75594016f fix: fix all tests 2024-02-29 16:27:31 +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
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
Clément 'birdy' Danjou
0a8b016341 tests() use signers to allow parallel execution 2023-10-16 12:08:38 +02: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
2773902230 Rework overload tests not to use trivial encryption 2023-09-18 10:00:40 +03:00
David
994cfb8c3b Merge branch 'main' into feature/test-codegen 2023-09-01 08:26:44 +03:00
David
9884ed36bb Address Petar's comments 2023-09-01 08:19:17 +03:00
David
d5d8c6221d Add binary operator tests in solidity
Operator changes:
- remove scalar div operator where scalar is left
- perform trivial encryption in scalar for sub/shl/shr operators
2023-08-31 09:57:45 +03:00