Manual of DeepSec

The manual of DeepSec is also available in PDF.

The graphical User Interface

DeepSec comes with a Graphical User Interface (GUI). DeepSecUI is a standalone application that interacts with the deepsec_api executable.

When launching the application you should see a pop-up message stating “DeepSec API version x.y.z successfully detected”. This means that DeepSecUI was able to successfully locate the deepsec_api executable. If you see a message “DeepSec API path is not set” you must either add the path to your executable in your system PATH, or manually indicate Absolute Path of deepsec_api in the Settings.

The GUI should be rather intuitive and mostly self-explanatory if you are familiar with protocol verification. We document each of the sections of the GUI and its main items.

Start run

DeepSecUI allows to select several files and run deepsec on these files for verification. Such a set of files is called a batch. Running deepsec on a single file is called a run. Each file may contain several queries to be verified.

The Select files button allows to select one or more files for a run, respectively batch. It is possible to specify a title for a run or batch. If specified, this title will be used in the Results section to refer to the batch, or run.

One can also set the advanced options for the semantics and distributed computation as document in Advanced options.

Results

The Results section displays a list of all previous verification batches.

Batch, run and query information

Clicking on a particular batch in the list of all batches provides detailed information and results regarding the selected batch. The detailed information includes

These information are particularly useful for reproducibility, as well as for bug reporting.

Below the batch information it is possible to get information for each run. The information about a run contains the file name, number of queries and verification time.

Clicking on a run displays the result for each query. Additional information (semantics, type, ressources used) can be obtained by clicking on the query.

Details of a query: exploring attacks and equivalence proofs

By clicking on Details the tool provides additional information about the particular query. In particular it displays a summary of the query and recalls the signature (the function declaration and rewrite system), and in case of an attack, the attack trace.

It also displays the processes on which the verification was run and provides an equivalence, respectively attack simulator.

Selecting the actions requires a few additional explanations:

Settings

The settings allow to configure the DeepSecUI environment.