18
10 november, 2003 UMEÅ UNIVERSITET Institutionen för Tillämpad Fysik och Elektronik Wearable Computers 10p Kapitel till boken Wearable Computers Namn Tomas Englund E-mail [email protected] Handledare: Björne Lindberg, Ulf Brydsten, Lars Karlsson

Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

10 november, 2003 UMEÅ UNIVERSITET

Institutionen för Tillämpad Fysik och Elektronik

Wearable Computers 10p

Kapitel till boken Wearable Computers

Namn Tomas Englund E-mail [email protected]

Handledare: Björne Lindberg, Ulf Brydsten, Lars Karlsson

Page 2: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH INNEHÅLLSFÖRTECKNING

Tomas Englund, [email protected] i 10 november, 2003

Innehållsförteckning 1. Inledning 3 2. Vad är Bluetooth? 4 2.1 Historik.......................................................................................4 2.2 Varför Bluetooth.........................................................................5 2.3 SIG (Special Interest Group) .....................................................5 3. Tekniken bakom Bluetooth 6 3.1 Allmänt.......................................................................................6 3.2 Nätverksarkitektur......................................................................7 3.3 Piconät.......................................................................................7 3.4 Mjukvaruarkitektur .....................................................................8 4. Säkerhet 13 4.1 Säkerhetsklasser .......................................................................14 4.2 Använda en tjänst......................................................................14 5. Bluetooth & Linux 15 5.1 Installation .................................................................................15 5.2 Styra XMMS över Bluetooth .....................................................16 6. Förkortningar 17 7. Källförteckning 18

Page 3: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 1 INLEDNING

Tomas Englund, [email protected] 3 10 november, 2003

1. Inledning. Glömt överföringskabeln mellan telefonen och handdatorn hemma? Trasslat in dig i kabeln till headsetet? Är du less på att släpa runt och trasslas på med en massa kablar jämt och ständigt? Bluetooth är en teknik för att underlätta sammankoppling av olika enheter på kortare avstånd, utan att någon kabeldragning behövs. Tekniken bygger på radiokommunikation, detta gör att man inte behöver ha visuell kontakt med enheten man vill kommunicera med. Detta är en stor fördel jämfört med IrDa, en konkurrerande teknik med Bluetooth. Om flera Bluetooth enheter finns inom en begränsad yta (runt 10m) så hittar de själv varandra och skapar ett litet nät (piconet) som möjliggör utbyte av tjänster på ett mycket smidigt sätt utan inblandning av någon användare. Så när du ska börja surfa på handdatorn så har förbindelsen till telefonen skapats. Och när du ska skriva ut så är Bluetooth-skrivaren redan ansluten till datorn. Lättsamt, smidigt, och helt automatiskt. Utan att man behöver fundera på vilken kabel som ska till vilken enhet och vilken port den ska anslutas till. Eftersom tekniken främst är till för att användas till portabla enheter som drivs på batteri, är strömförbrukningen av yttersta vikt. Därför har man valt att ha en låg sändareffekt, 1 mW (klass 3 enheter). Detta möjliggör implementation av Bluetooth i enheter som ska vara mycket strömsnåla. Eftersom man inte är så intresserad av att ha tillstånd ifrån någon myndighet för att använda sin Bluetooth-enhet, har man valt att lägga frekvensområdet på 2,4 GHz. Detta är ett olicensierat frekvensområde, samma som mikrovågsugnarna använder ☺. Då var det bara berättelsen om vikingen Harald Blåtand kvar då……

Page 4: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 2 VAD ÄR BLUETOOTH

Tomas Englund, [email protected] 4 10 november, 2003

2. Vad är Bluetooth

2.1 Historik 1994 började Ericsson Mobile Communication undersöka möjligheten med trådlös kommunikation mellan mobiltelefonen och dess periferienheter. Utgångspunkterna för den nya tekniken var att den skulle ha låg strömförbrukning, samt att priset skulle vara fördelaktigt jämfört med andra trådlösa teknologier. Syftet med tekniken var att all kommunikation från/till en mobiltelefon skulle va trådlös. Ett år senare började utvecklingsarbetet då potentialen med teknologin mer och mer framhävdes. Man såg möjligheten att använda radioteknologin som en brygga till existerande nätverk. Namnet Bluetooth kommer från vikingen Harald Blåtand som var kung av Danmark mellan 940 och 981. En av hans förmågor var att få människor att prata med varandra. Han lyckades bland annat med bedriften att ena Danmark och Norge. Upphovsmakare till Bluetooth teknologin såg en likhet med "gamle Harald". Dagens Blåtand har som uppgift att förena dator och telecom världen med alla dess tillbehör. Tidsaxel för Bluetooth: 1994: Ericsson tar initiativet till att ta fram en strömsnål och billig

radiokommunikation vilken skulle ersätta många eller alla kablar mellan mobiltelefoner och andra enheter.

1997: Ericsson kontaktar ett flertal tillverkare av portabel elektronikutrustning

för att diskutera utveckling och marknadsföring av trådlös kortdistansteknologi

1998: Bluetooth Special Interest Group bildas av Ericsson, IBM, Intel, Nokia

and Toshiba. 1999: Bluetooth Specifikation version 1.0 publiceras. 2000: I Bluetooth SIG ingår nu 9 företag, 3COM, Lucent Technologies,

Microsoft, och Motorola har tillkommit sedan 1998. De första Bluetooth certifierade produkterna finns på marknaden. Utvecklingen av Bluetooth specifikation 2.0 pågår. Bluetooth trådlösa teknologi är nu den snabbast växande kommunikationsstandarden.

2001: Enheter med Bluetooth specifikation 1.1 ute på marknaden. 2002: Runt 100 miljoner Bluetooth-produkter beräknas säljas under 2003

Page 5: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 2 VAD ÄR BLUETOOTH

Tomas Englund, [email protected] 5 10 november, 2003

2.2 Varför Bluetooth? Nu när vi vet varför tekniken kallas för ”blåtand” går vi vidare med att se vilken nytta man har av den. Syftet med Bluetooth är att man på ett enkelt sätt ska kunna kommunicera med olika enheter på kortare avstånd, utan att dra några kablar. En välkänd teknik för denna typ av kommunikation är IrDa. Radiotekniken har dock en stor fördel framför infraröd teknik, fördelen är att den inte kräver fri sikt mellan enheter som skall kommunicera med varandra. Radiotrafiken fungerar lika bra trots att möbler, tunna väggar etc. är placerad mellan sändaren och mottagaren. En annan fördel med tekniken är att det blir lättare att tillåta en grupp av enheter att kommunicera med varandra då den är rundstrålande. I tabellen nedan finns en jämförelse mellan Bluetooth och andra trådlösa alternativ. Tabell 1: Trådlösa alternativ

2.3 SIG (Special Interest Group) SIG bildades 1998 av Ericsson, IBM, Intel, Nokia och Toshiba för att etablera Bluetooth som en standard för trådlös kommunikation. Denna organisation har växt sedan dess, och har idag över 2000 medlemmar. Merparten av dessa är tillverkare av Bluetooth hårdvara/mjukvara. Dock finns även företag som använder andras hårdvara/mjukvara representerad i denna organisation.

Teknik

Maximal total hastighet

Räckvidd i meter

Maximalt antal noder

Främsta användningsområde Kommentar

Bluetooth 1 Mbps 10 eller 100

8 (och 128 parkerade)

Koppling mellan olika enheter och mobiltelefonen.

IrDA (infrarött)

4 Mbps 1 2 Skrivare, tangentbord och punkt-till-punkt datalänk

På grund av IrDA-teknikens krav på fri sikt mellan sändare och mottagare kommer den med tiden ersättas av Bluetooth. Många kompatibilitetsproblem

AIR (infrarött)

4 Mbps 4-8 10 Skrivare, tangentbord och punkt-till-punkt datalänk

Kräver inte fri sikt mellan sändare. Har inte alls blivit lika spridd som IrDA

Page 6: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 6 10 november, 2003

3. Tekniken bakom Bluetooth

3.1 Allmänt Bluetooth använder frekvenser runt 2,4 Ghz för kommunikation. Detta är samma frekvenser som ISM-bandet ligger på. På detta sätt behövs inget tillstånd ifrån någon myndighet (exempelvis Post och Telestyrelsen) för att använda denna teknik. Detta innebär dock att man är långt ifrån ensam på kanalen. Massor av olika konsumentprodukter som t.ex. mikrovågsugnar och trådlösa telefoner, men även trådlösa nätverk som WLAN (802.11b) använder dessa frekvenser. För att inte störa annan utrustning samt göra sig hörd på kanalen så använder sig Bluetooth av tekniken FHSS. Frequency Hopping Spread Spectrum går ut på att man frekvenshoppar 1600 hopp i sekunden. Detta gör att både sändare och mottagare hoppar mellan 79 olika frekvenser. Varje datapaket sänds på en ny kanal. Datapaketet kan dock bestå av upp till fem så kallade slots. Denna snabba frekvenshoppning har flera fördelar:

• Mindre störningskänslighet Om en kanal är upptagen av en störande källa så är kommunikationen blockerad bara i 21/1600 dels sekund och länken är till 1579/1600-delar intakt (under förutsättning att det bara är en kanal som hela tiden störs)

• Högre säkerhet. De snabba frekvenshoppen och algoritmen bakom dem gör informationen som sänds svårare att avlyssna

• Fungerar på platser där andra radiolänkar används. Genom att Bluetooth frekvenshoppar snabbare än andra radioteknologier som arbetar i samma frekvensområde så kan alltid kommunikationen upprätthållas

Bluetooth produkter är klassificerade i tre olika klasser. • Klass 1, sändareffekt upp till 100mW, räckvidden blir upp till 100 m

(20 dBm). • Klass 2, upp till 2.5 mW, räckvidd runt 10 m (4 dBm). • Klass 3, 1mW sändareffekt, räckvidd under 10 m (0 dBm). Klassificeringen är direkt beroende på strömförbrukningen. Eftersom de flesta Bluetooth lösningar sitter på produkter med batterier som strömkälla, vill man att kommunikationen ska vara så strömsnål som möjligt (Klass 3). Detta medför dock att räckvidden inte blir speciellt imponerande. I vissa tillämpningar prioriteras dock räckvidden inför strömförbrukningen (Klass 1). Strömförbrukningen ligger på 8 respektive upp till 30 mA för den längre sträckan. För att få lite perspektiv på sändareffekten kan man ha i åtanke att en GSM-telefon med låg uteffekt ligger på ungefär 800mW.

Page 7: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 7 10 november, 2003

Överföringsprestandan ligger på 1 Mbit/s och när den bandbredd som protokollet upptar räknas bort, blir det maximalt 743 kbit/s i överförings- hastighet. Bandbredd kan fördelas dynamiskt eller statiskt mellan sändning och mottagning.

3.2 Nätverksarkitektur Varje Bluetooth-enhet har en unik 48-bitars adress (BD_ADDR). Adressen består av 12 hexadecimala tecken på formen: 00:0C:3E:3A:4B:69. Denna adress kan jämföras med så kallade MAC-adresser på Ethernet nätverks-produkter. Varje Bluetooth enhet har även ett namn kopplat till sig. Detta namn kan bestå av 248 tecken. En Bluetooth enhet behöver dock inte stödja längre enhetsnamn än 40 tecken. Det är en god regel att hålla namnet kort, pga. att många Bluetooth-enheter har en begränsad display att visa sin information på. När en Bluetooth-enhet söker efter och hittar andra enheter börjar de med att utbyta namn och BD_ADDR . Nästa steg är ofta kontroll av så kallad PIN-kod för att se om det finns rättigheter att etablera kommunikation. Först därefter utbyter enheterna, vid behov, information om vilka funktioner (profiler) som de båda enheterna stödjer. Datapaketen som sänds mellan två Bluetooth-enheter har tre huvuddelar: en 72-bitars åtkomstkod, ett 54-bitars pakethuvud och upp till 2745 bitar med de data som skall överföras. Se figur 1 nedan.

Figur 1: Bluetooth paket

3.3 Piconet Bluetooth-enheter kan kommunicera mellan varandra på lite olika sätt. Enklaste scenariet är när det endast är två stycken enheter. Då skapas en punkt-till-punkt förbindelse. Den ena är master och den andra blir slave. Om det är flera enheter än två blir en master och resterande enhet blir slavar, ett så kallat piconet. Varje piconet kan ha upp till 8 aktiva enheter (1 master och 7 slaves). Varje ansluten aktiv slav får en 3 bitars adress (AM_ADDR) tilldelad av mastern. Fler enheter kan anslutas till ett piconet, men då i parkerat läge. Dessa kan ej utbyta data med de andra enheterna innan masterenheten väcker dem till liv. Varje parkerad enhet får en 8 bitars adress (PM_ADDR) av mastern. Se figur 2 nedan.

Page 8: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 8 10 november, 2003

Figur 2: Piconet

Om en Bluetooth-enhet inte har kontakt med någon annan enhet så hamnar den i standby läge. I detta läge drar enheten minimalt med ström och ingen kommunikation från/till enheten är möjlig. Flera piconet som samarbetar med varandra bildar ett Scatternet. Se figur 3 nedan.

Figur 3: Scatternet

3.4 Mjukvaruarkitektur Avsikten med Bluetooth-stacken är att tillåta olika produkter att kommunicera och fungera tillsammans, oavsett tillverkare. Stacken är uppdelad i olika lager, som har speciella uppgifter. Se figur 4 nedan. Vidare finns färdiga ”profiler” som definierar detaljerna om hur stacken ska användas av applikationerna vid olika ändamål. Stacken består av följande lager: Radio, basband, LMP, HCI, L2CAP, SDP och RFCOMM.

Page 9: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 9 10 november, 2003

Figur 4: Bluetooth protokoll stack Radio Man har medvetet valt en enkel design för Bluetooth-radiotekniken för att hålla ner kostnaden på utrustningen. Man har t.ex. undvikt dyrbara filter och förstärkare såsom används i GSM-utrustning. Man har också antagit att Bluetooth-produkter alltid kommer vara försedda med mikroprocessorer och överlåter kompensering och korrigering av felaktigheter i den analoga signalen till denna mikroprocessor och dess mjukvara. Bluetooth använder modulationstekniken Gaussian Frequency Shift Keying.

Med GFSK modulation kan man uppnå en symbolhastighet på 1 Mbit/s. Med denna modulation menas att man normera de många frekvenserna på ett logaritmiskt sätt, detta för att kunna skilja de många frekvenserna ifrån varandra. Binärt ”1” representeras med en positiv frekvensdeviation. Binärt ”0” med en negativ frekvensdeviation.

Basband Basbandet kontrollerar radiodelen och bestämmer hur frekvenshoppningen ska ske. Basbandet tillsammans med Link Controller sätter upp de logiska länkarna mellan de olika Bluetooth-enheterna i ett piconet. Detta görs genom att använda inquiry och paging. Även identifikation och kryptering sköts av basbandet. Basbandet hanterar två typer av länkar • SCO (Synchronous Connection-Oriented) Symetrisk punkt-till-punkt förbindelse mellan en master och en slave. Denna typ av kommunikation används framförallt när röst data ska överföras, 64 kB/s. En master kan hantera upp till tre samtidiga SCO länkar. Inga omskickningar kan ske.

Page 10: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 10 10 november, 2003

• ACL (Asynchronous Connection-Less) Asynkrona förbindelsen kan upprättas som punkt-till-punkt- eller punkt-till- många-förbindelse. Endast en ACL länk kan existera.

Själva Bluetoothradion ger en BER (bit error rate) upp till 10-2, pga fädning i och med flervägsutbredningen. Tillsammans med den dåliga kanalkvaliten försvåras designen av mobila system även av den snabba förändringen av själva kanalen. För att hantera dessa fel finns det tre olika modeller:

• En 1/3 Forward Error Correction (FEC), varje bit repeteras tre gånger. • En 2/3 FEC som använder en (15,10) Hammingkod för att ta hand om

bitfel i själva informationsöverföringen. Detta reducerar även antalet omsändningar av förlorad information.

• Automatic Repeat Request (ARQ)-schema vilket informerar sändar-enheten om sändningen lyckades eller inte genom att skicka ett svar. Bluetooth använder sig av snabb, onumrerade bekräftelser genom att sätta rätt värde på ARQN (Automatic Repeat reQuest Number).

Bluetooth sändaren använder sig av TDD (time-division dublex) schema. I varje tidslucka, som är 625 µs lång, kan ett paket skickas mellan en master och en slav. I varje jämn tidslucka skickar mastern. Slavarna skickar data på udda tidsluckor. Se figur 5 nedan:

Figur 5: Time-Division Dublex

LMP (Link Manager Protocol) Kommunikationen mellan bluetoooth-enheter sker mellan LM lagerna med hjälp av LMP. Innan en länk skapas mellan två olika enheter gör LMP:en en säkerhetskontroll, så som identifikation samt skapa- och byta nycklar för kryptering. Det är rätt vanligt att Link Manager och basbandets funktioner slås i hop till ett enda chip som kallas för basband chip.

LMP kommunicerar inte med de överliggande lagren, utan endast med basbandet och LMP på uppkopplade enheter. LMP specificerar ett antal kommandon som används för att koppla upp och hantera länkar, några exempel är:

Page 11: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 11 10 november, 2003

• Name Request Hanterar namn förfrågningar från andra BT enheter. Namnet kan maximalt vara 248 tecken långt.

• Detach En förbindelse mellan två Bluetooth enheter kan stängas ner när som helst av någon av enheterna. En kommentar varför förbindelsen stängs ner kan skickas med för att informera den andra sidan vad som har hänt och varför.

HCI (Host Controller Interface)

Mellan basbands-delen och de överliggande protokollen finns ett gränssnitt definierat. HCI (Host Controller Interface) bestämmer hur gränssnittet mellan värdapparaten och Bluetooth-enheten ser ut, d.v.s. vilka funktioner som finns i Bluetooth-enheten. Fyra olika typer av paket kan skickas över detta gränssnitt:

• Instruktionspaket Innehåller instruktioner och parametrar och skickas från värdapparaten till Bluetooth-enheten för att styra funktionaliteten.

• Händelsepaket Skickas från Bluetooth-enheten till värdapparaten för att meddela tillståndet och om några speciella händelser inträffat.

• Synkrona- och asynkrona datapaket Datapaketen innehåller den data eller tal som ska skickas över en aktiv länk.

L2CAP (The Logical Link Control and Adaptation Protocol ) L2CAP ser till att kanalen mellan olika enheter kan delas upp. På detta sätt kan flera olika protokoll använda samma kanal ”samtidigt”. L2CAP tillhandahåller connection-oriented och connectionless förbindelser för protokoll högre upp i stacken. L2CAP tillåter andra protokoll och applikationer att skicka och ta emot L2CAP paket som är upp till 64 kilobyte i storlek. Basbandet stödjer två typer av kommunikation, SCO och ACL. L2CAP stödjer endas ACL trafik. Därför sänds ljud i ett eget lager direkt till basbandet och pratar inte med L2CAP. SDP (Service Discovery Protocol) SDP är ett mycket simpelt protokoll med minnemalla krav på underliggande

lager. Vitsen med SDP är att hitta tjänster som andra bluetooth erbjuder.

En tjänst kan vara vad som helst, allt ifrån information, till något som har hand om en resurs. Tjänsten kan implementeras som mjukvara, hårdvara, eller en kombination av de två. All information om en tjänst sparas i en tjänste- beskrivningstabell på SDP-servern. En sådan tabell består av en lista av tjänsteattribut och dess associerade värden. Varje tabell har ett id-nummer som är 32 bitar stort och som unikt identifierar tabellen inom den SDP-server där den existerar.

Page 12: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 3 TEKNIKEN BAKOM BLUETOOTH

Tomas Englund, [email protected] 12 10 november, 2003

Varje tjänstebeskrivningstabell består som sagt var av ett antal attribut. Varje attribut består av en nyckel och dess värde. Varje attribut beskriver en karakteristik hos tjänsten. Nyckeln bestämmer vad attributet innebär och ett antal attribut har fastställts till att ha samma betydelse för alla typer av tjänster. Allämna attribut har nyckel-värden mellan 0x0000 till 0x01FF, resten av nycklarna kan ha olika innebörd beroende på vilken typ av tjänst tabellen beskriver. SDP stödjer två olika sätt för att söka efter tjänster. Antingen så kan man söka efter en specifik tjänst (searching), eller så kan söka efter alla tjänster som finns tillgängliga (browsing). Söka efter tjänster:

I SDP börjar sökningen efter en tjänst med att SDP-klienten frågar SDP- servern vilka tjänster som har samma värden på de nycklar klienten anger. Klienten kan bara söka på nycklar som har UUID (Universally Unique Identifier ) som värde. Sökningen utförs med en lista av de UUID-attribut man vill att tjänsten ska uppfylla. De tjänster som passar in på alla angivna attribut passar också in på sökningen.

Hitta alla tjänster: För att hitta alla tjänster så söker man på attributet BrowseGroupList, detta

eftersom alla tjänster innehåller detta attribut.

SDP fokuserar helt på att söka och hitta tjänster som är tillgängliga. SDP kan i sig inte användas för att utnyttja någon av de tjänster som hittas.

RFCOMM RFCOMM ordnar så att man kan kommunicera över Bluetooth länken precis som om det vore en serieport. Dock går det ej att garantera någon hastighet med RFCOMM utan den varierar med hänsyn till hur många enheter man har anslutna. Antalet förbindelser som kan kopplas upp varierar mellan olika bluetooth enheter men protokollet stödjer upp till 60 samtidiga förbindelser. Varje förbindelse mellan två enheter tilldelas en identifierare (Data Link Connection Identifier), som är unik. Denna identifierare håller reda på antalet förbindelser som är uppsatta med hjälp av RFCOMM. DLCI representeras av 6 bitar.

Page 13: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 4 SÄKERHET

Tomas Englund, [email protected] 13 10 november, 2003

4. Säkerhet Problemet som uppstår när man övergår från kabel till radiokommunikation är att trafiken inte längre är privat, dvs. bara nås av den mottagaren man vill. För att komma till rätta med detta är man tvungen att säkra sin förbindelse mellan mottagare och sändaren på något sätt. I Bluetooth fall har man valt att lägga till verifiering och kryptering för att säkra förbindelsen.

Verifiering används för att se till att endast de som har rättigheter till en viss typ av data får access, samt för att se till att mottagaren/sändaren är den man tror att den är.

Krypteringen sker med en 128-bitars nyckel. Denna används för att försvåra avlyssningen mellan sändare och mottagare. Dessa två tekniker samt den slumpmässiga frekvenshoppningen och den korta räckvidden gör Bluetooth kommunikationen säker. Se figur 5 för en översikt över säkerhetsarkitekturen.

Figur 6: Bluetooth säkerhetsarkitektur

Page 14: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 4 SÄKERHET

Tomas Englund, [email protected] 14 10 november, 2003

4.1 Säkerhetsklasser Eftersom Bluetooth används inom många olika produkter varierar säkerhets-kraven mellan olika applikationer oerhört. Därför har man tagit fram olika säkerhetsklasser för Bluetooth, tre för att vara exakt.

1. Non-secure I detta läge kopplas verifieringen och krypteringen bort.

2. Service-level security Här är det upp till varje enskild service som Bluetooth-enheten tillhandahåller om någon säkerhet krävs. Detta gör att olika applikationer kan bestämma själv om någon identifikation / kryptering behövs för att andra enheter ska kunna utnyttja just den servicen.

3. Link-level security; Kräver identifikation och kryptering innan någon förbindelse kan upprättas.

Det finns också olika säkerhetsnivåer för enheter och tjänster.

• För enheter finns det två nivåer: ”trusted” eller ”untrusted”. En enhet som har blivit stämplad som ”trusted” får tillgång till alla tjänster som enheten tillhandahåller.

• För tjänster finns det tre säkerhetsnivåer: Tjänster som kräver identifikation och verifiering, tjänster som endast kräver verifiering samt tjänster som är öppna för alla.

4.2 Använda en tjänst När en Bluetooth-enhet vill använda en tjänst som finns i ett piconet så görs först en säkerhetskontroll hos enheten som delar ut tjänsten. Denna kontroll är uppdelad i flera steg och fungerar enligt följande (se även figur 5): 1. L2CAP får en förfrågan om att en enhet vill använda en tjänst. För att veta

om klienten har rätt att ansluta till den eller inte så kontaktas Security Manager.

2. Security Manager kollar i Service Databas för att se vilken säkerhetsklass tjänsten har.

3. Security Manager kontrollerar sedan om enheten finns i Device Database, och om den är ”trusted”.

4. Om enheten inte finns med i Device Database går förfrågan ner till HCI om krav på identifikation och kryptering. Detta steg sker endast om tjänsten kräver det.

5. Efter detta lämnar Security Manager tillbaka till L2CAP med ett besked om en anslutning får göras eller inte.

6. L2CAP skickar paketet uppåt i hierarkin om beskedet ifrån Security Manager var positivt. Annars stängs förbindelsen.

Page 15: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 5 BLUETOOTH & LINUX

Tomas Englund, [email protected] 15 10 november, 2003

5. Bluetooth & Linux För att kunna ansluta sin Bluetooth enhet till operativsystemet Linux krävs en Bluetooth stack. Den officiella Bluetooth stacken för Linux går under namnet BlueZ. Denna stack är nu integrerad med den officiella Linux kärnan (nyare än 2.4.6). Detta gör det lätt att använda Bluetooth enheter i Linux. Se figur 6 nedan för en översikt över BlueZ.

Figur 7: Översikt BlueZ

5.1 Installation Innan man börjar installera bör man kolla vilken version av kärnan man har. BlueZ kräver att kärnan är 2.4.4 eller nyare. Om man har USB eller seriel interface till sin Bluetooth enhet ska det fungera fin fint. Kör:

./configure Lägg till Bluez i kärnan. Kompilera sedan om kärnan: make install För att BlueZ ska fungers korrekt krävs följande rader i /etc/modules.conf;

alias net-pf-31 bluez alias bt-proto-0 l2cap

alias bt-proto-2 sco Kör sedan depmod –a.

En komplett installationsguide finns att hitta på BlueZ hemsida: http://bluez.sourceforge.net/howto/index.html

Page 16: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 5 BLUETOOTH & LINUX

Tomas Englund, [email protected] 16 10 november, 2003

5.2 Styra XMMS över Bluetooth Användningsområdet för Bluetooth är ju som sakta stort. Ett roligt projekt man kan göra själv är att använda sin Bluetooth mobiltelefon som fjärrkontroll till sin dator. På detta sätt kan man tillexempel kontrollera XMMS (program för att spela upp mp3 filer i Linux) ifrån tv-soffan. Några bilder på hur det kan se ut:

Det enda som krävs är en Bluetooth telefon (i figurerna visas en T68i från Sony-Ericsson), samt en dator med en Bluetooth enhet kopplad till sig. Programvaran som krävs för att köra XMMS över Bluetooth finns här: http://linuxbrit.co.uk/downloads/bluexmms-1.1.tar.gz

Figur 8: Accessories

Figur 9: XMMS Remote

Figur 10: Volym

Figur 11: Track info

Page 17: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 6 FÖRKORTNINGAR

Tomas Englund, [email protected] 17 10 november, 2003

6. Förkortningar SIG: Special Interest Group IrDa: Infrared Data Association ISM-bandet: Industrial, Scientific and Medical

ISM-bandet är ett licensfritt frekvensband kring 2,4 GHz

FHSS: Frequency Hopping Spread Spectrum Slots: Tidslucka AIr: Advanced Air Protocol. MAC: Media Access Control AM_ADDR: Active Member adress PM_ADDR: Parked Member Address GSM: Global System for Mobile GFSK: Gaussian Frequency Shift Keying FEC: Forward Error Correction TDD: Time-division dublex UUID: Universally Unique Identifier Representeras som ett heltal på 128 bitar. USB: Universal Serial Bus UART: Universal Asynchronous Receiver- Transmitter BD_ADDR: Bluetooth Device Address

XMMS: X MultiMedia System

Page 18: Wearable Computers 10p Kapitel till boken ... - umu.se1994: Ericsson tar initiativet till att ta fram en strömsnål och billig radiokommunikation vilken skulle ersätta många eller

BLUETOOTH 7 KÄLLFÖRTECKNING

Tomas Englund, [email protected] 18 10 november, 2003

7. Källförteckning Information: http://www.bluetooth.com/ https://www.bluetooth.org/ http://www.communica.se/bluetooth/introduktion.htm http://electronics.howstuffworks.com/bluetooth.htm http://myriad.hemmet.chalmers.se/bluetooth/info.htm http://www.wirelessdevnet.com/channels/bluetooth/features/bluetooth.html http://www.cs.utk.edu/~dasgupta/bluetooth/ http://linuxbrit.co.uk/bluexmms/ http://www.goldpen.se/exjobb/exjobbmarkus.pdf http://www.palowireless.com/bluetooth/ Figurer: Figur 1: http://www.hartmut-ritter.de/ Figur 2: http://www.okisoft.co.jp/product/blue/images/piconet3.jpg Figur 3: http://www.sysopt.com/articles/bluetooth/Scatternet.gif Figur 4: http://www.eurescom.de/~pub-deliverables/P1100-

series/P1118/D3/BLT-architecture.jpg Figur 5: http://www.elektroindonesia.com/elektro/khu36g4.gif Figur 6: http://www.cs.utk.edu/~dasgupta/bluetooth/securityarch.gif Figur 7: http://bluez.sourceforge.net/howto/img1.png Figur 8: http://linuxbrit.co.uk/bluexmms/2.jpg Figur 9: http://linuxbrit.co.uk/bluexmms/3.jpg Figur 10: http://linuxbrit.co.uk/bluexmms/4.jpg Figur 11: http://linuxbrit.co.uk/bluexmms/5.jpg

Framsida: http://www.hatchassoc.com/images/bluetooth-lg.jpg