Complex protocols describing the communication or storage of binary data are difficult to describe precisely. This paper presents a collection of data types for describing a binary data formats; the corresponding parser and pretty printer are generated automatically from a data description. By embedding these data types in a general purpose dependently typed programming language, we can verify once and for all that the parsers and pretty printers generated in this style are correct by construction. To validate our results, we show how to write a verified parser of the IPv4 network protocol
[[abstract]]This paper proposes a packet-based verification platform with serial link interface for ...
Packet generation is an important activity for network administration and security. Tools for packet...
Protocol reverse engineering, the process of extracting the application-level protocol used by an im...
Complex protocols describing the communication or storage of binary data are difficult to describe p...
Since the mid-1990s, there have been efforts to enable more flexible processing of network packets b...
Internet protocol standards have been slow to adopt formal protocol description languages and method...
Part 5: Software SecurityInternational audienceWhile implementing distributed applications, the pars...
Queen’s that applies program transformation techniques to protocol data to evaluate the security of ...
Part 2: Network Architecture and Protocol DesignInternational audienceA classic ‘reference’ variable...
Communication software, most notoriously protocolstacks, are an area of growing interest. Many compa...
This chapter discusses how addressing information, control information, and data are encapsulated in...
Programming languages like P4 enable specifying the behavior of network data planes in software. How...
TLS is such a widespread security protocol that errors in its implementation can have disastrous con...
This paper describes a layered approach to encoding and decoding tightly packed binary protocols. Th...
Any computing device or system that uses the internet needs to analyze and identify the contents of ...
[[abstract]]This paper proposes a packet-based verification platform with serial link interface for ...
Packet generation is an important activity for network administration and security. Tools for packet...
Protocol reverse engineering, the process of extracting the application-level protocol used by an im...
Complex protocols describing the communication or storage of binary data are difficult to describe p...
Since the mid-1990s, there have been efforts to enable more flexible processing of network packets b...
Internet protocol standards have been slow to adopt formal protocol description languages and method...
Part 5: Software SecurityInternational audienceWhile implementing distributed applications, the pars...
Queen’s that applies program transformation techniques to protocol data to evaluate the security of ...
Part 2: Network Architecture and Protocol DesignInternational audienceA classic ‘reference’ variable...
Communication software, most notoriously protocolstacks, are an area of growing interest. Many compa...
This chapter discusses how addressing information, control information, and data are encapsulated in...
Programming languages like P4 enable specifying the behavior of network data planes in software. How...
TLS is such a widespread security protocol that errors in its implementation can have disastrous con...
This paper describes a layered approach to encoding and decoding tightly packed binary protocols. Th...
Any computing device or system that uses the internet needs to analyze and identify the contents of ...
[[abstract]]This paper proposes a packet-based verification platform with serial link interface for ...
Packet generation is an important activity for network administration and security. Tools for packet...
Protocol reverse engineering, the process of extracting the application-level protocol used by an im...