<!-- canonical: https://0xsimao.com/findings/singularity-proof-identifier-same-method -->

# Missing proof identifier, which could lead to using the same proof in another method

Low/Info · Three Sigma · Private DeFi access · 26th February, 2024

Finding 3S-SG-N09 of the Singularity security review.

- Protocol: https://www.thesingularity.network/
- Report: /reports/singularity
- Source: https://cdn.sanity.io/files/qoqld077/production/45b8aac56a2b8e3b557df4329ac9bf8220b64012.pdf

---

### Description

There is no identifier in the circuits corresponding to the method that the proof relates to.
This means that if 2 circuits have exactly the same inputs, the same proof could be used for
more than 1 method. Thus, if a user intended to do some action, when the proof became
exposed in the mempool, it could be used to perform another action.
There are no known situations where the same proof can be used, but it is still a possibility.

### Recommendation

Each circuit should have an identifier such that the proof can only match to prevent using it
in another method.

### Status

Addressed in [#8b300f0](https://github.com/portalgateme/darkpool-v1-zk-contracts-fork/commit/8b300f07a28f2c073154c8de3e9e90ba64ef1934).
