Pi Digit Generation Protocol
Das Pi Digit Generation Protocol ist ein Netzwerkprotokoll, das das Abrufen von Ziffern der Kreiszahl Pi (π) über Netzwerke ermöglichen soll. Es ist im RFC 3091 spezifiziert. Federführend bei der Entwicklung war Hugh Kennedy von der University of Michigan.
Technisches
Vorgesehen ist, dass ein Server auf TCP-Port 314159 wartet, und Anfragen mit dem sequentiellen Senden der Nachkommastellen von Pi reagiert (also 1, 4, 1, 5, 9, 2, 6 usw.) . Optional kann, als Näherung, auf Port 220007 die Ziffern der gleichenden Dezimalzahl angeboten werden. Ein weiter optionaler Zusatz ist ein UDP-Diest auf port 314159, der auf Anfrage eine bestimmte Ziffer, wie sie der Client dur angabe einer Position spezifiziert hat, antwortet. An die IP-Multicast-Adresse 314.159.265.359 kan als weiterer Zusatz von einem willigen Server ein Strom von Pi-Ziffern gesendet werden, falls diese Rolle nicht ein anderer Server bereits übernommen hat. SRV Resource Records können unter dem namen pigen
protokollgerechte Server listen.
Anwendungen
Der RFC empfiehlt nachdrücklich, nur als vertrauenswürdig bekannte pigen-Server zu verwenden, da fehlerhafte oder gar absichtlich verfälschende Server je nach Anwendung fatale Auswirkungen haben könne. So ist beim Einsatz in der Kryptographie besondere Vorsicht geboten.[1]
Implementierung
In Sektion 1.1 des RFC werden ohne Anspruch auf Vollständigkeit Methoden zur bestimmung der Ziffern vorgeschlagen: Nachschlagen, numerische Verfahren und Auswahlverfahren. Dabei sollen aber Abweichungen ausgeschlossen sein.
Da Portnummern 314159 und 220007, sowie die IP-Adresse 314.159.265.359 vorherrschenden Standards (16-bit Portnummern, IPv4-Oktette) zuwiderlaufenden, was sich aus dem Entsehungsdatums des Standards (1. April 2001) erklären lässt, weichen Impementierungen üblicherweise von diesen Werten ab.
Als de-facto Standard hat sich die freie, für mehrere Platformen verfügbare Programmsuite gpigen, ausgestattet mit Server und Client, geschrieben in C++, herausgebildet. Der Chefentwickler ist Hideki Shirafuji. Es läuft auf den Ports 50735 bzw. 23399.
Einzelnachweise
- ↑ Chad Boutin: Pi seems a good random number generator – but not always the best. Purdue University, 26. April 2005