$\newcommand{\pair}{\mathcal{e}}$ $\newcommand{\Gone}{\mathbb{G}_1}$ $\newcommand{\Gtwo}{\mathbb{G}_2}$ $\newcommand{\Gt}{\mathbb{G}_t}$ $\newcommand{\SP}{SnarkPack}$ $\newcommand{\vA}{\mathbf{A}}$ $\newcommand{\vB}{\mathbf{B}}$ $\newcommand{\vC}{\mathbf{C}}$
Last Major Update: May 16th 2021
Approach, Scope and Limitations of This Audit
The general approach is convincing (as I elaborate below), so I focused on the specific building blocks, MIPP and TIPP
Since MIPP and TIPP are mostly applications of the GIPA protocols in BMM+19, I mostly focused on the security aspects that were specific to SnarkPack. I have read the discussions and some of the proofs in BMM+19; I have not checked all their details.
I have reviewed the top-level approach in the code---which seems correct. I spent additional time looking at the code portions related to the issues I mention below.
Summary of This Audit