Quantstamp reviewed Hinkal (Hinkal Protocol - 2) on 28 Aug 2026: 14 findings, 0 critical; 9 marked fixed, 3 acknowledged, 2 open.
Report hosted on certificate.quantstamp.com.
Trustblock does not review code.
Statuses are the security firm’s own, from its report.
| Severity | Open | Acknowledged | Fixed |
|---|---|---|---|
| Critical | 0 | 0 | 0 |
| High | 0 | 0 | 0 |
| Medium | 0 | 0 | 1 |
| Low | 2 | 3 | 8 |
Privileged roles can replace various security-critical helper contracts without delay, potentially introducing unintended changes that apply for already in-flight transactions. 1. The `HINKAL_HELPER_MANAGER` role can replace `hinkalHelper` at will. That contract both assembles the public-input vector fed to the verifier and enforces the `calldataHash` integrity check that binds the proof to the spend data. 2. The `DEFAULT_ADMIN_ROLE` can call the `registerExternalAction()` function to replace external action addresses. 3. The `owner` can register any address as the Groth16 verifier for a proof shape using the `registerVerifiers()` function.
Improve input validation in the following locations: 1. Add a reverting 0-address check in `setHinkalHelper()`. 2. In `insertNullifiers()`, require that any slot flagged `onChainCreation` carries only zero-valued `inputNullifiers` instead of just skipping nullifier recording for `onChainCreation` slots. 3. Require `input.length == inputAmount` in the verifier wrapper.
The report names a repository or files. Open the report to see its scope.
236 projects reviewed · 332 reports · latest Oct 2026
See Quantstamp’s auditsSomething wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.
Tell us