Czytam Bluetooth Low Energy: Podręcznik programisty i myliłem się z ochroną przed MITM.W jaki sposób klucz Bluetooth chroni przed atakiem MITM
Książka mówi, że po przekazaniu informacji dotyczących parowania generowana jest po obu stronach losowa liczba. Wraz z tą liczbą losową obliczana jest wartość potwierdzenia. Wartość potwierdzenia jest następnie wymieniana między obiema stronami, po czym następuje ujawnienie losowej liczby.
Wymieniane wiadomości są podobne do parowania.
[Apr 25 18:04:43.919] [SMP Send] LE SMP Pairing Request Command
[Apr 25 16:53:09.005] [SMP Receive] LE SMP Pairing Response Command
[Apr 25 16:53:09.019] [SMP Send] LE SMP Pairing Confirm Command
[Apr 25 16:53:14.016] [SMP Receive] LE SMP Pairing Confirm Command
[Apr 25 16:53:14.017] [SMP Send] LE SMP Pairing Random Command
[Apr 25 16:53:14.076] [SMP Receive] LE SMP Pairing Random Command
Książka twierdzi, że ta zapobiega MiTM od atakowania bo MITM musiałby odgadnąć 2^128 możliwych liczb losowych w celu obliczenia wysokości potwierdzić.
Moje pytanie brzmi, jak to pomaga zapobiec atakowi MITM. Mam na myśli, że jeśli jestem MITM, po prostu przekazałbym numer potwierdzenia z jednego końca do drugiego bez potrzeby obliczania.
Jestem pewna, że coś przeoczyłem.
Przepraszam za odpowiedź z linkiem, ale ciężko jest podsumować wideo: http://www.wimp.com/howencryption/ –
@JeremyJStarcher: Z opisu procedury (losowa liczba ujawniona jest w koniec) nie brzmi jak wymiana kluczy Diffiego-Hellmana. – Perseids
Powiązane: http://stackoverflow.com/a/18087908/371137 – Perseids