SlideShare a Scribd company logo
1 of 30
Download to read offline
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

More Related Content

Similar to 06 Bluetooth, zaprojektowany aby "zjednoczyć"

PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...
PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...
PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...PROIDEA
 
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego kodu
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego koduPLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego kodu
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego koduPROIDEA
 
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPROIDEA
 
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...PROIDEA
 
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...Gawel Mikolajczyk
 
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...PROIDEA
 
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...PROIDEA
 
PLNOG 4: Paweł Andrejas - Onet Moduły
PLNOG 4: Paweł Andrejas - Onet ModułyPLNOG 4: Paweł Andrejas - Onet Moduły
PLNOG 4: Paweł Andrejas - Onet ModułyPROIDEA
 
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimy
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimyPLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimy
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimyPROIDEA
 
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...PROIDEA
 
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów ITPiotr Pietrzak
 
PLNOG 3: Łukasz Bromirski - Budowa sieci multicast
PLNOG 3: Łukasz Bromirski - Budowa sieci multicastPLNOG 3: Łukasz Bromirski - Budowa sieci multicast
PLNOG 3: Łukasz Bromirski - Budowa sieci multicastPROIDEA
 
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie III
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie IIISieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie III
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie IIIWydawnictwo Helion
 
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PROIDEA
 

Similar to 06 Bluetooth, zaprojektowany aby "zjednoczyć" (20)

PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...
PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...
PLNOG 18 - Andrzej Karpiński - Sieć #1 - działania i znaczenie bezpieczeństwa...
 
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego kodu
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego koduPLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego kodu
PLNOG19 - Sebastian Pasternacki - Wykrywanie złośliwego kodu
 
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
 
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...
PLNOG 18 - Jarosław Ulczok - Podsłuchać światłowód? Przezentacja LIVE + zasto...
 
Sieci komputerowe
Sieci komputeroweSieci komputerowe
Sieci komputerowe
 
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...
Security B-Sides Warsaw 2013 - Masywna Telemetria NetFlow jest Masywna - Gawe...
 
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...
PLNOG 5: Piotr Wojciechowski - Budowa głosowych usług operatorskich z zastoso...
 
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
 
PLNOG 4: Paweł Andrejas - Onet Moduły
PLNOG 4: Paweł Andrejas - Onet ModułyPLNOG 4: Paweł Andrejas - Onet Moduły
PLNOG 4: Paweł Andrejas - Onet Moduły
 
6
66
6
 
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimy
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimyPLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimy
PLNOG 4: Przemysław Frasunek - CDN w Polsce - czyli jak my to robimy
 
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...
PLNOG 13: Andrzej Karpiński: Mechanizmy ochrony anty-DDoS stosowanych w Tele...
 
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT
[PL] Chmura hybrydowa - w poszukiwaniu zewnętrznych zasobów IT
 
PLNOG 3: Łukasz Bromirski - Budowa sieci multicast
PLNOG 3: Łukasz Bromirski - Budowa sieci multicastPLNOG 3: Łukasz Bromirski - Budowa sieci multicast
PLNOG 3: Łukasz Bromirski - Budowa sieci multicast
 
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie III
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie IIISieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie III
Sieci komputerowe. Od ogółu do szczegółu z internetem w tle. Wydanie III
 
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
 
Sieci full
Sieci fullSieci full
Sieci full
 
Sieci full
Sieci fullSieci full
Sieci full
 
Sieci full
Sieci fullSieci full
Sieci full
 
1
11
1
 

More from MarcinStachniuk

GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademy
GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademyGraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademy
GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademyMarcinStachniuk
 
Wroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in JavaWroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in JavaMarcinStachniuk
 
[DevCrowd] GraphQL - gdy API RESTowe to za mało
[DevCrowd] GraphQL - gdy API RESTowe to za mało[DevCrowd] GraphQL - gdy API RESTowe to za mało
[DevCrowd] GraphQL - gdy API RESTowe to za małoMarcinStachniuk
 
GraphQL - gdy API RESTowe to za mało
GraphQL - gdy API RESTowe to za małoGraphQL - gdy API RESTowe to za mało
GraphQL - gdy API RESTowe to za małoMarcinStachniuk
 
BruJUG Brussels GraphQL when RESR API is to less - lessons learned
BruJUG Brussels GraphQL when RESR API is to less - lessons learnedBruJUG Brussels GraphQL when RESR API is to less - lessons learned
BruJUG Brussels GraphQL when RESR API is to less - lessons learnedMarcinStachniuk
 
[WroclawJUG] Continuous Delivery in OSS using Shipkit
[WroclawJUG] Continuous Delivery in OSS using Shipkit[WroclawJUG] Continuous Delivery in OSS using Shipkit
[WroclawJUG] Continuous Delivery in OSS using ShipkitMarcinStachniuk
 
Continuous Delivery in OSS using Shipkit.org
Continuous Delivery in OSS using Shipkit.orgContinuous Delivery in OSS using Shipkit.org
Continuous Delivery in OSS using Shipkit.orgMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
 
GraphQL - when REST API is not enough - lessons learned
GraphQL - when REST API is not enough - lessons learnedGraphQL - when REST API is not enough - lessons learned
GraphQL - when REST API is not enough - lessons learnedMarcinStachniuk
 
Java Web Start – jak żyć z tą dziwną technologią
Java Web Start – jak żyć z tą dziwną technologiąJava Web Start – jak żyć z tą dziwną technologią
Java Web Start – jak żyć z tą dziwną technologiąMarcinStachniuk
 
Zarządzanie zmianami w schemacie relacyjnych baz danych
Zarządzanie zmianami w schemacie relacyjnych baz danychZarządzanie zmianami w schemacie relacyjnych baz danych
Zarządzanie zmianami w schemacie relacyjnych baz danychMarcinStachniuk
 
Inicjatywa NoSQL na przykładzie db4o
Inicjatywa NoSQL na przykładzie db4oInicjatywa NoSQL na przykładzie db4o
Inicjatywa NoSQL na przykładzie db4oMarcinStachniuk
 
Automatic mechanism data migration between relational and object database
Automatic mechanism data migration between relational and object databaseAutomatic mechanism data migration between relational and object database
Automatic mechanism data migration between relational and object databaseMarcinStachniuk
 
Zastosowanie obiektowych baz danych na przykładzie db4o
Zastosowanie obiektowych baz danych na przykładzie db4oZastosowanie obiektowych baz danych na przykładzie db4o
Zastosowanie obiektowych baz danych na przykładzie db4oMarcinStachniuk
 

More from MarcinStachniuk (20)

GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademy
GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademyGraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademy
GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademy
 
Wroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in JavaWroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in Java
 
[DevCrowd] GraphQL - gdy API RESTowe to za mało
[DevCrowd] GraphQL - gdy API RESTowe to za mało[DevCrowd] GraphQL - gdy API RESTowe to za mało
[DevCrowd] GraphQL - gdy API RESTowe to za mało
 
GraphQL - gdy API RESTowe to za mało
GraphQL - gdy API RESTowe to za małoGraphQL - gdy API RESTowe to za mało
GraphQL - gdy API RESTowe to za mało
 
BruJUG Brussels GraphQL when RESR API is to less - lessons learned
BruJUG Brussels GraphQL when RESR API is to less - lessons learnedBruJUG Brussels GraphQL when RESR API is to less - lessons learned
BruJUG Brussels GraphQL when RESR API is to less - lessons learned
 
[WroclawJUG] Continuous Delivery in OSS using Shipkit
[WroclawJUG] Continuous Delivery in OSS using Shipkit[WroclawJUG] Continuous Delivery in OSS using Shipkit
[WroclawJUG] Continuous Delivery in OSS using Shipkit
 
Continuous Delivery in OSS using Shipkit.org
Continuous Delivery in OSS using Shipkit.orgContinuous Delivery in OSS using Shipkit.org
Continuous Delivery in OSS using Shipkit.org
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learnedGraphQL - when REST API is to less - lessons learned
GraphQL - when REST API is to less - lessons learned
 
GraphQL - when REST API is not enough - lessons learned
GraphQL - when REST API is not enough - lessons learnedGraphQL - when REST API is not enough - lessons learned
GraphQL - when REST API is not enough - lessons learned
 
Java Web Start – jak żyć z tą dziwną technologią
Java Web Start – jak żyć z tą dziwną technologiąJava Web Start – jak żyć z tą dziwną technologią
Java Web Start – jak żyć z tą dziwną technologią
 
Zarządzanie zmianami w schemacie relacyjnych baz danych
Zarządzanie zmianami w schemacie relacyjnych baz danychZarządzanie zmianami w schemacie relacyjnych baz danych
Zarządzanie zmianami w schemacie relacyjnych baz danych
 
Inicjatywa NoSQL na przykładzie db4o
Inicjatywa NoSQL na przykładzie db4oInicjatywa NoSQL na przykładzie db4o
Inicjatywa NoSQL na przykładzie db4o
 
Automatic mechanism data migration between relational and object database
Automatic mechanism data migration between relational and object databaseAutomatic mechanism data migration between relational and object database
Automatic mechanism data migration between relational and object database
 
Zastosowanie obiektowych baz danych na przykładzie db4o
Zastosowanie obiektowych baz danych na przykładzie db4oZastosowanie obiektowych baz danych na przykładzie db4o
Zastosowanie obiektowych baz danych na przykładzie db4o
 
Wprowadzenie do J2ME
Wprowadzenie do J2MEWprowadzenie do J2ME
Wprowadzenie do J2ME
 

06 Bluetooth, zaprojektowany aby "zjednoczyć"

  • 1.
  • 2. 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
  • 3. 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 .
  • 4. 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
  • 5. 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.
  • 7. 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
  • 8. Sieci, a właściewie - Pikosieci • Master • Slave • Master/Slave • Bridge • Scatternet
  • 9. Sieci, a właściewie - Pikosieci
  • 10. 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)
  • 11. 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.
  • 12. 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.
  • 13. Struktura logiczna systemu Bluetooth – stos protokołów
  • 14. 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
  • 15. 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”
  • 16. 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
  • 17. Pakiet JSR-82 • Przypadki użycia • Rozgałęzienie na aplikacje typu: o Klient o Serwer
  • 18. 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
  • 19. Pakiet JSR-82 • Wyszukiwanie urządzeo • Wyszukiwanie usług
  • 20. 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
  • 21. Aplikacja Serwer
  • 22. Aplikacja Klient
  • 23. Aplikacja Klient
  • 24. Aplikacja Klient
  • 25. Aplikacja Klient
  • 26. Aplikacja Wysyłanie i odbieranie danych
  • 27. Aplikacja Wysyłanie i odbieranie danych
  • 28. 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
  • 30. 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