From 0abc15b30bdaec0abe56fce2c87c57ed71ad87e2 Mon Sep 17 00:00:00 2001 From: hazim-j Date: Sun, 3 Aug 2025 13:07:20 +1000 Subject: [PATCH] Findings 10: add dev note outlining contract depedencies for P256 verifiers --- src/verifier/UserOpWebAuthnCosignVerifier.sol | 6 ++++++ src/verifier/UserOpWebAuthnVerifier.sol | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/verifier/UserOpWebAuthnCosignVerifier.sol b/src/verifier/UserOpWebAuthnCosignVerifier.sol index e08581c..6f57c33 100644 --- a/src/verifier/UserOpWebAuthnCosignVerifier.sol +++ b/src/verifier/UserOpWebAuthnCosignVerifier.sol @@ -10,6 +10,12 @@ import {WebAuthn} from "solady/utils/WebAuthn.sol"; import {IVerifier} from "../interface/IVerifier.sol"; import {OnlyKeystore} from "../lib/OnlyKeystore.sol"; +/** + * @dev This contract depends on the Solady P256.sol library which itself has a + * dependency on a VERIFIER and CANARY contract to properly handle the case where + * the RIP-7212 precompile might or might not be present. + * See https://github.com/Vectorized/solady/blob/v0.1.19/src/utils/P256.sol for details. + */ contract UserOpWebAuthnCosignVerifier is IVerifier, OnlyKeystore { bytes1 public constant SIGNATURES_ONLY_TAG = 0xff; diff --git a/src/verifier/UserOpWebAuthnVerifier.sol b/src/verifier/UserOpWebAuthnVerifier.sol index 2639f7d..8dcd766 100644 --- a/src/verifier/UserOpWebAuthnVerifier.sol +++ b/src/verifier/UserOpWebAuthnVerifier.sol @@ -8,6 +8,12 @@ import {WebAuthn} from "solady/utils/WebAuthn.sol"; import {IVerifier} from "../interface/IVerifier.sol"; import {OnlyKeystore} from "../lib/OnlyKeystore.sol"; +/** + * @dev This contract depends on the Solady P256.sol library which itself has a + * dependency on a VERIFIER and CANARY contract to properly handle the case where + * the RIP-7212 precompile might or might not be present. + * See https://github.com/Vectorized/solady/blob/v0.1.19/src/utils/P256.sol for details. + */ contract UserOpWebAuthnVerifier is IVerifier, OnlyKeystore { constructor(address aKeystore) OnlyKeystore(aKeystore) {}