[Powered by Google Translate] [Vika 10] [David J. Malan] [Harvard University] [Þetta er CS50.] [CS50.TV] Allt í lagi! Þetta er CS50, en ekki mikið lengur. Þetta er upphaf 10. viku. Á miðvikudag höfum quiz okkar og svo næsta mánudag höfum við nokkur celebratory köku Eins og við komum í hring alla leið aftur frá núlli viku. Í dag, við tölum um einn af uppáhalds umræðuefni, að sannleikur sagt - að öryggi og næði og afleiðingar öllum vélbúnaði og hugbúnaði að við notum öll þessa dagana. Til að vera heiðarlegur, there ert a einhver fjöldi af ógnum þarna úti að ef þú hefur í raun ekki hlé til að hugsa um þá, þeir eru í raun mjög erfitt. Tilfelli í benda - ef einhver ykkar hefur einhvern tíma sótt stykki af hugbúnaður burt af netinu og setja það upp á tölvunni þinni, þú hefur átt í verulegum mæli á trausti, ekki satt? Það er ekkert að hafa komið í veg fyrir Skype, eða Króm, eða stykki af hugbúnaður þú hefur sett upp á tölvunni þinni, allt frá einfaldlega að eyða öllum skrám á harða diskinum þínum; hlaða allar skrár á harða diskinum til miðlara slæmar strákur; að lesa allar tölvupóstinn þinn, frá stöðvun öllum augnablik skilaboð. Þar sem veruleikinn er í dag með flestum nútíma stýrikerfum Það raunverulega er ekki mikið af vegg milli hugbúnaður programs sem við setja í embætti, og þú og ég erum nánast bara svona yfir fingurna og taka á trú að þessi app við sækja ókeypis, eða hlutur sem er 99 sent, er í raun alveg góðkynja. En eins og við höfum séð í gegnum C og nú PHP og JavaScript, með þessa getu til að tjá okkur programatically, þú getur gert flest allt sem þú vilt með forriti sem notandinn sjálfur eða hún sjálf gæti gert. Svo, í dag við að leggja áherslu á þessi atriði - ekki bara nokkrar hættur en einnig varnir. Reyndar, í heimi öryggi almennt, það er góður af þessu köttur-og-mús leikur, og ég eflaust slæmur krakkar næstum alltaf hafa fótinn upp. Þegar það kemur að því að taka kostur af vél-og hugbúnaði á eigin okkar tölvum, við verðum að átta sig á því að slæmur strákur einfaldlega þarf að finna eina einfalda mistök - einn nýta, einn galla - í a stykki af hugbúnaður sem við höfum skrifað eða eru í gangi í röð fyrir hann eða hana til að taka yfir allt kerfið okkar. Með því móti, við - þarf að plástur og festa allar þessar galla - góða krakkar og koma í veg fyrir öllum þeim veikleika. Og svo eflaust allt á heildina er litið, hafa slæmur krakkar kostur. Hvaða flokkar eins og þetta og síðari flokkar eru í raun um er ekki um að kenna þér hvernig á að heyja bardaga að þessi slæmur krakkar gera, en eru um hvernig á að vernda þig eða að minnsta kosti hvernig á að gera reiknað ákvörðun að já, ég veit þetta stykki af hugbúnaður getur örugglega lesið allt eitt tölvupóstinn minn, en ég er allt í lagi með það vegna þess að gildi sem það kemur mér hins vegar. Ég er mjög ánægður með að gengið með 2 af smartest fólk sem ég þekki - Rob Bowden og Nate Hardison. Rob er að fara að taka okkur fyrir ferð í gegnum lægsta stigi tags öryggi - þessi af þýðanda sem allt þar til nú, við höfum komið öll að elska og treysta. Rob Bowden. [Lófaklapp] [Rob] Allt í lagi. David hefur nánast tekið allt spiel minn að ég var að fara að kynna með, en - Nokkrum vikum síðan, sá þú dæmi um biðminni-flæða árás sem er dæmi um spjallþráð reiðhestur inn í nokkur stykki af hugbúnaður að þeir séu ekki að vera reiðhestur inn. Hin hliðin á þessu er stundum að hafa hugbúnað sem er illgjarn í sjálfu sér. Það skiptir ekki einu sinni þurfa að vera tölvusnápur. Sá sem skrifaði hugbúnaðinn vill hakk þig. Við skulum hoppa bara beint í kóða, taka a líta á "login.c". Hér kjánalegt forrit sem staðfestir upp notandanafn og lykilorð samsetningu. Hér ættir þú ákveðið að fá sætt sig við C aftur fyrir próf. Í fyrsta lagi erum við að nota fá strengi til að lýsa the username, þá erum við að nota fá band að grípa lykilorð og þá höfum við nokkur léttvæg athugunum á bara, er username "Rob"? Og er lykilorðið "thisiscs50"? Eða, er það username "Tommy" og lykilorð "i <3javascript"? Ef annað hvort þeirra er að ræða,  þá erum við bara að fara að prenta "velgengni", og þá höfum við aðgang. Annars erum við að fara að prenta "Ógilt notandanafn" og þá, að sjálfsögðu,  því minni sketch strengi malloc er, frjáls við notandanafn og lykilorð. Þetta er smávægilegur innskráningu program, og ef þú hugsa um þegar þú skráir þig inn í tækið, það er mjög svipuð - eða jafnvel að skrá þig inn í tölvuna þína - það er bara einhver tenging forrit sem gefur þér aðgang. Hér gerast við að hafa harður-dulmáli "Rob ',' thisiscs50 ',' Tommy ',' i <3javascript ', en sennilega er einhver skrá einhvers staðar á stýrikerfi sem hefur a listi af notendanöfnum sem getur skráð þig inn í kerfið og lista yfir lykilorð sem tengjast þeim notendanöfn. Venjulega Lykilorðin eru ekki bara geymd í kæra svona. Það er einhvers konar dulkóðun, en það mun gera til dæmis okkar. Koma yfir til þýðanda okkar - það er að fara að vera mjög einfalt. Við þurfum að skilgreina að minnsta kosti sumir skrá sem við viljum að safna saman, og svo hér - þessar línur eru bara að lesa skrá. Það les allan skrá í eina stóra biðminni, og þá erum við null-sagt biðminni okkar eins og alltaf, og að lokum við saman bara skrána. Við erum ekki að fara að líta á hvernig þýða er í raun til framkvæmda, en eins vott, kalla það bara Clang. Við ætlum að nota þetta forrit til að taka saman hlutina í stað Clang. Eitt vandamál við að byrja með er sjáum við viljum safna saman þýðanda okkar, en ef við erum ekki að fara að nota Clang, ég veit ekki hvað ég ætla að taka saman við. Þetta er almennt vandamál þekktur sem bootstrapping. Svo bara þetta einu sinni, ætla ég að nota Clang að safna saman þýðanda okkar. Ef þú hugsa um GCC og Clang - þessi forrit eru þessir þýðendur stöðugt að uppfæra, og þessir þýðendur eru teknar saman með gcc og Clang. Clang er bara einn stór C eða C + + forrit, svo þýðanda sem þeir nota til að safna saman sem er Clang. Hér nú erum við bara að fara að vera með þýðanda okkar til að safna saman þýðanda okkar, og við getum jafnvel sagt - '/ þýðanda.', 'compiler.c', 'compile.c', '-o þýðanda'. Takið þetta er nákvæmlega skipa ég hljóp á undan - bara skipta Clang með '. / þýðanda ". Og nú höfum við annað þýðanda, en það er nákvæmlega það sama. Það kallar bara Clang. Við ætlum að nota þýðanda okkar að safna saman innskráningu kerfi okkar. Okay - ". / Þýðanda login.c-o Innskráning". Svo, undefined tilvísun til "GetString". Got "-lcs50". Allt í lagi. Svo nú hef ég innskráningu kerfi okkar. Running það - taka "Vinsamlegast sláðu inn notandanafn þitt". Eitt dæmi var Rob. Vinsamlega sláðu inn lykilorðið þitt - thisiscs50. Og árangur! Ég hef aðgang að. Running það aftur og slá sumir ógilt lykilorð - eða rangt notendanafn og lykilorð - ógild innskráningu. Allt í lagi. Ekkert áhugavert um þetta svo langt. En, við skulum taka a líta á innskráningu á ný - og þetta er að fara að vera nokkuð léttvæg dæmi, en við skulum bæta annað í hér og segja, annars ef ((strcmp (notendanafn, "tölvusnápur") == 0 && strcmp (lykilorð, "LOLihackyou") == 0)) svo nú, printf ("Tölvusnápur Þú hefur nú aðgang \ n!."); lagi. Að byggja þetta - þýðanda login.c-o tenging-lcs50 - nú í gangi innskráningu - og ef ég nota notandanafn spjallþráð minn og lykilorð LOLihackedyou - Sagði ég slá það rangt þar áður? Á login.c--ihack - Ég skal gera brotist vegna þess að ég held að ég geri það seinna. Allt í lagi. Recompiling. Re-gangi - spjallþráð - LOLihackedyou - Tölvusnápur! Þú hefur nú aðgang að. Það virðist ekki vera að mikið af a mismunur vegna þess að það er sama nákvæmlega athuga ég var að gera fyrir önnur notendanöfn og lykilorð. Auk þess er stór hlutur er að ef annað fólk lítur á þetta login.c-- segja, ef ég framhjá þessu burt til félagi minn, og þeir opna þessa skrá, og þeir lesa þetta, þeir sjá - allt í lagi, af hverju ertu með þessar línur af kóða hér? Það er augljóslega ekki eitthvað sem ætti að vera í forritinu. Í sumum forritum - eins og allir sér hugbúnað sem er ekki opinn-uppspretta - þú getur aldrei sjá þessar línur af kóða. Eitthvað eins og Skype eða eitthvað - fyrir allt sem þú veist, Skype er á tölvunni þinni og það er bara ákveðin notandanafn-lykilorð samsetning sem tenging við Skype á einhvern sérstakan hátt. Við vitum ekki um það, og fólk veit ekki um það, vegna þess að þeir fá ekki að lesa sourcecode að sjá að það er þetta gat. Það sem við köllum þetta - Þrátt fyrir að þetta er ekki mjög snjall dæmi - þetta er kallað bakdyramegin. Ef þú hugsa um bak dyrnar á húsi þínu. Hér, ef ég sannreyna með 'rob "notendanöfn eða" Tommy,' sem myndi vera eins og að nota "framan dyrnar." Þannig ég ætlast til öruggur inn. En ef ég slæ með þessu notendanafni og lykilorði - þá er að nota "bakdyramegin". Það var ekki viljandi leið til að komast inn í kerfið, en það virkar samt. Og fólk almennt er ekki að vita um þessi bak dyr. Við ætlum að bæta þetta. Við skulum snúa þessu í upprunalegt login.c okkar, og við skulum kíkja á nýja þýðanda okkar. Allt í lagi. Allt hérna er nákvæmlega það sama. Við erum að lesa allan skrá í biðminni. Allt niður er sú sama. Við saman bara skrána. En nú hef ég þetta stóra ef hér sem segir, ef skráin sem ég gerst að setja saman er login.c, þá er ég að gera eitthvað sérstakt. Hvað er það eitthvað sérstakt? Ég sé hér einhver strengur sem kallast 'reiðhestur', og horfa á þessar línur af kóða - Þetta eru sömu línur af kóða - ég held ég gerði nota 'ihack' og ekki 'ihacked' áður - líta á þessar línur af kóða, þeir sömu nákvæmlega línur af kóða sem ég hafði í login.c áður. En nú, í stað þess að hafa þá í login.c, Ég ætla að setja þær inn í þýðanda mínum. Þetta eru línur af kóða sem ég ætla að vilja setja inn login.c. Þessar línur af kóða - biðminni sem upphaflega hélt login.c minn er ekki lengur að fara að vera nógu stór því nú vil ég líka setja þetta hakk í the miðja af áætlun mína. Allt þetta er að gera er að búa til nýja biðminni sem er nógu stór - bæði fyrir upprunalegu skrá og auka línur af kóða - hakk - sem ég vil setja inn þar. Hér er eitthvað til að taka eftir - char * mynstur = "/ / neita þeim aðgang!" Ef við lítum til baka á login.c, sjáum við niður hér í athugasemd - neita þeim aðgang! Í login.c þetta athugasemd lítur alveg innocuous, svo þú myndir ekki gruna allir illgjarn ásetningi með bara þessa athugasemd. En þýðandi okkar, við erum sérstaklega að fara að leita að þessari línu af kóða, og svo þegar við finnum hana - þessar línur af kóða eru að setja hakk okkar í þeirri stöðu. Svo erum við iterating yfir öllu login.c, við erum að setja að reiðhestur nákvæmlega þar sem hún segir neita þeim aðgang, og þá erum við að setja saman - ekki upprunalega login.c en nýja login.c með því hakk sett rétt á 'neita þeim aðgang.' Nú vil ég að safna saman nýja þýðanda mitt með þeim reiðhestur ræða. Ég ætla ekki að nota Clang, þannig að við skulum afrita þýðanda við notuðum áður og nota það - svo, þýðandi compiler.c evil_compiler compile.c-o. Nú okkar illt þýðanda - Ef við notum illa þýðanda okkar að þýða aðra skrá, Skráin mun þýða eins og það ætti að gera. Það er alveg eðlilegt. En ef við notum illa þýðanda okkar til að safna saman innskráningu - svo, / evil_compiler login.c-o tenging-lcs50. - horfa á login.c aftur, það er nákvæmlega ekkert hér. Það er venjulega okkar ef það er annað hvort Rob eða Tommy við erum í, annars erum við úr ". En þegar við hlaupa executable okkar, þetta mun vinna eins og venjulega. Running aftur - tölvusnápur, LOLihackyou - Tölvusnápur! Þú hefur nú aðgang að. Bara horfa á login.c, myndir þú ekki hugsa eitthvað er rangt. En þýðandinn sem er verið að nota til að safna saman login.c er sérstaklega hönnuð til að setja þessa reiðhestur inn í kerfið. Við höfum bara flutt upprunalega vandamál okkar. Upphaflega áttum við þessar línur af kóða í login.c að ef einhver annar horfði á þá, þeir myndu vera eins, hvers vegna eru þessi hér? Nú gerist ef einhver að líta á þýðanda okkar, þeir líta á þessar línur af kóða og segja, Hvers vegna er þetta hér? Svo höfum við ekki alveg leyst vandamál okkar. En við getum notað þessa hugmynd aftur. Að taka a líta á þriðju útgáfu okkar af þýðanda, það er sama hugmynd. Við að lesa alla skrána í biðminni upp hér, Við þýða skrána hérna, og ég hef einhverskonar hakk band hér, en eftir að skrá að ég er í raun reiðhestur núna. Ég er reiðhestur compiler.c ekki login.c. En hvað er ég að setja inn compiler.c? Ég er að setja þennan kóða sem er nákvæmlega númerið á fyrri þýðanda okkar, sem var ætlað að setja kóðann inn login.c. Hér er ef strcmp okkar skrá login.c og þá setja inn login.c hakk efni okkar. Þessi nýja þýðanda er ætlað að búa til þýðanda sem er ætlað að safna saman innskráningu illgirni. Við munum sjá hvers vegna það hjálpar okkur. Allt annað er það sama, þannig að það virkar nákvæmlega eins og það vann með fyrra þýðanda okkar. Við erum bara iterating yfir allt compile.c okkar. En núna í stað þess að leita að "neita þeim aðgang, við erum að leita að 'þýða skrána. " Hvar er saman skrána? Þegar litið er á alveg saklaus compiler.c okkar, það er rétt hérna neðst. Þessi athugasemd - safna saman skrá - aftur, sem lítur alveg innocuous. En í illgjarn útgáfu okkar af þýðanda, við erum að fara til - rétt áður en þessi comment - setja þennan kóða sem er ætlað að setja inn númerið þegar söfnun login.c. There ert a einhver fjöldi af stigum indirection hér. Við skulum í raun að keyra það. Aftur, munum við afrita upprunalega þýðanda okkar. Nú, taka saman - þýðandi compiler.c evilest_compiler compile.c-o - og nú evilest_compiler. Evilest þýðanda - ef við notum það til að safna saman þýðanda okkar, skulum raunverulega líta. Evilest_compiler - færa það yfir, alla leið aftur til útgáfu 1 af þýðanda okkar - útgáfa 1 af þýðanda okkar sem var bara að lesa í skránni og þýða það. Hér vitum við að evilest_compiler - þegar það vinnur þessa skrá - er að fara að setja inn kóðann hér áður saman skrána, og númerið er að fara að líta nákvæmlega eins og kóða frá seinni útgáfu af þýðanda okkar sem gerði þetta. Þetta númer, sem er ætlað að brjótast inn í innskráningu er að fara að setja inn í þýðanda okkar með evilest þýðanda. Við skulum nota evilest_compiler að safna saman þýðanda okkar. Nú munum við nota þýðanda, koma aftur á að skrá, og muna þetta login.c hefur nákvæmlega ekkert grunsamlega í það. En nota þýðanda okkar að taka saman login.c, Rob, thisiscs50, velgengni. Innskráning spjallþráð skulum, LOLihackyou, Tölvusnápur! Þú hefur nú aðgang að. Grein fyrir því að þetta var öðruvísi útgáfu 2 af þýðanda okkar. The þýðanda við notum - við skulum fara aftur - afrit af innskráningu - skulum koma þýðanda okkar aftur hér. Fjarlægi evilest þýðanda. Allt sem við höfum skilið nú er þýðanda. Ef við skoðum compiler.c, Það er nákvæmlega ekkert þarna sem virðist illgjarn á nokkurn hátt. Ef við skoðum login.c, Það er nákvæmlega ekkert hér sem lítur illgjarn á nokkurn hátt. En þegar við notum þýðanda okkar að taka saman login.c, fáum við hackable útgáfu login.c. Þegar við notuðum þýðanda okkar að setja saman nýja útgáfu af þýðanda, fáum við hackable útgáfu af þýðanda. Nú ef við förum út og dreifa þýðanda executable okkar, og enginn mun vita að það er eitthvað illgjarn um það. Þetta er í raun svo á - ég man ekki ársins - Ken Thompson, og hann vann Turing Award - Ef þú ert ókunnur með the Turing verðlaunin, það er næstum alltaf skilgreint sem Nobel Prize í tölvunarfræði, svo það er hvernig ég skilgreina það. Ken Thompson flutti ræðu þegar hann fékk Turing verðlaunin hans kallað "Hugleiðingar um traust Trust." Í grundvallaratriðum, þetta var hugmynd um ræðu hans. Nema í stað þess að þýðandi okkar, var hann að tala um GCC - bara annað þýðanda eins Clang - og hvað hann var að segja er, eins login.c okkar login.c okkar virðist tiltölulega gagnslaus en hann var að tala um raunverulegt UNIX login.c. Þegar þú skráir þig í tæki þínu, það er einhver tenging forrit sem er í gangi. Það var tenging sem hann var að tala um. Þetta var í rauninni hugmynd hans. Hann sagði að í GCC, hann fræðilega gæti hafa gróðursett um galla - ekki galla en illgjarn merkjamál - að þegar setja saman innskráningu virka - tenging skrá - myndi setja inn bakdyramegin svo að hann gæti farið til algerlega hvaða UNIX kerfi í heimi og tenging við einhverjum sérstökum notandanafn og lykilorð. Á þeim tíma, GCC var ansi mikið þýðanda sem allir nota fyrir neitt. Ef einhver varð að uppfæra GCC, þá myndu laun GCC með GCC, og þú vildi samt fá slæm útgáfa af GCC vegna þess að það var sérstaklega saman til að viðurkenna að það var recompiling þýðanda. Og ef þú notar alltaf GCC að laun á login.c skrá, þá myndi það setja þetta bakdyramegin sem hann gæti notað til að skrá þig inn til allir tölva. Þetta var allt fræðilegt, en - það einkum aðstæður væri fræðilegt en hugmyndir eru mjög raunveruleg. Árið 2003, var svipað dæmi þar sem - við munum taka a líta á þessa skrá, og það hefur nákvæmlega ekkert að raunverulega gera með það, en villan er svipuð. Þessi skrá skilgreinir bara fall kallast gjá. Það tekur rök a, í rifrildi b, og ætlunin er að gera deilt með b. En það er smá villa stöðva, þannig að við vitum það er undarlegt ef b gerist að jafna núll. Ef b er núll, þá er við hættu á þessu í 2 tilvikum. Þú gætir nú þegar séð gallann. Fyrsta tilfelli - ef a er núll, þá erum við að gera núll deilt með núlli og við segjum bara það er óskilgreindur. Annað mál - ef ekki núll, þá það er eitthvað eins og 1 deilt með núlli, og við köllum bara að óendanleika. Else við aftur á venjulega a deilt með b. Og svo hér erum við að keyra þessi 3 mál, og hlaupum í raun skipta - það kallar á það fyrir mig - Svo, hunsa viðvaranir Clang er - enda ekki ógilt virka - virðist ég ekki þýða þetta fyrirfram. Return 0. Gera skipta - allt í lagi. Með. / Skipta, sjáum við 3, Infinity, Infinity. Núll deilt með núlli ætti ekki að hafa skilað óendanleika. Og ef þú hefur ekki mynstrağur út galla enn - eða gerði það ekki áður - sjáum við að við erum að gera a = 0. Sennilega við þýddi == 0. Sennilega. En þetta var í raun eitthvað sem, aftur, árið 2003, Linux kjarnanum - svo notar tæki okkar Linux kjarnanum - allir Linux stýrikerfi notar Linux kjarnanum - svo galla mjög svipuð þessu mætti. Hugmyndin á bak við þennan galla var - aftur, það var bara einhver virkni sem var kallað, og það gerði smá stöðva villa. Það voru nokkrar sérstakar inntak að þessi villa stöðva - það hefði verið eins og, allt í lagi, er ekki hægt að kalla þessa aðgerð með deilitöluna 0. Svo ætla ég bara að koma aftur smá villa. Nema, það var ekki eins saklaus og bara setja a jöfn 0. Þess í stað þessa línu af kóða á endanum að gera eitthvað meira eins og notandi = stjórnandi. Eða user = ofurpaurinn. Það var saklaus - við fyrstu sýn - mistök þar sem það hefði bara verið sanngjarnt að ég vildi bara að tilkynna eitthvað sérstakt ef notandinn gerðist að vera ofurpaurinn stjórnandi. En þá aftur að hugsa um það, sem maður vildi það til að líta eins einfalt prentvilla, en ef þetta númer hafði verið gefin út, þá hefði verið hægt að reiðhestur inn í hvaða kerfi við brottför ákveðna fána - í þessu tilfelli b = 0 - og það myndi sjálfkrafa gera notandi stjórnandi, og þá hefur hann fulla stjórn. Þetta gerðist árið 2003. Það bara svo gerðist að eina ástæðan að hún var gripin var vegna þess að það varð að vera einhver sjálfvirk kerfi að eftir breytingar á þessari skrá sem aldrei ætti að hafa verið breytt af mönnum. Skráin skal aðeins hafa verið sjálfkrafa mynda. Það bara svo gerðist að einhver snerti - Jæja, sá sem vildi hakk snert að skrá, og tölvan náði að snerta. Svo, breytt þeir þetta og aðeins seinna áttaði það hörmung hefði verið ef þetta hefði fengið út í hinum raunverulega heimi. Þú gætir verið að hugsa um að - koma aftur til þýðanda okkar dæmi - jafnvel þó við getum ekki séð - að horfa á sourcecode - að eitthvað í lagi er rangt, Ef við lítum í raun á the tvöfaldur kóða þýðanda, við viljum sjá að eitthvað sé rangt. Sem dæmi, ef við keyra strengir virka - sem er bara að fara að horfa á skrá og prenta út alla strengi það getur fundið - Ef við hlaupum strengi á þýðanda okkar, sjáum við að einn streng að það finnur er þetta skrítið - else if (strcmp (notandanafn, "tölvusnápur") - bla, bla, bla. Ef einhver varð að vera ofsóknaræði nóg til að ekki treysta þýðanda sinn, þeir gætu keyrt strengi og sjá þetta, og þá myndu þeir vita að það væri eitthvað athugavert við raunverulegan tvöfaldur. En strengir var óhjákvæmilega eitthvað sem var unnin. Svo, hver er að segja að þýðanda okkar ekki bara meira sérstakt númer sem segir, ef strengir er alltaf að keyra á þýðanda okkar, ekki framleiðsla ekki öll þessi illgjarn merkjamál. Sama hugmynd með ef við viljum dis-saman skrána - við lærðum að Assembler færir okkur frá kóða samkoma í vél númer - við getum farið í gagnstæða átt - objdump-D þýðanda - mun gefa okkur söfnuð kóða okkar. Þegar litið er á þetta, það er nokkuð dulinn, en ef við vildum, við gætum litið í gegnum þetta og ástæða, bíddu, það er eitthvað að gerast hér sem ætti ekki að gerast, og þá munum við þekkja að þýðandinn er að gera eitthvað illgjarn. En, rétt eins og strengi, sem er að segja objdump var ekki sérstök-cased. Í grundvallaratriðum kemur það niður að þú getur ekki treyst neitt. Tilgangur greinarinnar að vera kölluð "treysta Trust" er Almennt, treystum við þýðanda okkar. Þú þýða kóðann og búast við það til að gera það sem þér biðjið hann að gera. En, hvers vegna ættir þú að treysta þýðanda? Þú varst ekki að skrifa þýðanda. Þú veist ekki hvað þýðandinn er víst í raun að gera. Hver er að segja að þú getur treyst henni? En jafnvel þá, ja, kannski við getum treyst þýðanda. Það eru tugir þúsunda manna, sem hafa horft á þetta. Einhver hlýtur að hafa viðurkennt eitthvað var upp með þýðanda. Hvað ef við förum bara 1 stig dýpra? Það gæti jafnvel verið þinn gjörvi. Eins fáránlegt og það gæti mögulega verið, kannski er einhver fantur starfsmaður Intel sem skapar þessum örgjörvum að þegar að gjörvi tekur eftir að þú ert að keyra sumir stjórn sem er ætlað að skrá þig inn í tölvuna, örgjörva mun taka sumir sérstakur notandanafn og lykilorð samsetningu. Það væri stórlega flókið, en einhver gæti gert það. Á þeim tímapunkti, þú ert virkilega að fara að opna tölvuna til að horfa á örgjörva og nota smásjá til að viðurkenna að þessar brautir eru ekki raðað upp eins og þeir ættu að vera? Enginn er alltaf að fara að ná að villa. Á einhverjum tímapunkti, þú verður bara að gefast upp og treystir eitthvað. Flestir treysta þýðanda á þessum tímapunkti. Það er að segja ekki endilega að þú ættir. Þegar litið er á nokkuð frægi vídeó - [Dramatísk tónlist spila] [Það er UNIX kerfi. Ég veit þetta.] [Það er allar skrár -] Hún sagði: "Það er UNIX kerfi. Veit ég." Skipta UNIX með hvað uppáhalds stýrikerfið þitt er - hún gæti hafa sagt: "Það er Windows kerfi. veit ég." Það er alveg merkingarlaus staðhæfing, en allt sem við vitum, gerist hún að vita bakdyramegin inn UNIX kerfi. Hún veit sumir notandanafn / lykilorð samsetning sem mun í raun láta hana gera hvað sem hún vill. Allt í lagi. Boðskapur dag er í grundvallaratriðum að þú getur ekki treyst neitt. Jafnvel það sem þú skrifar - þú ekki skrifa þýðanda. The þýðanda gæti verið slæmt. Jafnvel ef þú gerðir skrifa þýðanda, það sem er í gangi á þýðanda gæti verið slæmt. (Hlæja) Það er ekki mikið sem þú getur gert. Heimurinn er dæmt. Baka til Davíðs! [Lófaklapp] [David] Takk. Það var mjög niðurdrepandi. En reyndar, Rob er rétt. Við gerum í raun ekki hafa a lausn þessi, en þú ert að fara að fá lausnir að sumir fleiri sameiginlegra varna. Í aðdraganda þessa, hvað Nate og ég hef verið að gera offstage þar er að vita að það eru svo margar fartölvur í þessu herbergi, við höfum verið að sjúga allt þráðlausa umferð fara í gegnum þetta herbergi á undanförnum 20 mínútum meðan tala Rob er, þannig að við erum að fara að taka 2 mínútna brot hér. Nate er að fara að setja upp, og svo erum við að fara að tala um allt efni við gætum fundið. (Hlátur) Svo kann ég ýkt svolítið bara fyrir sakir leiklist, en við hefðum getað verið að sjúga allt þráðlausa umferð því reyndar það er svona auðvelt. En það eru einnig leiðir sem hægt er að verja gegn þessu, og það með að Ég gef þér Nate Hardison. >> [Nate] Sweet. (Applause) [Nate] Takk, maður. Ég þakka Kveðja. Allt í lagi! Það er leikur vikunnar. Eruð þið spennt? Vonandi það er að fara til vera a stór leikur á laugardag. Ég ímynda mér ykkur á þessum tímapunkti - í ljósi þess að þú ert með próf á miðvikudag allt um kóða, og við sat bara með frábæra Fyrirlestur Rob með a heild búnt af C kóða í það - eru kannski svolítið þreyttur á kóða. Í þessum hluta, við erum í raun ekki að fara að snerta allir kóðann alls. Við erum bara að fara að tala um tækni sem þú notar á hverjum degi, oft fyrir marga, marga klukkutíma á dag, og við munum tala um afleiðingarnar með öryggi sem það eru. Við höfum talað mikið um öryggi á meðan á önn, og við byrjaði með smá dulritunarstjórneiningunni. [Bdoh LV vwlqng!] Og á meðan þið eru líklega frábær spenntur að brottför athugasemdum við hvert annað í flokki með Caesar dulmál eins og þessa, í raun, það er meira gaman að vera had þegar þú ert í raun að tala um öryggi og þannig dót. Í dag erum við að fara að ná í nokkrar tækni sem fólk notar í raun í hinum raunverulega heimi til að gera alls konar hluti frá sjúga pakka fólks í raun að fara í og brjóta í bankareikninga fólks og allt það. Þetta eru lögmæt verkfæri sem við erum að tala um að undanskildum hugsanlega eitt tól. Og ég vil bara að gera a fljótur höfnun. Þegar við tölum um þetta, erum við að tala um þá svo þú vitir hvað er í boði, og þú ert meðvituð um hvernig á að vera öruggur þegar þú ert út að nota tölvuna þína. En við ákveðið vil ekki að gefa í skyn að þú ættir að nota þessi verkfæri í dorm eða hús þitt vegna þess að þú getur keyrt inn í fullt af stórum málefnum. Það er ein ástæða í dag að við í raun voru ekki sjúga upp í nefið pakka þinn. Allt í lagi. Síðast Mánudagur, talaði við um kökur og HTTP, og staðfesting, og hvernig Firesheep opnar þetta stóra hurð inn á Facebook reikning þinn, á Hotmail reikninginn þinn - ef einhver er enn að nota Hotmail - og mörgum öðrum reikningum. A einhver fjöldi af þessu efni er að fara að byggja burt af því, en fyrst, ég vil taka fljótur skoðunarferð um hvernig internetið hefur þróast með tímanum. Til baka í '90s, þið gæti hafa minnst raun tengja í tölvur með einum þeirra. Nú erum við að gera það ekki svo mikið lengur. Það kemur reyndar fram að til að stinga Ethernet snúru í fartölvuna mína, Ég hef nú að nota eina af þessum millistykki sem er góður af brjálaður. Þess í stað á árinu 1997 við höfðum þetta nýja, gaman tækni kom út sem er þekktur eins og IEEE 802,11, þannig að þetta er þráðlaust Internet staðall The IEEE er þetta Yfirstjórn sem gefur út alls konar - birtir alls konar staðla með tilliti til tölvur. The 802 staðlar eru allt um tækni Internet. Svo 802,3, til dæmis, er Ethernet staðall, 802.15.1 Ég tel er Bluetooth staðall, og 802,11 er allur óður í þráðlaust Internet. Árið 1997 það kom út. Það var ekki alveg grípa á strax. Það var ekki fyrr en 1999 og 802.11b staðall kom fram að bara mjög vinsæll. Hversu margir af þú manst þegar tölvur byrjaði að koma út og fá Wi-Fi á þeim? Það var góður af kaldur, ha? Ég man að fá fyrstu fartölvuna mína í menntaskóla, og það var þráðlausa kortið í það. Pabbi minn gaf mér hana og var að segja að ég ætti að nota það fyrir apps háskóli mína og allt það, og ég hafði ekki hugmynd um hvernig ég ætlaði að fletta upp í þessu efni á netinu. En sem betur fer hafði ég þráðlausa kortið, þannig að var frekar kaldur. Nú á dögum, munt þú einnig sjá 802.11g, sem er einn af hinum raunverulega vinsæll þráðlaus staðall sem er þarna úti. Bæði b og g eru nokkuð gamaldags á þessum tímapunkti. Hver veit hvaða útgáfa sem flestir eru á núna ef þeir eru að kaupa nýja þráðlausa leið og þannig dót? N. Einmitt. Bingo. Og það kemur í ljós að AC staðall er bara að koma út í drögum að formi, og það eru aðrar útgáfur á leiðinni. Með öllum þessum stöðlum sem við erum að öðlast er meira bandbreidd, fleiri gögn á hraðar. Þetta halda að breytast ansi hratt. Það gerir það líka þannig að við verðum að kaupa fleiri leið og allt það gaman efni. Við skulum tala um það sem þráðlaus samskipti í raun er í kjarna þess. Með Ethernet og þeim gamla upphringingu mótald, þú hefðir í raun þetta efni sem þú tengt inn í tölvuna þína, og þá tengt inn í mótald nokkurs konar, og þá tengt það inn í Jack í vegginn. Þú hafði þetta hlerunarbúnað tengingu, ekki satt? Í heild benda af þráðlausum er að fá losa af þessu efni. Til að gera það, það sem við höfum er í raun útvarp samskipti þar sem útvarpstæki leið okkar - tilnefndur af litla þráðlausa táknið okkar - er tengdur við internetið með þetta solid ör bendir einhvers konar hlerunarbúnað tengingu, En þegar þú tengir við þráðlaust leið þinni þú ert í raun að nota næstum eins walkie-talkie milli tölvuna og þráðlausa beininn. Hvað er raunverulega kaldur um þetta er hægt að færa sig til. Þú getur haft tölvuna allt Sanders, fara vafra á vefnum, hvað sem þú vilt, bara eins og þú veist allt og elska, og þú þarft ekki alltaf að vera tengt við eitthvað. Til þess að vinna, höfum við bæði þessa móttöku og miðlun. Það er í raun svona walkie-talkie. Þetta þráðlausa leið - sem Sanders situr undir þessu stigi, hérna - er alltaf útsendingar og móttöku, útsendingar og móttöku og sömuleiðis, eru tölvur allt að gera það sama svoleiðis líka. Við getum bara ekki heyra það. The annar hlutur sem þú getur gert er að þú getur haft margar tölvur að tala við sama þráðlausa leið. Því nær sem þú ert að leið - og aftur, þetta er útvarp samskipti - því nær sem þú ert, því betra merki er, því betra tölvunnar heyrir 'leið og má hafa samband við internetið. Ef þú krakkar ert alltaf á dorm þinn heima hjá þér og þú ert að velta fyrir mér hvers vegna merki þitt er slæmt, það er líklega vegna þess að a). þú ert ekki mjög nálægt leið, eða b). það er eitthvað á milli þín og þinn leið eins og sement vegg eða eitthvað að ekki láta þær útvarpsbylgjur fara í gegnum. Við skulum tala svolítið um það hvers vegna slæmur krakkar eins og Wi-Fi. Slæmur krakkar elska Wi-Fi fyrir nokkrum ástæðum. Hér er viðbjóðslegur slæmur strákur okkar rétt þar. Ein ástæðan fyrir því að slæmur strákur elskar Wi-Fi er vegna þess að við vanræksla, a einhver fjöldi af útvarpstæki leið koma og þegar þú setur þá upp, þeir unencrypted. Þetta hefur verið vandamál, og það hafa verið tilvik - síendurteknar, nú - þegar slæmur strákur sýnir sig í hús einhvern, tilkynningar að það er unencrypted Wi-Fi, sem þeir geta tengst. Þeir tengjast Wi-Fi, og þá byrja að hlaða niður alls konar skemmtilegt dót. Og þeir eru ekki að sækja kettlinga, eru þeir ekki að sækja hvolpana. Þetta er eins og BitTorrent. Þetta er viðbjóðslegur af viðbjóður. Það hafa verið tilfelli þar sem FBI hefur jafnvel fengið þátt hugsa að sá sem á húsið er í raun einn fara út og sækja efni sem þeir í raun ættu ekki að vera. Having unencrypted Wi-Fi er örugglega ekki eitthvað sem þú vilt gera, ef aðeins ekki FBI koma banka á hurðina þína. Önnur ástæða fyrir slæmur krakkar elska Wi-Fi er ástæðan fyrir því að Davíð talaði um áðan á brot. Vegna þess að það er útvarp samskipti algerlega þess, Ef þú veist um rás, getur þú hlustað á þá útvarpsstöð. Til dæmis, ef það er slæmt þarna situr í miðju hliðina á aðgangsstað við hliðina á að þráðlausa leið, slæmur strákur getur hlustað á á öllum þráðlausum umferð sem kemur frá öllum þessum tölvum. Í staðreynd, þessir gaurar - þetta heppinn fáir sem eru hér í fremstu röð - vegna þess að þeir eru frábær nálægt öllum þessum útvarpstæki leið að sitja bara undir sviðinu, þeir myndu vera fær um að heyra umferð allir í þetta allt herbergi Ef þú ert tengdur við Wi-Fi og að vafra í gegnum þessi aðgangsstaði. Það er ekki mjög erfitt að sitja sjálfur í góðri stöðu til að sjúga upp í nefið og reikna út hvað aðrir eru að gera. Það er eitthvað til að hafa í huga, sérstaklega ef þú ert ekki viss um hvar aðgangsstaður er og þú ert að vafra segja, á Starbucks. Það kemur í ljós að sjúga upp í nefið og allt það er í raun ekki allt sem erfitt er að gera. Það er forrit sem heitir tcpdump sem hugarangur alls konar TCP umferð og þú getur keyrt það nokkuð einfaldlega - bara eins og ég gerði í morgun. Hér er a lítill hluti af a sorphaugur, og hér er sumir af the umferð sem var að koma yfir netið mitt á þeim tíma. Þú getur séð - ef þú squint mjög erfitt - það er a lítill hluti af Spotify þar. Á toppur af tcpdump - vegna þess að þetta er góður af a sársauki til að nota - það er forrit sem heitir Wireshark sem knippi þetta allt upp í fallegu GUI. Wireshark er frábær-vel þannig að ef þú ferð á að taka net námskeið, Þetta er tól sem þú munt koma til að elska þar sem það hjálpar þér að kryfja alla pakka sem eru fljótandi um þarna úti. En það geta einnig vera notaður fyrir slæmt. Það er mjög einfalt að bara sækja þetta forrit, ræsa það upp, hefja net handtaka, og sjá allt sem er að gerast - og sía og gera alls konar skemmtilegt dót með það. The annar hlutur sem þú getur gert með þráðlaus samskipti er ekki bara hægt að eavesdrop en þú getur líka lært hvernig á að skrúfa við netið og sprauta eigin upplýsingar til að stjórna reynslu sem aðrir á sama þráðlausa neti eru að fá. Við skulum taka a líta á það. Hér er Firesheep - sem við þekkjum og elskum frá síðustu viku - sem er að hlusta tækni. Ef, til dæmis, vildum við virkan hafa slæmur strákur fara okkar og sóðaskapur í kring með einn af þessum tölvum, í þessari atburðarás sem við höfum fengið tölvu að reyna að fara í brim harvard.edu. Hvað gerist er að tölvan sendir fyrst skilaboð til útvarpstæki leið og segir, hey, ég vil fara heimsækja www.harvard.edu. Segja einhverjum ástæðum eru þeir að reyna að fá upplýsingar um leikinn um helgina. Slæmur strákur, þar sem hann situr rétt í miðju, við hliðina á því aðgangsstað getur séð að samskipti koma frá tölvunni inn á leið, og hann veit, "Hæ! Einhver er að fara að harvard.edu." (Evilly hlær) Það er að fara að vera svona leynd en samskipti fer af leið út á internetið til að fara að finna vefsíðu á harvard.edu-- bara eins og þú krakkar vita allt eftir að gera PHP psets þínum - og svo hefur slæmur strákur í smá tíma, a lítill hluti af glugganum, þar sem hann getur svarað með einhverju efni. Við skulum segja að þetta slæmur strákur, auðvitað, er Yaley. Hann svarar með harvardsucks.org. Boo! Bad, slæmur strákur! Bad Yaley! Eða jafnvel verra, gæti hann bregðast við því. [Http://youtu.be/ZSBq8geuJk0]. Ég læt ykkur reikna út hvað það er. Þetta er í raun tækni sem kallast Airpwn! sem var frumraun á einn af öryggi ráðstefnur fyrir nokkrum árum. Með Airpwn! þú ert fær um að í raun dæla umferð aftur í netið. Tölvur sem voru að reyna að fara út á internetið og reyna að komast að Google.com til Facebook.com að harvard.edu sjá illgjarn viðbrögð koma í og ​​strax gera ráð fyrir, allt í lagi, það er svar sem ég var að bíða eftir og á endanum fá efni frá harvardsucks.org eða nameyourfavoriteshocksite.com, og þú getur séð hversu fljótt það mun versna. Allar þessar tegundir af hlutum er ekki hægt að gera með þessum hlerunarbúnað tengsl þar með hlerunarbúnað tengingu það er erfitt að Snoop á umferð. Ef ég er slæmur strákur og á annan endann er tölva og á hinum endanum er leið þín - mótald - eina leiðin fyrir mig að fá inn á milli því sambandi er að í raun skeyta tölvuna mína í einhvers staðar í miðjunni eða gera eitthvað annað við leið, eitthvað downstream. En með þráðlaust, það geta vera eins og þægilegur eins og að sitja í fremstu röð á kennslustofu, og þú getur gert alls konar viðbjóðslegur efni til fólks í bak. Við skulum tala um hvernig þú getur varið gegn sumum af þessum hlutum. Fólkið sem þróað þráðlausa staðla - the 802,11 - þau eru ekki heimsk fólk því að allir teygja af the ímyndun. Þetta er flott tækni og þegar það frumraun í 1999, þeir komu út með þessum staðli sem kallast WEP. Þú getur séð hér þegar þú reynir að tengja þráðlaust net, þú hefur alls konar mismunandi valkosti í öryggismálum. Það er góður af a sársauki vegna þess að það eru 6 allt saman og það aldrei raunverulega vit sem 1 til að taka þátt. Þessi 1 efst er sá fyrsti sem þeir komu upp með heitir WEP. WEP stendur fyrir Wired Equivalent Privacy, tel ég, ekki Wireless Encryption Protocol sem er algengt misnomer. Vegna þess að það reynir að gefa þér næði samsvarandi og öryggi verndun jafngildir að hlerunarbúnað netið Með WEP það endar að gerast er, þú hafa a einfaldur, lítið lykilorð sem þú slærð í og ​​sem þjónar til að dulkóða öllum samskiptum þínum á milli tölvunnar og leið. Hvað er vandamálið með WEP þó? Lykilorðið með WEP er mjög stutt, og notar einnig allir að sama nákvæmlega lykilorð  og svo er það mjög auðvelt að hallmæla. Svo mjög fljótt fólk mynstrağur út að WEP var vandamál, og eina ástæðan sem þú sérð það að sýna sig enn á þessum litla gaur er - Það eru nokkrar eldri kerfi sem ekki nota WEP - það sem þú ættir að í stað að leita að eru WPA og jafnvel WPA2 staðla sem voru gefin út síðar. Þessi kerfi eru miklu betur fara í vörn á þráðlausa netið. Það sagði, að þeir enn hafa sumir hackability. Það eru verkfæri þarna úti sem hægt er að fara að gera þetta. Eitt í lagi að geta verið viðbjóðslegur að ef þú tengir og staðfest við þráðlaust leið og eru að nota einhvers konar dulkóðuð samskipti, snýr það út að tölvusnápur getur auðveldlega senda einn pakka að aftengja þig frá leið, og þegar þeir hafa ótengdur þér að þeir geta þá hlustað á - þeir geta snökt þá pakka sem þú ert að reyna að koma aftur á tengingu við beininn. Og með því að upplýsingar sem þeir geta þá farið í og ​​hallmæla the hvíla af samskiptum þínum. Þetta er ekki með neinum hætti hvers konar örugg ofar öllu ímyndunarafl. The annar hlutur sem þú getur gert þegar þú ert að setja upp þráðlaust net eða þú ert að taka þátt þá er - þú tekur eftir því hérna þegar ég er að taka þátt þetta net það biður um nafn á minn net. Þetta er einnig þekkt sem SSID. Og þú sérð hér að á hægri ég kassa sem sýnir mér fyrirliggjandi SSIDs. There er a Harvard University, a CS50 og CS50 Staff net. Nú, hvernig margir af þú vissir það var CS50 Starfsfólk net í kring? Sumir af þú. Ekki ykkur. Vandinn við þetta er auðvitað, að við höfðum ekki sett þetta upp á lista okkar SSIDs, enginn hefði vitað um það líklegast. Ég vona. Nema þú krakkar eru allir að reyna að sprunga í útvarpstæki okkar. En þetta er eitthvað sem þú getur gert það er mjög mikilvægt þegar þú ert að setja upp leið heima. Þetta verður að öllum líkindum ekki gerast fyrir nokkrum árum fyrir a einhver fjöldi af þér, en ekki að hafa í huga að halda að SSID út þaðan og ekki líka nefna það eitthvað frábær sameiginlegt mun hjálpa halda þér öruggt meira í the langur hlaupa. Endanleg nokkrir hlutir sem þú getur gert. Eitt er HTTPS. Ef þú ert á Starbucks, ef þú ert á almannafæri Wi-Fi svæði og þú ákveður að opna bankareikning þinn, aðgang að Gmail, Facebook, ganga úr skugga um að þessi tengsl eru að fara yfir HTTPS. Það er óákveðinn greinir í ensku added lag af öryggi, bætt lag af dulkóðun. The einn hlutur að hafa í huga hér er að Hversu margir af þú hafa alltaf smellt í gegnum þessi stóru rauða skjár sem segir "Þessi vefsíða gæti verið slæmt." Ég veit að ég hef. Það er líklega þegar þú ert alla vafra til að fara að sjá föðurland eða eitthvað svoleiðis, ekki satt? Já. (Áhorfendur hlátur) Já. Þar sem þú ferð. Við vitum sem er að horfa á heimalandið. Það stór, rauður skjár þarna oft gefa til kynna að eitthvað angurvær er að fara á. Stundum er það bara the website sig er óörugg, en það sama stór, rauður skjár kemur upp þegar fólk er að reyna að fjall net árásir á þig. Svo ef þú sérð að stór, rauður skjár koma upp á Starbucks, ekki smella í gegnum það. Bad fréttir. Bad fréttir ber. Endanleg hlutur sem þú getur litið á er einhvers konar VPN. Þetta VPN er í boði í gegnum Harvard - vpn.fas.harvard.edu-- og hvað þetta gerir er að það setur í raun örugga tengingu milli þín og Harvard, funnels umferð í gegnum það, og þannig ef þú ætlar að sitja á stað eins og Starbucks er hægt að tengja við Harvard, að fá þessi örugga umferð, og þá beit frá Harvard. Aftur, ekki pottþéttur. Fólk getur fengið í miðjunni. Þeir geta byrjað að brjóta það, en þetta er langt öruggari en að treysta á öryggi á Wi-Fi eingöngu. Allt í lagi. Í stuttu máli, þegar þú ert að setja upp þráðlaust net, þegar þú ert að fara út til að nota þráðlaust á almannafæri - hvort sem það er Starbucks, hvort sem það er fimm Guys, hvort sem það er B.Good, eitthvað svoleiðis - hvar sem þeir hafa Wi-Fi - vera meðvitaður um umhverfi þitt. Vertu meðvituð um hvað fólk getur gert. Og vera öruggur. Ekki aðgang bankareikning þinn. Það gæti verið dónalegur vakning ef einhver sýnir sig með aðgangsorði síðar. Með því að fara Crimson! Og ég ætla að snúa dæminu aftur yfir til Davíðs í síðasta orð. (Applause) [David] Ég hélt að ég myndi deila eitt af persónulegri reynslu. A tól sem þú might eins og til að spila með - þó Apple hefur að mestu útrýmt á þessu máli Ef þú hefur uppfært hugbúnaðinn þar - en til þessa enda ekki í raun að vera fær um að treysta hugbúnað sem við notum, og stig nate er, að geta snökt töluvert af því sem aðrir eru að gera þarna úti - það var stykki af hugbúnaður sem kom út um ári-og-hálfs síðan núna. [IPhoneTracker] [http://petewarden.github.com/iPhoneTracker/] Um nokkurt skeið, iTunes - fyrir iCloud, þegar þú varst syncing iPods þinn eða iPhones þinn eða eða iPads þinn með iTunes - í þágu afrit, hvað iPhone og þessi önnur tæki hafa verið að gera í nokkurn tíma er að nýta GPS-gögnum. Þú veist allt kannski að iPhone þín og Androids og Windows farsíma og þess háttar þessa dagana geta fylgst með hvar þú ert í þágu sýna þér kort og svipuð - vel hvað Apple og þessi önnur fyrirtæki gera er Þeir fylgjast oftast nánast alls staðar sem þú hefur í raun verið í þágu bæta gæði þjónustunnar. Eitt er hægt að fá fleiri miða auglýsingar og þess háttar, en tveir, þeir geta líka fundið út hvar eru þráðlausa hotspot í heimi, og það getur hjálpað við geo-staðsetning - konar triangulation stöðu fólks. Long saga stutt, allir af okkur hafði verið gangandi loftnet í nokkurn tíma. Því miður, Apple hafði hönnun ákvörðun - eða skortur þar - að ekki dulkóða þessar upplýsingar þegar það var verið backed upp við iTunes. Og hvað öryggi vísindamaður fann var að þetta var bara mikið XML skrá - a gríðarstór textaskrá - situr í iTunes hugbúnaðinn fólks, og ef þú varst bara svolítið forvitinn, þú gætir farið poking um sögu maka þíns, sögu félaga þíns, systkinis þíns sögu og þess háttar, og takk sumir frjáls hugbúnaður, getur þú samsæri öll þessi GPS hnit - breiddar og lengdar. Svo gerði ég reyndar með eigin símann minn. Ég tappi í símanum mínum, og viss nógur, útgáfa mín af iTunes var ekki dulkóðað á þeim tíma, og það sem ég var fær um að sjá voru eigin mynstur mína. Hér er United States og hver af þessum bláa hringi táknar þar sem ég varð að hafa verið yfir þeim fyrri mánuði eiga þessa tilteknu síma.  Ég eyði miklum tíma, að sjálfsögðu, upp í Norðaustur, smá tíma í Kaliforníu, skammvinnt ferð til Texas, og ef þú zoom þá á þessu - þetta er allt svona fínt og áhugavert, en ég vissi þetta. Flestir vina minna vissi þetta, en ef þú kafa í dýpri þú sérð hvar ég eyða mestum tíma mínum í Norðaustur. Ef þú latch á sumum kunnugleg-útlit bæjum - þetta stóra, bláu bleki splotch er í raun miðju yfir Boston, og þá er ég að eyða smá tíma í úthverfum geislar út frá Boston. En ég var líka að gera töluvert af samráði því ári. Og á þessu ári er austur SEABOARD, og ​​þú getur raunverulega sjá mig og iPhone minn í vasa mínum ferðast fram og til baka á milli Boston og New York og Philadelphia neðar, og eyða smá tíma í frí á Cape, sem er litli armur þarna úti. Svo, hver þessara punkta er nokkur staður sem ég hafði verið, og alveg unbeknownst mér þetta allt saga var bara sat þarna á tölvunni minn skrifborð. Ef þú zoom út - þetta var reyndar svolítið áhyggjur. Ég hafði ekki recollection alltaf hafa verið í Pennsylvania viðkomandi ár. En ég þó svolítið erfiðara um það og ég mynstrağur út, ó, það var í raun að ferð og viss nógur, síminn minn hafði lent mig. Apple hefur síðan dulkóðuð þessar upplýsingar, en þetta er líka bara vitnisburður um hversu mikið af upplýsingum er safnað um okkur, og hversu auðvelt - fyrir betri eða verri - það er ásættanlegt. Einn af taka-burt vonandi úr ræðu Rob, frá tala nate er og litlu myndefni eins og þessi í dag er bara að vera allt meira meðvitaðir um þetta þannig að jafnvel þó - eins og til að benda Rob er - we're konar ruglaður, ekki satt? Það er ekki mikið sem við getum gert þegar það kemur að því að sum af þessum ógnum, en í lok dags að við þurfum að treysta einhverju eða einhverjum ef við viljum í raun og veru að nota þessa tækni. Að minnsta kosti getum við verið að gera upplýstar ákvarðanir og reiknað ákvarðanir hvort við ættum í raun að vera að skoða þetta sérstaklega viðkvæmar reikning eða við ættum í raun að vera að senda þessi örlítið grunar augnablik skilaboð  á Wi-Fi umhverfi eins og þetta. Svo, með því að segja, bara einn quiz enn einn fyrirlestur eftir. Við munum sjá þig á miðvikudaginn þá mánudagur. (Lófaklapp og skál) [CS50TV]