English

CHC-based Automated Verification of WebAssembly Programs

Programming Languages 2026-07-19 v1

Abstract

WebAssembly is a stack-based imperative language widely used to develop safe and efficient Web applications. In this paper, we propose an automated static verification method for a subset of WebAssembly using a constrained Horn clauses (CHCs) satisfiability solver. Our main challenges are how to handle indirect function calls effectively and how to analyze huge panic handlers. A na\"ive approach to the former problem would be to model a function reference table as an array of functions' entry points, but it would suffer from having too many candidates for indirect calls, resulting in a large case analysis. We address the problem by utilizing type information and filtering candidates for each indirect function call. For the latter problem, a panic handler, which is a function that is called when an error occurs, can be very large and complex. We mitigate this problem by summarizing the panic handler using control-flow analysis. We confirmed the effectiveness of our approach through preliminary experiments.

Cite

@article{arxiv.2607.17220,
  title  = {CHC-based Automated Verification of WebAssembly Programs},
  author = {Akihisa Yagi and Ken Sakayori and Naoki Kobayashi},
  journal= {arXiv preprint arXiv:2607.17220},
  year   = {2026}
}

Comments

presented at HCVS 26