Software
Get Verifpal
Release notes
Verifpal runs on Windows, macOS and Linux. Select an operating system for installation instructions. Packages and binaries are available on the releases page.
macOS
brew tap verifpal.com/source https://github.com/symbolicsoft/verifpal
brew install --cask verifpal
If you installed Verifpal as a Homebrew formula, run brew uninstall verifpal before installing the cask. Use brew upgrade for future updates.
Download the darwin_arm64 archive for Apple silicon from the releases page. Move the binary to a directory on your PATH.
Windows
winget is included with Windows 10 and 11.
winget install SymbolicSoftware.Verifpal
scoop bucket add verifpal https://github.com/symbolicsoft/verifpal.git
scoop install verifpal
Download the windows_amd64 archive from the releases page. Move verifpal.exe to a directory on your PATH.
Linux
Download the package for your distribution from the releases page and install it with the corresponding command. Replace amd64 with arm64 on ARM systems.
# Debian, Ubuntu:
sudo dpkg -i verifpal_*_linux_amd64.deb
# Fedora, RHEL, openSUSE:
sudo rpm -i verifpal_*_linux_amd64.rpm
# Alpine (the packages are unsigned):
sudo apk add --allow-untrusted verifpal_*_linux_amd64.apk
# Arch:
sudo pacman -U verifpal_*_linux_amd64.pkg.tar.zst
brew tap verifpal.com/source https://github.com/symbolicsoft/verifpal
brew install --cask verifpal
Homebrew installs casks on Linux since version 4.6.16, on both amd64 and arm64. Check yours with brew --version and run brew update if it is older. Use brew upgrade for future updates.
Download the linux_amd64 or linux_arm64 archive from the releases page. Move the binary to a directory on your PATH.
Install the Rust toolchain, then use Cargo to install the published crate or build a clone of the source repository.
# Install the published crate:
cargo install verifpal
# Build a repository clone:
cargo build --release
All archives and packages include manual pages, shell completions for bash, zsh and fish, and example models.
Official extensions are available for Visual Studio Code, Neovim and Zed. A short video demonstrates the Visual Studio Code extension.
Analysis reports
See an example reportBy default, Verifpal writes verification results to the terminal. --format html writes a self-contained HTML report with a protocol sequence diagram, highlighted model source, and a diagram and trace for each attack. The report has no external assets.
verifpal verify signal.vp --format html > report.html
--format tex writes a standalone LaTeX report with a message-sequence chart, query results, a keyed diagram and numbered trace for each attack, and the model source as an appendix. Terms are typeset as mathematics. BEGIN/END markers surround each figure, and all macros are defined in one preamble so figures can be copied into another document. View the compiled example.
verifpal verify signal.vp --format tex > report.tex
tectonic report.tex
Scientific background
Read the paperThe latest Verifpal research paper formalizes the language and analysis, including soundness and termination results.
Verifpal builds on work by Prof. Bruno Blanchet, the author of ProVerif. This does not imply his endorsement of Verifpal.