@inco/lightning 0.10.0-devnet-2 → 0.11.0-testnet-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/manifest.yaml +23 -0
- package/package.json +1 -1
- package/src/IncoLightning.sol +1 -3
- package/src/IncoVerifier.sol +1 -3
- package/src/Lib.alphanet.sol +19 -0
- package/src/Lib.demonet.sol +19 -0
- package/src/Lib.devnet.sol +19 -0
- package/src/Lib.sol +20 -1
- package/src/Lib.template.sol +19 -0
- package/src/Lib.testnet.sol +20 -1
- package/src/Types.sol +0 -1
- package/src/libs/incoLightning_alphanet_v0_297966649.sol +19 -0
- package/src/libs/incoLightning_alphanet_v1_725458969.sol +19 -0
- package/src/libs/incoLightning_alphanet_v2_976644394.sol +19 -0
- package/src/libs/incoLightning_demonet_v0_863421733.sol +19 -0
- package/src/libs/incoLightning_demonet_v2_467437523.sol +19 -0
- package/src/libs/incoLightning_devnet_v0_340846814.sol +19 -0
- package/src/libs/incoLightning_devnet_v10_266391127.sol +19 -0
- package/src/libs/incoLightning_devnet_v1_904635675.sol +19 -0
- package/src/libs/incoLightning_devnet_v2_295237520.sol +19 -0
- package/src/libs/incoLightning_devnet_v3_976859633.sol +19 -0
- package/src/libs/incoLightning_devnet_v4_409204766.sol +19 -0
- package/src/libs/incoLightning_devnet_v5_203964628.sol +19 -0
- package/src/libs/incoLightning_devnet_v6_281949651.sol +19 -0
- package/src/libs/incoLightning_devnet_v7_24560427.sol +19 -0
- package/src/libs/incoLightning_devnet_v8_985328058.sol +19 -0
- package/src/libs/incoLightning_devnet_v9_269218568.sol +19 -0
- package/src/libs/incoLightning_testnet_v0_183408998.sol +19 -0
- package/src/libs/incoLightning_testnet_v11_340321378.sol +1242 -0
- package/src/libs/incoLightning_testnet_v2_889158349.sol +19 -0
- package/src/lightning-parts/EncryptedOperations.sol +2 -9
- package/src/lightning-parts/primitives/EListHandleMetadata.sol +6 -6
- package/src/lightning-parts/primitives/HandleGeneration.sol +3 -10
- package/src/lightning-parts/primitives/HandleMetadata.sol +10 -10
- package/src/lightning-parts/test/HandleMetadata.t.sol +22 -40
- package/src/test/IncoTest.sol +2 -3
- package/src/test/TestLib.t.sol +65 -0
- package/src/version/IncoLightningConfig.sol +1 -1
package/manifest.yaml
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
|
+
incoLightning_testnet_v11_340321378:
|
|
2
|
+
executor:
|
|
3
|
+
name: incoLightning_testnet_v11_340321378
|
|
4
|
+
majorVersion: 11
|
|
5
|
+
deployer: "0x8202D2D747784Cb7D48868E44C42C4bf162a70BC"
|
|
6
|
+
owner: "0x8E0860785c9B9c99B17DCd8c1da89548dA140299"
|
|
7
|
+
pepper: testnet
|
|
8
|
+
executorAddress: "0x3cC345Eaa5bEe457AF9C0C3183335a67b62b0066"
|
|
9
|
+
salt: "0x8202d2d747784cb7d48868e44c42c4bf162a70bc00af1f4ec3705e21d9e36c62"
|
|
10
|
+
deployments:
|
|
11
|
+
- name: incoLightning_11_0_0__340321378
|
|
12
|
+
chainId: "84532"
|
|
13
|
+
chainName: Base Sepolia
|
|
14
|
+
version:
|
|
15
|
+
major: 11
|
|
16
|
+
minor: 0
|
|
17
|
+
patch: 0
|
|
18
|
+
shortSalt: "340321378"
|
|
19
|
+
blockNumber: "40623608"
|
|
20
|
+
deployDate: 2026-04-24T07:25:07.657Z
|
|
21
|
+
commit: v0.10.0-devnet-2-12-gfac57f53-dirty
|
|
22
|
+
active: true
|
|
23
|
+
includesPreviewFeatures: false
|
|
1
24
|
incoLightning_devnet_v10_266391127:
|
|
2
25
|
executor:
|
|
3
26
|
name: incoLightning_devnet_v10_266391127
|
package/package.json
CHANGED
package/src/IncoLightning.sol
CHANGED
|
@@ -35,9 +35,7 @@ contract IncoLightning is IIncoLightning, TrivialEncryption, EList, UUPSUpgradea
|
|
|
35
35
|
|
|
36
36
|
/// @notice Authorizes contract upgrades (restricted to owner only)
|
|
37
37
|
/// @dev Required by UUPSUpgradeable. Only the contract owner can authorize upgrades.
|
|
38
|
-
function _authorizeUpgrade(address) internal view override {
|
|
39
|
-
require(msg.sender == owner());
|
|
40
|
-
}
|
|
38
|
+
function _authorizeUpgrade(address) internal view override onlyOwner {}
|
|
41
39
|
|
|
42
40
|
/// @notice Initializes the proxy with an owner address
|
|
43
41
|
/// @dev Must be called immediately after proxy deployment. Can only be called once.
|
package/src/IncoVerifier.sol
CHANGED
|
@@ -21,9 +21,7 @@ contract IncoVerifier is IIncoVerifier, AdvancedAccessControl, DecryptionAtteste
|
|
|
21
21
|
|
|
22
22
|
/// @notice Authorizes contract upgrades (restricted to owner only)
|
|
23
23
|
/// @dev Required by UUPSUpgradeable. Only the contract owner can authorize upgrades.
|
|
24
|
-
function _authorizeUpgrade(address) internal view override {
|
|
25
|
-
require(msg.sender == owner());
|
|
26
|
-
}
|
|
24
|
+
function _authorizeUpgrade(address) internal view override onlyOwner {}
|
|
27
25
|
|
|
28
26
|
/// @notice Initializes the proxy with an owner address and EIP712 parameters
|
|
29
27
|
/// @dev Must be called immediately after proxy deployment. Can only be called once.
|
package/src/Lib.alphanet.sol
CHANGED
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
package/src/Lib.demonet.sol
CHANGED
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
package/src/Lib.devnet.sol
CHANGED
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
package/src/Lib.sol
CHANGED
|
@@ -10,7 +10,7 @@ import { ebool, euint256, eaddress, ETypes, elist, IndexOutOfRange, InvalidRange
|
|
|
10
10
|
import { asBool } from "./shared/TypeUtils.sol";
|
|
11
11
|
import { DecryptionAttestation, ElementAttestationWithProof } from "./lightning-parts/DecryptionAttester.types.sol";
|
|
12
12
|
|
|
13
|
-
IncoLightning constant inco = IncoLightning(payable(
|
|
13
|
+
IncoLightning constant inco = IncoLightning(payable(0x3cC345Eaa5bEe457AF9C0C3183335a67b62b0066));
|
|
14
14
|
address constant deployedBy = 0x8202D2D747784Cb7D48868E44C42C4bf162a70BC;
|
|
15
15
|
|
|
16
16
|
/// @notice Returns the ETypes enum value encoded in a handle
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
package/src/Lib.template.sol
CHANGED
|
@@ -814,6 +814,13 @@ library e {
|
|
|
814
814
|
inco.allow(eaddress.unwrap(a), to);
|
|
815
815
|
}
|
|
816
816
|
|
|
817
|
+
/// @notice Allows an address to access an elist
|
|
818
|
+
/// @param a The elist
|
|
819
|
+
/// @param to The address to allow
|
|
820
|
+
function allow(elist a, address to) internal {
|
|
821
|
+
inco.allow(elist.unwrap(a), to);
|
|
822
|
+
}
|
|
823
|
+
|
|
817
824
|
/// @notice Reveals an encrypted uint256
|
|
818
825
|
/// @param a The encrypted uint256
|
|
819
826
|
function reveal(euint256 a) internal {
|
|
@@ -832,6 +839,12 @@ library e {
|
|
|
832
839
|
inco.reveal(eaddress.unwrap(a));
|
|
833
840
|
}
|
|
834
841
|
|
|
842
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
843
|
+
/// @param a The elist
|
|
844
|
+
function reveal(elist a) internal {
|
|
845
|
+
inco.reveal(elist.unwrap(a));
|
|
846
|
+
}
|
|
847
|
+
|
|
835
848
|
/// @notice Verifies a decryption attestation for a euint256
|
|
836
849
|
/// @param handle The encrypted handle
|
|
837
850
|
/// @param value The claimed decrypted value
|
|
@@ -872,6 +885,12 @@ library e {
|
|
|
872
885
|
allow(a, address(this));
|
|
873
886
|
}
|
|
874
887
|
|
|
888
|
+
/// @notice Allows this contract to access an elist
|
|
889
|
+
/// @param a The elist
|
|
890
|
+
function allowThis(elist a) internal {
|
|
891
|
+
allow(a, address(this));
|
|
892
|
+
}
|
|
893
|
+
|
|
875
894
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
876
895
|
/// @param user The address to check
|
|
877
896
|
/// @param a The encrypted uint256
|
package/src/Lib.testnet.sol
CHANGED
|
@@ -10,7 +10,7 @@ import { ebool, euint256, eaddress, ETypes, elist, IndexOutOfRange, InvalidRange
|
|
|
10
10
|
import { asBool } from "./shared/TypeUtils.sol";
|
|
11
11
|
import { DecryptionAttestation, ElementAttestationWithProof } from "./lightning-parts/DecryptionAttester.types.sol";
|
|
12
12
|
|
|
13
|
-
IncoLightning constant inco = IncoLightning(payable(
|
|
13
|
+
IncoLightning constant inco = IncoLightning(payable(0x3cC345Eaa5bEe457AF9C0C3183335a67b62b0066));
|
|
14
14
|
address constant deployedBy = 0x8202D2D747784Cb7D48868E44C42C4bf162a70BC;
|
|
15
15
|
|
|
16
16
|
/// @notice Returns the ETypes enum value encoded in a handle
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
package/src/Types.sol
CHANGED
|
@@ -284,7 +284,6 @@ uint8 constant HANDLE_INDEX = 0;
|
|
|
284
284
|
// constant string makes cross-path collision resistance structural rather than incidental:
|
|
285
285
|
// preimages from different derivation paths can never align byte-for-byte regardless of length.
|
|
286
286
|
// These must be kept in sync with the Go (pkg/fhe) and TS (js/src/handle.ts) implementations.
|
|
287
|
-
string constant SEP_INPUT_PREHANDLE = "inco/handle/input-prehandle";
|
|
288
287
|
string constant SEP_INPUT_HANDLE = "inco/handle/input-handle";
|
|
289
288
|
string constant SEP_INPUT_CONTEXT = "inco/handle/input-context";
|
|
290
289
|
string constant SEP_OP_RESULT = "inco/handle/op-result";
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|
|
@@ -801,6 +801,13 @@ library e {
|
|
|
801
801
|
inco.allow(eaddress.unwrap(a), to);
|
|
802
802
|
}
|
|
803
803
|
|
|
804
|
+
/// @notice Allows an address to access an elist
|
|
805
|
+
/// @param a The elist
|
|
806
|
+
/// @param to The address to allow
|
|
807
|
+
function allow(elist a, address to) internal {
|
|
808
|
+
inco.allow(elist.unwrap(a), to);
|
|
809
|
+
}
|
|
810
|
+
|
|
804
811
|
/// @notice Reveals an encrypted uint256
|
|
805
812
|
/// @param a The encrypted uint256
|
|
806
813
|
function reveal(euint256 a) internal {
|
|
@@ -819,6 +826,12 @@ library e {
|
|
|
819
826
|
inco.reveal(eaddress.unwrap(a));
|
|
820
827
|
}
|
|
821
828
|
|
|
829
|
+
/// @notice Reveals an elist (makes all elements publicly readable without wallet authentication)
|
|
830
|
+
/// @param a The elist
|
|
831
|
+
function reveal(elist a) internal {
|
|
832
|
+
inco.reveal(elist.unwrap(a));
|
|
833
|
+
}
|
|
834
|
+
|
|
822
835
|
/// @notice Verifies a decryption attestation for a euint256
|
|
823
836
|
/// @param handle The encrypted handle
|
|
824
837
|
/// @param value The claimed decrypted value
|
|
@@ -857,6 +870,12 @@ library e {
|
|
|
857
870
|
allow(a, address(this));
|
|
858
871
|
}
|
|
859
872
|
|
|
873
|
+
/// @notice Allows this contract to access an elist
|
|
874
|
+
/// @param a The elist
|
|
875
|
+
function allowThis(elist a) internal {
|
|
876
|
+
allow(a, address(this));
|
|
877
|
+
}
|
|
878
|
+
|
|
860
879
|
/// @notice Checks if a user is allowed to access an encrypted uint256
|
|
861
880
|
/// @param user The address to check
|
|
862
881
|
/// @param a The encrypted uint256
|