SEPIA: Security-oriented PN Framework
Petri net framework for security related modeling and reasoning
SEPIA stands for "Security-oriented Petri Net Framework" and provides implementations for various types of Petri nets. Along Place/Transition-Nets, it supports Petri nets with distinguishable token colors. To support information flow analysis of processes, SEPIA defines so-called IF-Nets, tailored for security-oriented workflow modelling, which enable users to assign security-levels (high, low) to transitions, data elements and persons/agents participating in the process execution.
For the usage in editors, Petri nets can be put in graphical containers, which hold visualization information. To preserve compatibility, Petri nets from other frameworks can be imported with the parser functionalities and also be exported for other frameworks using the serializing functionalities.
Additionally, the framework comes with classes for the traversal of Petri nets.
SEPIA builds upon the following tools and encloses them.
- TOVAL, located at https://github.com/GerdHolz/TOVAL
- JAGAL, located at https://github.com/iig-uni-freiburg/JAGAL
- SEWOL, located at https://github.com/iig-uni-freiburg/SEWOL
- XML Schema Object Model (xsom), located at https://xsom.java.net/
- XML Datatypes Library (xsdlib)
- isorelax, located at http://iso-relax.sourceforge.net/
- hamcrest, located at https://github.com/hamcrest
- Multi Schema Validator (MSV), located at https://msv.java.net/
- relaxng-Datatype, located at https://sourceforge.net/projects/relaxng/
A detailled documentation of SEPIA can be found under http://doku.telematik.uni-freiburg.de/sepia.
The most recent release is SEPIA 1.0.2, released January 22, 2016.
To add a dependency on SEPIA using Maven, use the following:
<dependency> <groupId>de.uni.freiburg.iig.telematik</groupId> <artifactId>SEPIA</artifactId> <version>1.0.2</version> </dependency>
Older releases can be found under https://github.com/iig-uni-freiburg/SEPIA/releases.