Forum: Mikrocontroller und Digitale Elektronik Funkverschlüsselung


von E23C (Gast)


Lesenswert?

Hallo zusammen,

ich habe mal eine Frage, und weiss ehrlich gesagt nicht, wo sie genau 
hingehört. Ich entwickle gerade einen eigenen Bus auf RS485-Basis. 
Soweit alles super und es funktioniert auch alles einwandfrei. Zur 
EIngabe nutze ich zu einen Taster und zum anderen einen Handsender auf 
RFM12 Basis. Nun habe ich aber das Problem, dass ich irgendwie ein 
Verschlüsselungskonzept vorsehen möchte, damit nicht jeder meine Lampe 
anmachen kann. Habe jetzt überlegt ob symetrisches oder asymetrisches 
System, wobei ich bei beiden das Problem habe, dass sobald jemand einen 
Steuerstring ausgelesen hat, er nichtmal weiss, was es bedeutet. Durch 
einfaches Wiederholen würde der Busempfänger die Aktion ausführen. Jetzt 
überlege ich schon seit 2 Tagen, wie ich das am besten machen kann. Aber 
leider fällt mir nichts ein. Hat einer von euch eine kleine Idee, in 
welche RIchtung ich mich mal umschauen sollte.

Das einzige was mir dazu einfällt, ist dass ich ein dynamischen 
Schlüssel verwende, den ich mit jedem Senden veränder. Aber dann habe 
ich auch wieder eine primitive Periode mit drinne, nach der sich der 
Schlüssel wiederholt. Und man könnte ja dann durch ein dauerhaftes 
Senden irgendwann mal an der Reihe sein.

Weiss auch nicht, ob ich im richtigen Forum gelandet bin. :D

Noch eine kleine Frage zum RFM12, welche Entfernungen habt ihr damit 
schon erfolgreich überbrückt? Ich habe bisher beide nur auf einem 
Steckbrett in der ENtfernung von 5 cm :D

Wäre über ein paar Ideen sehr dankbar.

Einen schönen Abend

@Admin: Sollte ein anderes Forum besser passen, dann verschieb' bitte 
den Thread

von Bruce S. (Gast)


Lesenswert?

Timestamp mit rein, prüfen ob empfangener timestamp > dem letzten ist 
und einen MAC nutzen: 
http://de.wikipedia.org/wiki/Message_Authentication_Code

von Lukas K. (carrotindustries)


Lesenswert?

So spontan fällt mir die 
http://de.wikipedia.org/wiki/Challenge-Response-Authentifizierung ein, 
du hast ja eine bidirektionale Funkbrücke, insofern sollte das ein 
Mindestmaß an Sicherheit bieten.

von Charly B. (charly)


Lesenswert?

moin Mr. E23C
mal eine gegenfrage, wer denkst du wird dein signal empfangen
und 'nachmachen' ?

der RFM kannst du schmalbandig einstellen eine 'unuebliche'
Freq. verwenden und den RFM in der Leistung so stellen das
er nur so stark sendet wie noetig, obwohl du in Gebaeuden
sowieso nach 20-30 m (oder weniger) schluss ist

Lohnt es sich da ueber eine verschluesselung nachzudenken ?

vlG
Charly

von Marcus (Gast)


Lesenswert?

E23C schrieb:
> Das einzige was mir dazu einfällt, ist dass ich ein dynamischen
> Schlüssel verwende, den ich mit jedem Senden veränder. Aber dann habe
> ich auch wieder eine primitive Periode mit drinne, nach der sich der
> Schlüssel wiederholt. Und man könnte ja dann durch ein dauerhaftes
> Senden irgendwann mal an der Reihe sein.

So ähnlich funktioniert auch der Rollingcode
http://de.wikipedia.org/wiki/Rollingcode
Gilt aber nicht mehr als sicher, aber ich vermute du willst das eh nur 
machen, um etwas dazu zu lernen, richtig?

von Nosnibor (Gast)


Lesenswert?

Der Empfänger will also sicherstellen, daß die Nachricht aktuell und 
authentisch ist. Letzteres kann sehr einfach sein, wenn die Nachricht + 
Prüfsumme in die Blockgröße eines symmetrischen 
Verschlüsselungsalgorithmus' paßt. Für ersteres (proof of liveliness) 
nimmt man normalerweise ein challenge-response-Verfahren, d.h. der 
Empfänger schickt dem Sender eine Bitfolge, die er bisher noch nicht 
verwendet hat, und der Sender muß diese Bitfolge zusammen mit seiner 
Nachricht authentisch bestätigen, also z.B. mit dem geheimen Schlüssel 
verschlüsseln oder einen MAC darüber bilden.

Wenn man nur in eine Richtung kommunizieren kann (also der Empfänger 
kann tatsächlich nur empfangen), muß die challenge aus einer anderen 
Quelle kommen. Datum&Uhrzeit wäre eine Möglichkeit. Beliebt ist auch ein 
Zähler, wobei man dazu Sender und Empfänger einmal synchronisieren muß. 
Und der Sender darf nicht zu oft "ins Leere" senden und dabei Nummern 
"verbrauchen", bevor er wieder in Reichweite kommt, sonst glaubt ihm der 
Empfänger nicht.

von Martin (Gast)


Lesenswert?

Ich habe es mal so angedacht.

Sender
Zufalsgenerator z.B 8
1Byte*8
Das Byte wird dan an Sender2 gesendet.

Empfänger
Zufalsgenerator z.B 4
Das Empfangene byte*4


Das Byte vom empfänger geht zurück an den Sender dort wird dann durch 8 
geteilt wegen dem Zufalsgenerator.

Sender schickt zum Empfänger und der Empfänger teilt das byte druch 4
jetzt hat der Empfänger wieder das richtige byte..

beim mithören dürfte es jetzt schwer sein etwas Sinvolles zu sehen
Nachteil lange laufzeit.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.