Upload
marcinstachniuk
View
959
Download
2
Embed Size (px)
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.
Citation preview
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
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 .
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
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.
Historia i przyczyny powstnia
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
Sieci, a właściewie - Pikosieci
• Master
• Slave
• Master/Slave
• Bridge
• Scatternet
Sieci, a właściewie - Pikosieci
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)
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.
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.
Struktura logiczna systemu Bluetooth – stos protokołów
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
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”
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
Pakiet JSR-82
• Przypadki użycia
• Rozgałęzienie na aplikacje typu:
o Klient
o Serwer
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
Pakiet JSR-82
• Wyszukiwanie urządzeo • Wyszukiwanie usług
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
Aplikacja
Serwer
Aplikacja
Klient
Aplikacja
Klient
Aplikacja
Klient
Aplikacja
Klient
Aplikacja
Wysyłanie i odbieranie danych
Aplikacja
Wysyłanie i odbieranie danych
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
Bibliotek obsługi bluetooth
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