PDF 941kB - Hochschule Ulm
PDF 941kB - Hochschule Ulm
PDF 941kB - Hochschule Ulm
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