06 bluetooth, zaprojektowany aby "zjednoczyć"
DESCRIPTION
Prezentacja wprowadzająca do korzystania z Bluetooth'a w j2me. Przygotowana i wygłoszona przez Przemysława Bieruta 03.12.2009.Prezentacja wygłoszona w ramach Warsztatów programowania telefonów komórkowych w j2me przy Studenckim Kole Naukowym Informatyki Systemów Autonomicznych i Adaptacyjnych ISA^2.TRANSCRIPT
![Page 1: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/1.jpg)
![Page 2: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/2.jpg)
Plan prezentacji
1. Pochodzenie nazwy
2. Historia i przyczyny powstania
3. Zastosowania
4. Sieci
5. Profile
6. Warstwy
7. Bezpieczeostwo i zagrożenia
8. Netbeans
9. Aplikacja serwer-klient
10. Przykładowe aplikacje
11. Biblioteka obługi
12. Podsumowanie
![Page 3: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/3.jpg)
Pochodzenie nazwy
Nazwa technologii pochodzi od przydomka króla duoskiego Haralda Sinozębego (Blåtand), który ok. roku 970 podporządkował sobie Norwegię i tym samym przyczynił się do zjednoczenia rywalizujących plemion z Danii i Norwegii. Podobnie Bluetooth, który został zaprojektowany, aby "zjednoczyd" różne technologie jak: komputery, telefonię komórkową, drukarki, aparaty cyfrowe. Logo Bluetooth łączy znaki alfabetu runicznego (Haglaz) i ( (Berkanan), będące odpowiednikami liter alfabetu łacioskiego H i B .
![Page 4: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/4.jpg)
Pochodzenie nazwy
Kamieo runiczny został ustawiony w centrum stolicy, Jelling. Runy głosiły: Harald przeprowadził chrystianizacje Dani Harald kontrolował Danie i Norwegie Harald uważa, że telefony i komputery powinny się płynnie komunikowad
![Page 5: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/5.jpg)
Historia i przyczyny powstnia
• W 1994 roku firma L. M. Ericsson zainteresowała się możliwością łączenia telefonów komórkowych z innymi urządzeniami bez użycia kabla.
• Wspólnie z czterema innymi firmami (IBM, Intel, Nokia i Toshiba) uformowała SIG (ang. Special Interest Group) celem standaryzacji bezprzewodowej technologii cechującej się niewielkim zasięgiem, małym poborem prądu, niskim poziomem mocy promieniowanej oraz niską ceną.
• Pierwotny zamiar wyeliminowania kabli połączeniowych szybko przekształcił się w prace na obszarze bezprzewodowych sieci LAN. Dzięki temu standard stał się bardziej praktyczny i stał się konkurencją dla standardu 802.11.
![Page 6: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/6.jpg)
Historia i przyczyny powstnia
![Page 7: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/7.jpg)
Zastosowania
• Przeysłanie plików
• Sieci ad-hoc
• Synchronizacja urządzeo
• Połączenia z urządzeniami peryferialnymi
• Urządzenia samochodowe
• Płatności mobilne
• Kontrola komputera
• Kamera internetowa
![Page 8: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/8.jpg)
Sieci, a właściewie - Pikosieci
• Master
• Slave
• Master/Slave
• Bridge
• Scatternet
![Page 9: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/9.jpg)
Sieci, a właściewie - Pikosieci
![Page 10: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/10.jpg)
Sieci, a właściewie - Pikosieci
Zasięg • Zasięg urządzenia determinowany jest przez klasę mocy: • klasa 1 (100 mW) ma największy zasięg, do 100 m, • klasa 2 (2,5 mW) jest najpowszechniejsza w użyciu, zasięg do 10 m • klasa 3 (1 mW) rzadko używana, z zasięgiem do 1 m.
Transfer • Bluetooth 1.0 - 21 kb/s • Bluetooth 1.1 - 124 kb/s • Bluetooth 1.2 - 328 kb/s • Bluetooth 2.0 - transfer maksymalny przesyłania danych na poziomie 2,1
Mb/s, wprowadzenie Enhanced Data Rate wzmocniło transfer do 3,1 Mb/s • Bluetooth 3.0 + HS (High Speed) - 24 Mbps (3 MB/s) • Bluetooth 3.1 + HS (High Speed pluss) (5 MB/s)
![Page 11: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/11.jpg)
Sieci, a właściewie - Pikosieci
• Kod dostępu, który identyfikuje mastera, tak aby slave znajdujący się w zasięgu dwóch urządzeo master mógł określid, do którego odbywa się transmisja.
• Pole adres nagłówka identyfikuje jedno z ośmiu aktywnych urządzeo, dla którego przeznaczona jest ramka.
• Pole typ określa typ ramki (ACL, SCO, pool albo null), rodzaj korekcji błędów używany w polu danych oraz liczbę slotów w ramce.
• Pole Flow jest ustawiane przez slave, gdy jego bufory są pełne i nie może on przyjąd więcej danych.
• Bit Acknowledgement jest potwierdzeniem transmisji. • Bit Sequence jest używany w celu numeracji ramek aby wykryd retransmisje. • Ostatnie 8 bitów to suma kontrolna. • 18 bitów nagłówka są powtarzane trzy razy dając w efekcie nagłówek 54 bitowy. Po
stronie odbiorczej prymitywny układ sprawdza wszystkie trzy kopie każdego bitu.
![Page 12: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/12.jpg)
Profile
• K1 - ogólny profil dostępu GAP (Generic Access Profile) • K2 - profil aplikacji wykrywania usług SDAP • K3 - profil dla telefonii bezprzewodowej CTP (Cordless Telephony Profile) • K4 - profil dla bezprzewodowej komunikacji wewnętrznej IntP (Interkom
Profile) • K5 - profil wirtualnego portu szeregowego SPP (Serial Port Profile) • K6 - profil dla bezprzewodowego zestawu słuchawkowego HP • K7 - profil usług modemowych DUN (Dial-up Networking Profile) • K9 - profil dostępu do sieci lokalnej LA (LAN Access Profile) • K10 - ogólny profil wymiany danych w postaci obiektów GOEP (Generic
Object Exchange Profile) • K11 - profil przesyłania obiektów OPP (Object Push Profile) • K12 - profil przesyłania plików FTP (File Transfer Profile) • K13 - profil synchronizacji danych SP (Synchronization Profile)
Bluetooth 2.0 wprowadza kolejne 13 profili.
![Page 13: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/13.jpg)
Struktura logiczna systemu Bluetooth – stos protokołów
![Page 14: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/14.jpg)
Bezpieczeostwo
• Proces „parowania” urządzeo (Bluetooth Pairing) przed
rozpoczęciem transmisji oparty o kod PIN (4-16 cyfr)
• Uwierzytelnianie –algorytm SAFER+
• Szyfrowanie połączeo–algorytm E0
• Możliwośd „ukrycia” urządzenia (non-discoverablemode)
• Mały zasięg
• Częste przeskoki międzykanałowe
![Page 15: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/15.jpg)
Zagrożenia
• BlueJack–wysyłanie wiadomości do widocznych urządzeobędących w zasięgu, rozsyłanie SPAMu, wirusów. Wiadomości sąwysyłane jako wizytówki.
• BlueSnarf–atak wykorzystuje brak uwierzytelniania przy przesyłaniu obiektów przez profil OPP na niektórych telefonach. Umożliwia uzyskanie książki adresowej, zdjędczy wpisów z terminarza telefonu ofiary.
• BlueBug–umożliwia wykonywanie połączeo, wysyłanie SMSówi korzystanie z Internetu z telefonu ofiary bez jej wiedzy. Bazuje na połączeniu szeregowym profilu SPP obsługującym
• BlueSmack–atak typu DoSbazujący na wysyłaniu wiadomości protokołu L2CAP z żądaniem odpowiedzi (echo request)
• BlueBump–umożliwia połączenie z telefonem ofiary bez jej wiedzy jeśli wcześniej istniało uwierzytelnione połączenie. Jego działanie polega na manipulacji przechowywaniem klucza połączenia (link key).
• aplikacja typu Car Whisperer–umożliwia korzystanie z bezprzewodowego samochodowego zestawu głośnomówiącego ofiary (odbieranie danych dźwiękowych z mikrofonów, wysyłanie dźwięku do głośników). Bazuje na standardowych kodach PIN („0000”) i zestawach, które nie są„sparowane”
![Page 16: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/16.jpg)
Netbeans a bluetooth
Po dołączeniu platformy: Sun Java(TM) Wireless Toolkit 2.5.2_01 for CLDC do środowiska netbeans możemy zedytowad klika ustawieo, które ułatwiają testowanie i dalszą pracę nad kodem Dostajemy w posiadnie wirtualną sied urządzeo mobilnych – korzyści i wady
![Page 17: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/17.jpg)
Pakiet JSR-82
• Przypadki użycia
• Rozgałęzienie na aplikacje typu:
o Klient
o Serwer
![Page 18: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/18.jpg)
Pakiet JSR-82
Serwer:
• Stworzenie usługi
• Ogłoszanie i oczekiwanie
na połączenie
• Obsługa połączenia
Client:
• Wyszukiwanie urządzeo
• Wyszukiwanie usług
• Obsługa połączenia
![Page 19: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/19.jpg)
Pakiet JSR-82
• Wyszukiwanie urządzeo • Wyszukiwanie usług
![Page 20: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/20.jpg)
Pakiet JSR-82
The URL format for an L2CAPConnection:
btl2cap://hostname:[PSM | UUID];parameters
The URL format for an RFCOMMStreamConnection: btspp://hostname:[CN | UUID];parameters
![Page 21: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/21.jpg)
Aplikacja
Serwer
![Page 22: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/22.jpg)
Aplikacja
Klient
![Page 23: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/23.jpg)
Aplikacja
Klient
![Page 24: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/24.jpg)
Aplikacja
Klient
![Page 25: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/25.jpg)
Aplikacja
Klient
![Page 26: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/26.jpg)
Aplikacja
Wysyłanie i odbieranie danych
![Page 27: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/27.jpg)
Aplikacja
Wysyłanie i odbieranie danych
![Page 28: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/28.jpg)
Przykładowe aplikacje
1. Sterowanie komputerem • BlueSoleil • MobileWitch Remote Control • mOOo IC • Pilot 2. Korzystanie z zasobów innych urządzeo • BT File Manager • Medieval Bluetooth File Transfer • Super Bluetooth Hack 3. Wysyłanie wiadomości tekstowych • BT Spammer • Gadu-Gadu 4. Telefon jako kamera internetowa • WWIGO • Mobiola Web Camera • SmartCam
![Page 29: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/29.jpg)
Bibliotek obsługi bluetooth
![Page 30: 06 Bluetooth, zaprojektowany aby "zjednoczyć"](https://reader034.vdocuments.pub/reader034/viewer/2022051820/553876384a7959f66c8b4736/html5/thumbnails/30.jpg)
Zakooczenie
Dziękuję za uwagę!
Pytania?
Materiały: • http://developers.sun.com/mobility/apis/articles/bluetoothintro/index.html • http://developers.sun.com/mobility/midp/articles/bluetooth2/ • http://developers.sun.com/mobility/midp/articles/bluetooth1/ • http://pl.wikipedia.org/wiki/Bluetooth