defirisk.co
rubric v1.7.0

Signed/unsigned arithmetic confusion

Orca's assessment for RD-F-018 — scored green on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.

Evidence summary #

Rust's strong static type system distinguishes signed (i64/i128) from unsigned (u64/u128) integers and requires explicit casts. Whirlpools uses u128 for liquidity amounts and i128/i64 for tick indices (signed by design — ticks range from negative to positive). The Neodyme and OtterSec audits covered arithmetic correctness. No signed/unsigned confusion findings reported. Rust's type safety provides structural protection beyond what Slither detection offers for Solidity.

Sources #

Methodology #

Determine whether signed-integer conversions or comparisons where unsigned was intended exist in the deployed bytecode/source.

See the full factor methodology and distribution across all protocols →

rubric_version v1.7.0 protocol orca factor RD-F-018 score green collected_at 2026-05-16 02:39:16