Bibliographic Metadata

Title
Langzahlbibliotheken - Vergleich von vier Langzahlbibliotheken
Additional Titles
Bignum Libraries - A Comparison of four Bignum Libraries
AuthorTaufner, Bernhard
Thesis advisorKoschuch, Manuel
Published2015
Date of SubmissionJanuary 2015
LanguageGerman
Document typeBachelor Thesis
Keywords (DE)C-Bibliothek / Datenstruktur / Langzahlen
Keywords (EN)C-Library / Structures / Bignums
Restriction-Information
 _
Classification
Abstract (German)

Diese Arbeit beschäftigt sich mit vier sehr verbreiteten Programmierbibliotheken. Hierbei werden die C-Bibliotheken GMP-Lib, OpenSSL-Lib, MatrixSSL-Lib und die C++-Bibliothek NTL-Lib zuerst mit einigen mathematischen Langzahloperationen vorgestellt. Diese Langzahloperationen sind für kryptographische Verfahren notwendig. Verglichen wird die Langzahldarstellung der Bibliotheken. Hierbei werden zur Langzahldarstellung stets Pointer verwendet. Die C Bibliotheken verwenden zusätzlich noch C-Strukturen für Metadaten. Die NTL-Lib implementiert die Metadaten in Klassen. Ebenfalls wird die Laufzeit der Bibliotheken bei einer einfachen RSA-Implementierung mit unterschiedlich großen Langzahlen gemessen. Es stellt sich heraus, dass die GMP-Lib die Implementierung am schnellsten abarbeitet, gefolgt von der NTL-Lib, OpenSSL-Lib und MatrixSSL-Lib. Als letzter Punkt wird die Usability der Bibliotheken verglichen. Die Bibliotheken werden aufgrund von Kriterien wie Lesbarkeit des Codes, konsequente und nachvollziehbare Namensgebung sowie Menge der zur Verfügung gestellten Funktionen bewertet. Hierbei werden Punkte vergeben und es stellt sich heraus, dass die NTL-Lib gefolgt von der GMP-Lib, OpenSSL-Lib und MatrixSSL-Lib die beste Usability aufweist.

Abstract (English)

This work is about four very widely used programming libraries. First the C-Libraries GMP-Lib, OpenSSL-Lib, MatrixSSL-Lib and the C++- Library NTL-Lib and their mathematical bignum-operations were presented. These operations are necessary for cryptographic implementations. The presentations of the bignums were compared. All of them use pointers for the bignum representation. The C-Libraries also use structures for metadata. The NTL-Lib uses classes for the metadata. Next the runtimes of a small RSA-implementation, with different sizes of bignums were measured. The GMP-Lib was the fastest followed by NTL-Lib, OpenSSL-Lib and MatrixSSL-Lib. Last the usability was discussed. The usability was measured by coding conventions, readability, consistent and transparent naming and quantity of available functions. Based on these criteria there were given Points. So the most usable Library was the NTL-Lib followed by GMP-Lib, OpenSSL and MatrixSSL Lib.

Stats
The PDF-Document has been downloaded 0 times.