7 research outputs found
A Robust Class of Data Languages and an Application to Learning
We introduce session automata, an automata model to process data words, i.e.,
words over an infinite alphabet. Session automata support the notion of fresh
data values, which are well suited for modeling protocols in which sessions
using fresh values are of major interest, like in security protocols or ad-hoc
networks. Session automata have an expressiveness partly extending, partly
reducing that of classical register automata. We show that, unlike register
automata and their various extensions, session automata are robust: They (i)
are closed under intersection, union, and (resource-sensitive) complementation,
(ii) admit a symbolic regular representation, (iii) have a decidable inclusion
problem (unlike register automata), and (iv) enjoy logical characterizations.
Using these results, we establish a learning algorithm to infer session
automata through membership and equivalence queries
Dynamic Protocol Reverse Engineering a Grammatical Inference Approach
Round trip engineering of software from source code and reverse engineering of software from binary files have both been extensively studied and the state-of-practice have documented tools and techniques. Forward engineering of protocols has also been extensively studied and there are firmly established techniques for generating correct protocols. While observation of protocol behavior for performance testing has been studied and techniques established, reverse engineering of protocol control flow from observations of protocol behavior has not received the same level of attention. State-of-practice in reverse engineering the control flow of computer network protocols is comprised of mostly ad hoc approaches. We examine state-of-practice tools and techniques used in three open source projects: Pidgin, Samba, and rdesktop . We examine techniques proposed by computational learning researchers for grammatical inference. We propose to extend the state-of-art by inferring protocol control flow using grammatical inference inspired techniques to reverse engineer automata representations from captured data flows. We present evidence that grammatical inference is applicable to the problem domain under consideration
The LearnLib in FMICS-jETI
The FMICS-jETI platform is a collaborative, servicebased demonstrator of tools and techniques for the analysis of industrial critical systems. It is the FMICS Working Group contribution to the Verified Software Initiative. In this paper, we extend the scope of the FMICS-jETI platform to address the integration of heterogeneous and legacy tools and technologies. We show how to integrate 1) CORBA, a language independent standard for the interoperability of heterogeneous functionalities distributed over a network, 2) active model learning technologies, via the LearnLib, as a model extrapolation technique that uses testing to explore a black box system and CORBA as a communication mechanism, and 3) third party applications built on top of the LearnLib, in this case Smyle, a tool that synthesizes design models by learning from examples, that uses the LearnLib as learner core
The LearnLib in FMICS-jETI Tiziana MargariaChair of Services and Software Engineering,University of Potsdam, [email protected]
Abstract The FMICS-jETI platform is a collaborative, service-based demonstrator of tools and techniques for the analysis of industrial critical systems. It is the FMICS WorkingGroup contribution to the Verified Software Initiative