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...

Full description

Bibliographic Details
Main Author: Jilläng, Emil
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