Skip to content

A tool that can be used to learn state machines from implementations.

License

Notifications You must be signed in to change notification settings

jderuiter/statelearner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StateLearner

StateLearner is a tool that can learn state machines from implementations using a black-box approach. It makes use of LearnLib for the learning specific algorithms.

This tool can be used for TLS implementations, smart cards and can be extended using its socket module.

An overview of different security protocols where state machine learning has been applied can be found here.

Requirements

  • graphviz

Build

Build a self-contained jar file using the following command:

mvn package shade:shade

Usage

java -jar stateLearner-0.0.1-SNAPSHOT.jar <configuration file>

Example configurations can be found in the 'examples' directory. To run the OpenSSL example:

cd examples/openssl
java -jar ../../target/stateLearner-0.0.1-SNAPSHOT.jar server.properties

Publications

StateLearner (or one of its predecessors) has been used in the following publications:

About

A tool that can be used to learn state machines from implementations.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages