Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time
ASN.1 is a powerful formal notation divided into two parts, a specification of the data and the data itself in binary form. Creating decoders for these files can often be tedious. The purpose of this degree work is to extend current tools at Arctic Group to make an application that decodes a range o...
Main Author: | |
---|---|
Format: | Bachelor Thesis |
Language: | English |
Published: |
Luleå tekniska universitet, Institutionen för system- och rymdteknik
2018
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-67595 |
id |
ftluleatu:oai:DiVA.org:ltu-67595 |
---|---|
record_format |
openpolar |
spelling |
ftluleatu:oai:DiVA.org:ltu-67595 2023-05-15T15:19:03+02:00 Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time Jilläng, Emil 2018 application/pdf http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-67595 eng eng Luleå tekniska universitet, Institutionen för system- och rymdteknik http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-67595 info:eu-repo/semantics/openAccess ASN1 Abstract Syntax Notation One Human-readable ANTLR Telecommunication Computer and Information Sciences Data- och informationsvetenskap Student thesis info:eu-repo/semantics/bachelorThesis text 2018 ftluleatu 2022-10-25T20:53:55Z ASN.1 is a powerful formal notation divided into two parts, a specification of the data and the data itself in binary form. Creating decoders for these files can often be tedious. The purpose of this degree work is to extend current tools at Arctic Group to make an application that decodes a range of different ASN.1 specifications and data. This should be done during runtime, without needing to rebuild the application for each specification, while generating human-readable data and abstracting unwanted information. Two ways to create ASN.1 decoders were identified, and the application was designed taking heavy inspiration from a solution that stores intermediate data in a list. By not including encoding as a feature of the application a few shortcuts could be made, and the desired result could be achieved during runtime. The application was designed to include three parts. The first part was an ASN.1 parser using the Java-based tool ANTLR4. The second part matched the binary data to the information in the specification. The final part was an output formatter that abstracts and prettifies the output data to text files. The result was an application that parses at least three of the most commonly used specifications of the employer and does only have to be rebuilt when a new data type is present in the specifications. Problems arose when matching the data to the ASN.1 specifications, thus the matching and output formatting was only partially implemented. The application was evaluated by testing many different ASN.1 specifications, making sure everything was generated correctly during runtime and extending the parser to support more syntax as it was introduced in new specifications. Although the application did not support any arbitrary ASN.1 specification, it could serve as a foundation for further development to make the application truly generalized. ASN.1 är en kraftfull formell notation uppdelad i två delar. En specifikation av data och medföljande data i binär form. Att skapa avkodare till dessa filer kan ... Bachelor Thesis Arctic Luleå University of Technology Publications (DiVA) Arctic |
institution |
Open Polar |
collection |
Luleå University of Technology Publications (DiVA) |
op_collection_id |
ftluleatu |
language |
English |
topic |
ASN1 Abstract Syntax Notation One Human-readable ANTLR Telecommunication Computer and Information Sciences Data- och informationsvetenskap |
spellingShingle |
ASN1 Abstract Syntax Notation One Human-readable ANTLR Telecommunication Computer and Information Sciences Data- och informationsvetenskap Jilläng, Emil Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
topic_facet |
ASN1 Abstract Syntax Notation One Human-readable ANTLR Telecommunication Computer and Information Sciences Data- och informationsvetenskap |
description |
ASN.1 is a powerful formal notation divided into two parts, a specification of the data and the data itself in binary form. Creating decoders for these files can often be tedious. The purpose of this degree work is to extend current tools at Arctic Group to make an application that decodes a range of different ASN.1 specifications and data. This should be done during runtime, without needing to rebuild the application for each specification, while generating human-readable data and abstracting unwanted information. Two ways to create ASN.1 decoders were identified, and the application was designed taking heavy inspiration from a solution that stores intermediate data in a list. By not including encoding as a feature of the application a few shortcuts could be made, and the desired result could be achieved during runtime. The application was designed to include three parts. The first part was an ASN.1 parser using the Java-based tool ANTLR4. The second part matched the binary data to the information in the specification. The final part was an output formatter that abstracts and prettifies the output data to text files. The result was an application that parses at least three of the most commonly used specifications of the employer and does only have to be rebuilt when a new data type is present in the specifications. Problems arose when matching the data to the ASN.1 specifications, thus the matching and output formatting was only partially implemented. The application was evaluated by testing many different ASN.1 specifications, making sure everything was generated correctly during runtime and extending the parser to support more syntax as it was introduced in new specifications. Although the application did not support any arbitrary ASN.1 specification, it could serve as a foundation for further development to make the application truly generalized. ASN.1 är en kraftfull formell notation uppdelad i två delar. En specifikation av data och medföljande data i binär form. Att skapa avkodare till dessa filer kan ... |
format |
Bachelor Thesis |
author |
Jilläng, Emil |
author_facet |
Jilläng, Emil |
author_sort |
Jilläng, Emil |
title |
Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
title_short |
Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
title_full |
Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
title_fullStr |
Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
title_full_unstemmed |
Making ASN.1 (Abstract Syntax Notation One) human-readable : Investigative and practical study to generalize decoding and manual validation of ASN.1 from the cellular network during run time |
title_sort |
making asn.1 (abstract syntax notation one) human-readable : investigative and practical study to generalize decoding and manual validation of asn.1 from the cellular network during run time |
publisher |
Luleå tekniska universitet, Institutionen för system- och rymdteknik |
publishDate |
2018 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-67595 |
geographic |
Arctic |
geographic_facet |
Arctic |
genre |
Arctic |
genre_facet |
Arctic |
op_relation |
http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-67595 |
op_rights |
info:eu-repo/semantics/openAccess |
_version_ |
1766349239135240192 |