Forum: Mikrocontroller und Digitale Elektronik PCM Datenstrom verschlüsseln


von Michael W. (mictronics) Benutzerseite


Lesenswert?

Hallo,

Frage an die Experten hier:

Welche Möglichkeiten würden sich bieten, um einen PCM Datenstrom zu 
verschlüsseln bzw. so zu verändern, das man den Datenstrom ohne 
entsprechende Dekodierung nicht verständlich machen kann?

Der Datenstrom würde mit 1MHz Mastertakt laufen und hat 8KHz Frametakt. 
Ein Frame hat 16 Bit Dateninhalt.

Angestrebter Kontroller wäre ein AVR oder ein ARM7 Core.

/Michael

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Was sit für dich "sicher"? Du könntest einfach die Daten mit einem 
Schlüssel verXodern... Sender und empfänger müssen dann den Schlüssel 
kennen, sosnt gibts Musiksalat ;)

von Matthias L. (Gast)


Lesenswert?

>Schlüssel verXodern

Nennt sich DSSS

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Ziel ist hier ein PCM Stream der Sprache überträgt.

Mir schwebt die Idee vor den PCM Stream in einem alten Nokia Handy zu 
schlüsseln, genauer die PCM zwischem dem COBBA Codec und der CPU.

Das GSM Protokoll hat zwar eine Verschlüsselung implementiert, aber 1. 
sind die Algorythmen eher anfällig und 2. läst sich die Verschlüsselung 
per GSM Kommando gezielt deaktivieren.
Deshalb soll das/die Telefon(e) individuallisiert werden, weg vom 
bekanten Standard.

Ist alles in allem aber bisher nur eine Machbarkeits-Studie.

von Karl-heinz S. (cletus)


Lesenswert?

Die Basis  muss das Verfahren zum Entschlüsseln unterstützen, außer du 
willst Endpunkt-zu-Endpunkt verschlüsseln, wofür du zwei Geräte 
brauchst.

Eine vernünftige Implementation ist aber alles Andere als trivial.

Einfach mal so verXoren z.B. ist mehr als unsicher...

von Peter (Gast)


Lesenswert?

@Karl-heinz Strunk
> infach mal so verXoren z.B. ist mehr als unsicher...
nicht wann das xor stück genau so lang ist(und zufällig) wie der PCM 
Strom das ist es die sichererste Verschlüsselung überhaupt.

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Es soll eine Endpunkt-zu-Endpunkt Verschlüsselung werden, speziell um 
Man-in-the-Middle Attacken zu unterbinden bzw. zu erschweren. (Stichwort 
IMSI-Catcher)

von Karl-heinz S. (cletus)


Lesenswert?

Peter wrote:
> @Karl-heinz Strunk
>> infach mal so verXoren z.B. ist mehr als unsicher...
> nicht wann das xor stück genau so lang ist(und zufällig) wie der PCM
> Strom das ist es die sichererste Verschlüsselung überhaupt.

Ja, sogar beweisbar sicher.

Aber du darfst den Schlüssel NIE zweimal verwenden.

Und er muss zufällig sein. Seed-erzeugt gilt nicht ;-)

von Karl-heinz S. (cletus)


Lesenswert?

Michael Wolf wrote:
> Es soll eine Endpunkt-zu-Endpunkt Verschlüsselung werden, speziell um
> Man-in-the-Middle Attacken zu unterbinden bzw. zu erschweren. (Stichwort
> IMSI-Catcher)

Da soll es schon fertige Software (ich meine sogar GPL) für geben.

Nimm die. Selbstentwicklungen sind (mit vernünftigen Implementationen) 
nicht zeitnah einfach so realisierbar.

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Danke für die Tips.

Stellt sich die Frage, wie man die Endpunkte synchronisieren soll, wenn 
man nie den selben Schlüssel zweimal verwenden darf bzw. der Schlüssel 
zufällig generiert werden muss.

@Karl-Heinz
Hast du einen Link oder Namen für die Software in GPL?

Wikipedia hat einiges zu Stream-Verschlüsselung.
Hab mir mal den RABBIT Algorythmus angeschaut, liese sich damit was 
machen?

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

was ist den Algorythmus für ein Wort?

Meinst du eventuell den Algo-Rhythmus, oder eventuell doch einen 
Algorithmus?


PS: Da du ja weist, wo man die Wikipedia findet, dann frag sie doch mal 
zur Schreibweise deines Wortes ;-)

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Ich bin mal soweit, das ich die PCM Daten bei einem Nokia 5110 abgreifen 
und zum PC schicken kann.

Wenn ich die Daten mit einem RIFF Header (wav-Format) versehe lassen die 
sich am PC auch abspielen, das komische ist nur ich muss die 
Wiedergabegeschwindigkeit halbieren (in VLC), damit die Sprache normal 
klingt.

Tastentöne werden als Klacken wiedergegeben, das liegt vermutlich daran, 
das die CPU intern vielleicht eine Lookup-Table verwendet um den Ton zu 
erzeugen.

Verschieden Einstellungen im RIFF Header ändern irgendwie nix an der 
Wiedergabe.

Hat jemand eine Idee?

Eingestellt habe ich:

Subchunk1Size    16 für PCM
AudioFormat      PCM = 1
NumChannels      Mono = 1
SampleRate       8000
ByteRate         16000 == SampleRate x NumChannels x BitsPerSample/8
BockAlign        2
BitsPerSample    16

Das ganze läuft im Moment mit einem ATmega8 @ 7.3728MHz mit Hilfe der 
SPI, INT0 und RS232 Schnittstelle mit 230400Baud.

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Hmm, interessant ist auch, das Mikrofon ist noch 12 Sekunden aktiv 
nachdem ein Anruf bereits beendet wurde und das Telefon wieder in 
Standby ist.

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.