Nail: A Practical Tool for Parsing and Generating Data Formats

We present Nail, an interface generator that allows programmers to safely parse and generate protocols defined by a Parser-Expression based grammar. Nail uses a richer set of parser combinators that induce an internal representation, obviating the need to write semantic actions. Nail also provides s...

Full description

Bibliographic Details
Main Authors: Bangert, Julian, Zeldovich, Nickolai
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:en_US
Published: Institute of Electrical and Electronics Engineers (IEEE) 2016
Online Access:http://hdl.handle.net/1721.1/101089
https://orcid.org/0000-0003-0238-2703
https://orcid.org/0000-0001-8543-2002
_version_ 1826194772568571904
author Bangert, Julian
Zeldovich, Nickolai
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Bangert, Julian
Zeldovich, Nickolai
author_sort Bangert, Julian
collection MIT
description We present Nail, an interface generator that allows programmers to safely parse and generate protocols defined by a Parser-Expression based grammar. Nail uses a richer set of parser combinators that induce an internal representation, obviating the need to write semantic actions. Nail also provides solutions parsing common patterns such as length and offset fields within binary formats that are hard to process with existing parser generators.
first_indexed 2024-09-23T10:01:34Z
format Article
id mit-1721.1/101089
institution Massachusetts Institute of Technology
language en_US
last_indexed 2024-09-23T10:01:34Z
publishDate 2016
publisher Institute of Electrical and Electronics Engineers (IEEE)
record_format dspace
spelling mit-1721.1/1010892022-09-26T15:16:20Z Nail: A Practical Tool for Parsing and Generating Data Formats Nail: A Practical Interface Generator for Data Formats Bangert, Julian Zeldovich, Nickolai Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Bangert, Julian Zeldovich, Nickolai We present Nail, an interface generator that allows programmers to safely parse and generate protocols defined by a Parser-Expression based grammar. Nail uses a richer set of parser combinators that induce an internal representation, obviating the need to write semantic actions. Nail also provides solutions parsing common patterns such as length and offset fields within binary formats that are hard to process with existing parser generators. United States. Defense Advanced Research Projects Agency. Clean-slate Design of Resilient, Adaptive, Secure Hosts (CRASH) Program (Contract N66001-10-2-4089) National Science Foundation (U.S.) (Award CNS-1053143) 2016-02-04T00:42:10Z 2016-02-04T00:42:10Z 2014-05 Article http://purl.org/eprint/type/ConferencePaper 978-1-4799-5103-1 http://hdl.handle.net/1721.1/101089 Bangert, Julian, and Nickolai Zeldovich. “Nail: A Practical Interface Generator for Data Formats.” 2014 IEEE Security and Privacy Workshops (May 2014). https://orcid.org/0000-0003-0238-2703 https://orcid.org/0000-0001-8543-2002 en_US http://dx.doi.org/10.1109/SPW.2014.31 Proceedings of the 2014 IEEE Security and Privacy Workshops Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf Institute of Electrical and Electronics Engineers (IEEE) MIT web domain
spellingShingle Bangert, Julian
Zeldovich, Nickolai
Nail: A Practical Tool for Parsing and Generating Data Formats
title Nail: A Practical Tool for Parsing and Generating Data Formats
title_full Nail: A Practical Tool for Parsing and Generating Data Formats
title_fullStr Nail: A Practical Tool for Parsing and Generating Data Formats
title_full_unstemmed Nail: A Practical Tool for Parsing and Generating Data Formats
title_short Nail: A Practical Tool for Parsing and Generating Data Formats
title_sort nail a practical tool for parsing and generating data formats
url http://hdl.handle.net/1721.1/101089
https://orcid.org/0000-0003-0238-2703
https://orcid.org/0000-0001-8543-2002
work_keys_str_mv AT bangertjulian nailapracticaltoolforparsingandgeneratingdataformats
AT zeldovichnickolai nailapracticaltoolforparsingandgeneratingdataformats
AT bangertjulian nailapracticalinterfacegeneratorfordataformats
AT zeldovichnickolai nailapracticalinterfacegeneratorfordataformats