ICFP 2025
Sun 12 - Sat 18 October 2025 Singapore
co-located with ICFP/SPLASH 2025
Tue 14 Oct 2025 11:40 - 12:05 at Orchid Plenary Ballroom - Gradual Typing and Security Chair(s): Jeremy G. Siek

We introduce SecRef*, a secure compilation framework protecting stateful programs verified in F* against linked unverified code, with which the program dynamically shares ML-style mutable references. To ease program verification in this setting, we track which references are shareable with the unverified code, and which ones are not shareable and whose contents are thus guaranteed to be unchanged after calling into unverified code. This universal property of non-shareable references is exposed in the interface on which the verified program can rely when calling into unverified code. The remaining refinement types and pre- and post-conditions that the verified code expects from the unverified code are converted into dynamic checks about the shared references by using higher-order contracts. We prove formally in F* that this strategy ensures sound and secure interoperability with unverified code. Since SecRef* is built on top of the Monotonic State effect of F*, these proofs rely on the first monadic representation for this effect, which is a contribution of our work that can be of independent interest. Finally, we use SecRef* to build a simple cooperative multi-threading scheduler that is verified and that securely interacts with unverified threads.

Tue 14 Oct

Displayed time zone: Perth change

10:50 - 12:05
Gradual Typing and SecurityICFP Papers / JFP First Papers at Orchid Plenary Ballroom
Chair(s): Jeremy G. Siek Indiana University
10:50
25m
Talk
Robust Dynamic Embedding for Gradual Typing
ICFP Papers
Koen Jacobs Inria, Matías Toro University of Chile, Nicolas Tabareau Inria, Éric Tanter University of Chile
DOI
11:15
25m
Paper
A simple blame calculus for explicit nulls
JFP First Papers
Ondřej Lhoták University of Waterloo, Philip Wadler IOG; University of Edinburgh
DOI
11:40
25m
Talk
SecRef*: Securely Sharing Mutable References between Verified and Unverified Code in F*
ICFP Papers
Cezar-Constantin Andrici MPI-SP, Danel Ahman University of Ljubljana, Cătălin Hriţcu MPI-SP, Ruxandra Icleanu University of Edinburgh, Guido Martínez Microsoft Research, Exequiel Rivas Tallinn University of Technology; Ahrefs, Théo Winterhalter INRIA
DOI