Diese Zahlen werden in verschiedenen Bereichen der Codierungs-
und Informations-Theorie benötigt.
Siehe hierzu Projekte zum Thema Verschlüsseln, Codieren bzw.
Primzahlenberechnung.
Um ein konkretes Beispiel zu nennen, soll hier der PGP - Algorithmus
erwähnt werden.
Dieser beruht, (wie bekannt), auf 2 (nach Möglichkeit sehr langen)
Primzahlen, mit denen verschiedene mathematische Operationen im
Verlauf der Ver- bzw. Entschlüsselung durchgeführt werden.
Allgemein kann gesagt werden, daß alle asymetrischen
Chiffrierungs-Verfahren lange Ganzzahlen meist in Form von
einer oder mehrerer Primzahlen benötigen.
Aus diesem Grund benötigt man dann wieder bestimmte,
mathematische Routinen, um mit diesen Zahlen etwas zu chifrieren.
Bei der Darstellung von langen Ganzzahlen ("Integer-Zahlen")
ergeben sich verschiedene Probleme:
- Es muß ein Weg gefunden werden, wie sie abgespeichert werden können,
da für solche Zahlen, die normalen Datentypen wie Char (8-Bit),
Integer (16-Bit) bzw. Long (32-Bit) nicht mehr ausreichen.
- Alle mathematischen Funktionen wie z.B. Addition, Subtraktion,
Multiplikation usw. müssen neu implementiert werden,
da diese nur für die normalen Datentypen definiert sind.
- In Folge des neuen Datenformats, sind noch Funktionen erforderlich,
die es ermöglichen, Zahlen einzugeben, sowie Ergebnisse der
mathematischen Operationen wieder auszugeben.
- Die ganzen Berechnungen sollen möglichst schnell erfolgen,
egal wie lange die einzelnen miteinander mathematisch zu
verknüpfenden Zahlen sind.
- Es ist vorgegeben, daß die Funktionen zur Rechnung
mit diesen langen Zahlen in einer portablen Programmiersprache als
wiederverwendbare Funktionen realisiert werden sollten.