13.01.2014 Aufrufe

PDF 941kB - Hochschule Ulm

PDF 941kB - Hochschule Ulm

PDF 941kB - Hochschule Ulm

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Implementierung<br />

Die RSACryptoServiceProvider Klasse aus dem .NET Framework Namespace System<br />

.Security.Cryptography bietet aber auch weitere Methoden an. So können beispielsweise<br />

SignData() oder VerifyData() genutzt werden um Daten zu Signieren oder digitalen<br />

Signaturen zu überprüfen, wie im weiteren Verlauf gezeigt wird.<br />

7.4 Umsetzung der Peer-To-Peer Kommunikation<br />

Um die Peer-To-Peer Kommunikation zwischen dem Reader und der App zu realisieren,<br />

wurde die Klasse Nfc erstellt. Diese Klasse ist ein Wrapper, um die Klasse<br />

ProximityDevice aus dem Namespace Windows.Networking.Proximity zu kapseln und<br />

um eine einfache Bedienung nach außen bereitzustellen. Die ProximitDevice Klasse ist<br />

in der WinRT und WinPRT verfügbar, sodass der gesamte Code der Klasse Nfc portabel<br />

ist. In Abbildung 27 zunächst ein Klassendiagramm.<br />

Nfc<br />

- FirstMessageToSend : NdefMessage<br />

- MessageId : long<br />

- ProximityDevice : ProximityDevice<br />

- SendsFirstMessage : bool<br />

+ DeviceDepartedDelegate : DeviceDeparted<br />

+ MessageReceivedDelegate : MessageReceived<br />

- DeviceArrivedHandler(ProximityDevice) : void<br />

- DeviceDepartedHandler(ProximityDevice) : void<br />

- MessageReceivedHandler(ProximityDevice, ProximityMessage) : void<br />

- MessageTransmittedHandler(ProximityDevice, long) : void<br />

+ Nfc()<br />

+ Nfc(NdefMessage)<br />

+ SendMessage(NdefMessage) : void<br />

Abbildung 27: Klassendiagramm der Klasse Nfc.<br />

Wie erkennbar ist, ist der Konstruktor überladen. D.h. es kann ein Objekt von der<br />

Klasse Nfc erzeugt werden, durch Übergabe von einem oder keinem Parameter. Dies ist<br />

ein wichtiger Punkt, von dem sich der Reader von der App unterscheidet. Der Reader<br />

übergibt einen Parameter, nämlich ein NdefMessage Objekt mit einem NdefUriRecord<br />

mit der URI NfcApp:HelloFromReader, wie Listing 4 zeigt.<br />

1 this . nfc = new Nfc ( new NdefMessage () { new NdefUriRecord () {<br />

Id = id , Uri = " NfcApp : HelloFromReader " } });<br />

Listing 4: Erzeugen eines Objekts der Klasse Nfc im Reader.<br />

Durch Übergeben eines NdefMessage Objekts wird die Variable SendsFirstMessage<br />

auf true gesetzt. Dadurch wird festgelegt, dass der Reader als erstes beginnt eine<br />

Nachricht zu senden. Des Weiteren wird der übergebene Parameter der Klassenvaria-<br />

51

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!