@@ -6,7 +6,7 @@ import {Bytes} from "@openzeppelin/contracts/utils/Bytes.sol";
6
6
import {Strings} from "@openzeppelin/contracts/utils/Strings.sol " ;
7
7
import {IDKIMRegistry} from "@zk-email/contracts/DKIMRegistry.sol " ;
8
8
import {IGroth16Verifier} from "@zk-email/email-tx-builder/src/interfaces/IGroth16Verifier.sol " ;
9
- import {EmailAuthMsg} from "@zk-email/email-tx-builder/src/interfaces/IEmailTypes.sol " ;
9
+ import {EmailAuthMsg, EmailProof } from "@zk-email/email-tx-builder/src/interfaces/IEmailTypes.sol " ;
10
10
import {CommandUtils} from "@zk-email/email-tx-builder/src/libraries/CommandUtils.sol " ;
11
11
12
12
/**
@@ -129,7 +129,7 @@ library ZKEmailUtils {
129
129
) return EmailProofError.InvalidFieldPoint;
130
130
131
131
return
132
- groth16Verifier.verifyProof (pA, pB, pC, toPubSignals (emailAuthMsg))
132
+ groth16Verifier.verifyProof (pA, pB, pC, toPubSignals (emailAuthMsg.proof ))
133
133
? EmailProofError.NoError
134
134
: EmailProofError.EmailProof;
135
135
}
@@ -159,26 +159,26 @@ library ZKEmailUtils {
159
159
* into a uint256 array in the order expected by the verifier circuit.
160
160
*/
161
161
function toPubSignals (
162
- EmailAuthMsg memory emailAuthMsg
162
+ EmailProof memory proof
163
163
) internal pure returns (uint256 [DOMAIN_FIELDS + COMMAND_FIELDS + 5 ] memory pubSignals ) {
164
164
uint256 [] memory stringFields;
165
165
166
- stringFields = _packBytes2Fields (bytes (emailAuthMsg. proof.domainName), DOMAIN_BYTES);
166
+ stringFields = _packBytes2Fields (bytes (proof.domainName), DOMAIN_BYTES);
167
167
for (uint256 i = 0 ; i < DOMAIN_FIELDS; i++ ) {
168
168
pubSignals[i] = stringFields[i];
169
169
}
170
170
171
- pubSignals[DOMAIN_FIELDS] = uint256 (emailAuthMsg. proof.publicKeyHash);
172
- pubSignals[DOMAIN_FIELDS + 1 ] = uint256 (emailAuthMsg. proof.emailNullifier);
173
- pubSignals[DOMAIN_FIELDS + 2 ] = uint256 (emailAuthMsg. proof.timestamp);
171
+ pubSignals[DOMAIN_FIELDS] = uint256 (proof.publicKeyHash);
172
+ pubSignals[DOMAIN_FIELDS + 1 ] = uint256 (proof.emailNullifier);
173
+ pubSignals[DOMAIN_FIELDS + 2 ] = uint256 (proof.timestamp);
174
174
175
- stringFields = _packBytes2Fields (bytes (emailAuthMsg. proof.maskedCommand), COMMAND_BYTES);
175
+ stringFields = _packBytes2Fields (bytes (proof.maskedCommand), COMMAND_BYTES);
176
176
for (uint256 i = 0 ; i < COMMAND_FIELDS; i++ ) {
177
177
pubSignals[DOMAIN_FIELDS + 3 + i] = stringFields[i];
178
178
}
179
179
180
- pubSignals[DOMAIN_FIELDS + 3 + COMMAND_FIELDS] = uint256 (emailAuthMsg. proof.accountSalt);
181
- pubSignals[DOMAIN_FIELDS + 3 + COMMAND_FIELDS + 1 ] = emailAuthMsg. proof.isCodeExist ? 1 : 0 ;
180
+ pubSignals[DOMAIN_FIELDS + 3 + COMMAND_FIELDS] = uint256 (proof.accountSalt);
181
+ pubSignals[DOMAIN_FIELDS + 3 + COMMAND_FIELDS + 1 ] = proof.isCodeExist ? 1 : 0 ;
182
182
183
183
return pubSignals;
184
184
}
@@ -193,11 +193,11 @@ library ZKEmailUtils {
193
193
if (remain > 0 ) {
194
194
numFields += 1 ;
195
195
}
196
- uint256 [] memory fields = new uint [](numFields);
197
- uint256 idx = 0 ;
198
- uint256 byteVal = 0 ;
199
- for (uint256 i = 0 ; i < numFields; i++ ) {
200
- for (uint256 j = 0 ; j < 31 ; j++ ) {
196
+ uint256 [] memory fields = new uint256 [](numFields);
197
+ uint256 idx;
198
+ uint256 byteVal;
199
+ for (uint256 i; i < numFields; i++ ) {
200
+ for (uint256 j; j < 31 ; j++ ) {
201
201
idx = i * 31 + j;
202
202
if (idx >= _paddedSize) {
203
203
break ;
0 commit comments