[MUSIC] DAVID J. Malan: Olgu. Nii et see on CS50 ja see on nädala lõpuks 10. Nii mõned Te olete näinud seda juba, kuid liikuvad hilinenud on artikkel, et ma mõtlesin, et ma lugesin väljavõte ja siis näitan sulle, kolmeminutilise video, mis maalib sama pilt. See oli tõesti liigutav lugu, ma mõtlesin selle ristumiskohas Reaalses maailmas tõeliselt kaalukad kasutab tehnoloogiat. Nii oli see artikkel pealkirjaga "poiss oversleeps rongis, kasutab Google Maps leida pere 25 aastat hiljem. "Ja Esimesed paar punktid olid "Kui Saroo oli viis aastat vana ta läks tema vanem vend lunima muutmiseks on reisirong linnas, umbes kaks tundi oma väikese kodulinna. Saroo väsis ja hopped lähedal rongi, kus ta arvas, et tema vend, siis jäin magama. Kui ta ärkasin ta oli Calcutta, ligi 900 miili kaugusel. Saroo püüdnud leida oma tee tagasi, aga ta ei teadnud, nime oma kodulinna. Ja kui väike kirjaoskamatu poiss suur linn täis unustatud lapsed tal praktiliselt puudub võimalus saada koju. Ta oli tänaval laps mõnda aega kuni kohaliku adopteerimisagentuuri konks teda üles koos Austraalia paar kes tõi ta elavad Hobart, Tasmaania. Saroo liikus seal õppinud Inglise ja kasvasin. Aga ta ei lõpetanud otsin oma pere ja oma kodulinna. Aastakümneid hiljem avastas ta Google Maa ja järgneb rööbasteed. Ja annab ise ettenähtud raadiuses põhineb, kui kaua ta arvas, et ta oli magama ja kui kiiresti ta arvas rongi läksin, ta teadis, et ta tahaks kasvanud soojas kliimas, ta teadis, et ta rääkis Hindi nagu laps, ja ta tahaks öeldi et ta nägi välja nagu ta oli Ida-India. Lõpuks, pärast aastaid pesemine satelliit fotod, ta tunnustatud mõned vaatamisväärsused. Ja pärast jututoas administraator lähedal asuva linna Facebook lehel, mõistis ta, leidis ta koju. " Nii et siin on siis video räägib mis lugu oma vaatenurgast. [VIDEO PLAYBACK] -See oli 26 aastat tagasi ja ma olin lihtsalt omakorda viis. Saime rongijaama ja me minna koos treenida. Mu vend ütles just Jään siin ja ma tulen tagasi. Ja ma arvasin, et, noh, tead, ma võib ka lihtsalt magama minna ja siis ta lihtsalt mind üles äratada. Ja kui ma ärkama järgmisel päeval, kogu vedu oli tühi runaway rong kummitus rong võttes mind ma ei tea kus. Olin vastu välja Austraaliasse et Austraalia perele. Ja ema oli kaunistatud minu tuba India kaarti, mis ta pane kõrval mu voodi kõrval. Ma ärkasin igal hommikul näha, et kaart, ja seega see justkui hoidis mälestusi elus. Inimesed ütlevad, et sa üritad leida nõela heinakuhjas. Saroo, sa ei leia seda kunagi. Ma pean vilgub kohti, Ma kasutasin minna, vilgub minu pere nägu. Seal oli pilt mu ema istub maha oma jalad ületanud lihtsalt vaadates tema nutma. Elu on lihtsalt nii raske. See oli mu aare. Ja ma otsisin Google Map ja aru seal Google Earth samuti. Maailmas, kus võid suumida I hakkasid kõik need mõtted ja millised võimalused, et seda võiks teha minu jaoks. Ma ütlesin endale, noh, tead, sul kõik foto mälestusi ja vaatamisväärsused, kus sa oled alates ja sa tead, mida linn välja näeb. See võib olla taotlus, mida saab kasutada, et leida oma tee tagasi. Ma arvasin, et, noh, ma panen täpiga Calcutta rongijaam raadius line, et sa peaksid otsima umbes selles valdkonnas. Ma leidsin need rong lugusid. Ja ma hakkasin pärast seda ja ma tulin rongijaama, mis kajastub sama pilt, mis oli minu mälestused. Kõik sobitatud. Ma lihtsalt mõtlesin, yep. Ma tean, kus ma lähen. Ma lihtsalt lasen kaart, et ma on peas viia mind ja võtab mind Tagasi minu kodulinnas. Tulin lävel maja et ma sündisin ja kõndis ümber umbes viisteist meetrit ümber nurga. Seal oli kolm daamid seisis väljaspool üksteise kõrval. Ja keskel üks astus. Ja ma mõtlesin, et see on oma ema. Ta tuli edasi, ta kallistas mind ja me olid seal umbes viis minutit. Ta haaras mu käe ja ta võttis mind maja ja sai telefoni teel ja ta helises mu õde ja mu vend öelda et su vend on lihtsalt kõik äkki tundus nagu kummitus. Ja siis oli perekond taasühinenud jälle. Kõik on hea. Ma aidata mu ema välja. Ta ei pea olema Orjame. Ta võib viia ülejäänud elu rahus. See oli nõela heinakuhjas, kuid nõel oli seal. Kõik on seal. Kõik me oleme maailmas on nupuvajutusega. Aga sul on tahtmist ja otsustavust tahtmisest. [END VIDEO PLAYBACK] Nii tõesti armas lugu. Ja see tegelikult meenutab mulle üsna teema, mis on olnud saada üsna natuke tähelepanelikkuse hilja Crimson, rohkem riiklikult üldiselt. Eriti kui MOOCs võtate etapi lõpus. MOOCs on nende suurte ja avatud online-kursused, millest CS50 on üks. Ja inimesed räägivad, kuidas võtta Näiteks humanitaarteadused ei ole tõesti järelejõudmise või ei ole kaugeltki nii moes kui nad kunagi olid. Ja ma kutsun teid poisid, palju nagu Jonathan tegi esmaspäeval, mõelda umbes nagu te väljute 50, ja me teame, juba umbes 50% te ei jätkake võtta teine ​​arvuti teadust muidugi, ja see on täiesti peen ja oodata. Sest üks üldisi eesmärke klassi, nagu see on tõesti anda teile poisid lihtsalt arusaamine sellest, kuidas kõik see kraam toimib ja kuidas see maailm tehnoloogia töötab. Nii et kui sa oled juba oma maailmad, kas see on pre-med või kas see on humanitaar-või sotsiaalteadused või mõnes teises valdkonnas kokku, et kutid toovad mõningaid tehnilisi Savvy tabelis ja aitab teha arukaid otsuseid, kui tegemist kasutamise ja Tehnoloogia oma maailm. Näiteks meenus mulle hilja liiga kahe bakalaureuse klasside Võtsin kaks aastat tagasi, mis olid selline lihtne kasutusviiside tehnoloogia aga kunagi nii veenvad. Esimene Nights professor Tom Kelly kui olete võtnud klassi. See klass on klassikaline muusika Selles etapis siin kus sa õpid vähe midagi muusika. See on tegelikult esimene Nights et CS50 laenatud idee lugusid neile vähem mugav vahel ja mugavamaks. Minu aeg oli neil eri lugusid lastele absoluutselt mingit muusika kogemus, nagu mind, ja siis lapsed, kes oli täita, sest need olid viis aastat vana. Ja selle klassi Näiteks oli just kodulehel nagu kõige muu, kuid see oli kodulehel, et lubada teil uurida muusikat ta ja taasesitada muusikaline klippe klassi veebist ja lihtsalt kasutada tehnoloogiat väga takistusteta. Teine klass aastat hiljem, et ma auditeeritud sisuliselt grad kooli, Anthro 1010, sissejuhatus Arheoloogia siin. See oli hämmastav. Ja üks kõige kaalukaid veel super ilmne, tagantjärele, otstarbed tarkvara oli, et professorid et klassi kasutatakse Google Earth. Istusime üle tänava mõnes saalis. Ja sa ei saa reisida, näiteks Lähis-Idas, et dig et üks Euroopa professorid olid lihtsalt tulevad tagasi, kuid me võiksime teha, et peaaegu poolt ringi lendamas Google Earth ja vaadates linnu silma vaadata aadressil dig site ta oli just tagasi Nädal tagasi. Nii et ma kutsun teid, poisid, eriti humanitaar-, minna Tagasi nende asutuste pärast seda klass tuues oma lõpliku projekti teiega või ideid oma, ja vaata, just see, mida saate teha, et ligunema oma enda valdkondades humanitaarteadused või kaugemale koos natuke selline asi, mida me oleme uurinud siin CS50. Nii et pilt maalitud, arvasin me tahaks proovida lahendada kaks asja täna. Üks, püüab anda teile tunde kus saab minna pärast 50. Ja eriti, kui valite võidelda veebipõhine projekti on uskumatult levinud, kuidas saab minna umbes õhkutõusmist kõik CS50 on Apupyörät ja läheb seal oma ja ei ole vaja tugineda PDF või spetsifikatsiooni pset? Ei ole vaja tugineda CS50 seade enam. Aga kas tõesti vedama ennast kuni teie bootstraps. Olles seda öelnud, C-põhineb lõplik projektid on teretulnud. Asjad, mis kasutavad seista kaasaskantav raamatukogu graafika on teretulnud. Me teame, et statistiliselt palju inimesed hammustada välja projektide PHP ja Python ja Ruby ja MySQL ja muude keskkondades, nii me diagonaal mõned meie selgitusi poole sellest. Aga kiire pilk tagasi. Niisiis võtsime enesestmõistetavaks pset7 Asjaolu, et $ _SESSION eksisteerinud. See oli super globaalne, ülemaailmne, assotsiatiivne massiiv. Mida see teile teha? Funktsionaalselt mis funktsiooni see annab meile? Jah? Jälgida kasutaja ID. Ja miks on see kasulik? Et oleks võimalik salvestada sees see super globaalne JHarvard või [? Scroobs?] või Malan kasutajatunnus, kui ta või ta külastab saiti. Täpselt. Nii et sa ei pea sisse logima uuesti ja uuesti. Oleks tõesti lame veeb kui iga kord, kui klõpsad link sait nagu Facebook või iga kord klõpsasid kirjad Gmaili sa tuli taasautentida tõestada, et see on ikka teie ja mitte teie toakaaslane kes oleks kõndinud kuni oma arvuti sinu äraolekul. Nii me kasutame sessiooni lihtsalt mäleta, kes sa oled. Ja kuidas on see rakendatud all kapuuts? Kuidas on veebileht, mis kasutab protokoll, mis brausereid ja serverid rääkida, kuidas HTTP, mis on kodakondsuseta protokoll, oletame. Ja kodakondsuseta Ma mõtlen, et kui sa ühendada kodulehel, alla laadida mõned HTMLs mõned JavaScript mõned CSS, oma brauseri ikoon peatub ketramine. Sul ei ole pidev ühendus server tavaliselt. Nii see on. Ei ole riik säilitab pidevalt. Niisiis, kuidas on seansi läbiviimise selliselt, nii, et iga kord, kui te ei külasta uus lehekülg, kodulehel mäletab kes sa oled? Mis on aluseks rakendamise detail? Shout it out. See on üks sõna. Cookies. Hea küll. Nii küpsiseid. Noh, kuidas küpsiseid kasutatakse? Me meelde, et cookie on üldiselt ainult osa teabest. Ja see on sageli suur juhuslik number, kuid mitte alati. Ja küpsist istutatud oma raske drive või arvuti RAM nii et iga kord, kui vaadata, et sama veebilehel, brauseri meenutab server, olen kasutaja 1234567. Ma olen kasutaja 1234567. Ja nii kaua, kui server on meeles et kasutaja 1234567 on JHarvard, kodulehel on lihtsalt eeldada, et sa oled, kes sa ütled, et oled. Ja meenutada, et me praegu neid küpsiseid omamoodi vormis virtuaalne käsi seista. See saadetakse HTTP päised lihtsalt meelde server, et te olete, kes seda arvab, et sa oled. Muidugi, seal on oht. Mis ohtu ei see avada meile kuni kui me põhiliselt kasutades omamoodi klubi või lõbustuspargi mehhanism mäleta, kes me oleme? Kui kopeerite kellegi küpsis ja kaaperdamine oma istungil, kui nii võib öelda, siis saab teeselda, et olla keegi teine ​​ja kodulehel tõenäoliselt lihtsalt läheb usu sind. Nii et me tuleme tagasi selle. Kuna muu teema täna kaugemale mõjuvõimu ka rääkima kohta väga hirmutav maailmas me elame ja kui palju sellest, mida te teete web, kui palju, mida sa teed koguni oma mobiiltelefone täna saab jälitatud tõesti keegi vahel sina ja punkt B. Ja Ajax, tagasivõtmist. Me vaatasime ainult lühidalt selles, kuigi olete kasutanud seda kaudselt pset8 sest te kasutate Google Maps ja kuna sa oled Google Earth. Google Maps ja Google Earth ei laadida kogu maailma oma desktop loomulikult hetkel, kui koormus pset8. See ainult laeb ruudu maailma või suurem ruudu maa. Ja siis iga kord, kui mingisugune juhtida välja hulga võite märgata - eriti kui on aeglane ühendus - te võib näha mõningaid hall hetkeks või natuke udune kujundeid nagu arvuti allalaadimine rohkem nagu plaadid, rohkem nagu kujundlikkus maailma või maa. Ja Ajax on üldiselt tehnika mille veebilehed on seda tehes. Kui teil on vaja rohkem ära kaardi, oma brauser on kavatse kasutada Ajax, mis on ole ise keele või tehnoloogia, see on lihtsalt tehnikat. See on kasutada JavaScripti mine saada rohkem teavet server, mis võimaldab teie brauser minna saad, mida on kuni ida või mis läände mis muidu praegu näitamine, et kaart. Nii et see on teema, mida paljud teist tekib otseselt või kaudselt lõpliku projekti kui valida, midagi, mis on samamoodi dünaamiline, et tõmbab andmed mõne kolmanda osapoole veebilehel. Niisiis on meil tõesti põnev järgmisel kolmapäeval ees. Viktoriin üks, informatsiooni eest on CS50.net juba. Tea, et seal saab olema läbivaatamise istung tuleval esmaspäeval kell 05:30. Kuupäev ja kellaaeg on juba postitatud edasi CS50.net selles About lehel. Ja ärge andke teada, teie on mingeid küsimusi. Pset8 vahepeal on juba pihus. Ja lubage mul käsitleda ühe FAQ päästa inimesed mõned stress. Enamasti palju jutuvadin näeme kell tööaega ja palju vigu näeme teatas arutamine on tõepoolest vigu õpilase kood. Aga kui olete kokku puutunud midagi nagu Google Earth plug-in krahh või isegi mitte töö ja teil on kindel, et see pole teie, see ei ole [? chamad?] küsimus, see ei ole bug te sisse jaotus kood. Aru lihtsalt FYI - see on omamoodi plaan Z - et viimane kord, kui me kasutada seda probleemi määratud ja me sattus sarnane küsimusi, seal on rida koodi service.js et sisuliselt on see, mis ütleb, lülitage hoonete. Ja nad töötavad umbes viimane kord tegime seda jälle nurka kui õpilased lihtsalt ei saa darn asi tööle on muuta truuks vale et üks rida koodi. Ja sa leiad selle, kui otsite läbi service.js. Ma ei soovita seda, sest sa luua kõige viljatu maastik Cambridge, Massachusetts. See sõna otseses mõttes lamedamaks oma maailma nii et sa näed ainult õpetamise kaaslaste ja muidugi assistentide silmapiiril ja ei hooned. Aga aru, mis tahes põhjusel Google Earth plug-in tundub siiski olevat lollakas, aasta hiljem, nii et see võib olla oma negatiivset salvestada. Nii et pigem abinõu pisarateni, kuurort keerates hooned maha, kui sa tead, see plug-in, mis ei ole koostööd Mac või PC. Aga see on jälle viimane abinõu, kui sa oled kindel, et see ei ole viga. Nii hackathon. Paar õrritused lihtsalt et sa põnevil. Meil oli üsna vähe RSVP. Ja just maalida pilt sellest, mida ootab, ma mõtlesin, et ma annan teile paar sekundit meenutada selle kujundlikkus eelmisel aastal. [MUSIC] DAVID J. Malan: Oota, oh. Meil on isegi meie sõnasõnaline CS50 süstikud. [MUSIC] DAVID J. Malan: Nii et see, mis ootab sa nii hackathon. Ja see annab võimaluse, et olema selge, mitte alustada oma lõpliku projekte, vaid jätkata tööd oma lõpliku projekti kõrval klassikaaslased ja personali ja palju toitu. Ja veel, kui sa oled ärkvel 05:00 me võtan teid mööda teed IHOP. CS50 õiglane, vahepeal on kulminatsioon kogu klass, kus teil tuua oma sülearvutid ja sõbrad, võibolla isegi pere tuba ülikoolilinnakus mööda tänavat ilmutada oma projekte sülearvutid, kõrgele tabelid nagu see, kus on palju toitu ja sõbrad ja muusika taustal samuti meie sõbrad tööstus. Ettevõtted nagu Facebook ja Microsoft ja Google ja Amazon ja kobarad teised, nii et kui huvitatud vaid kuulnud reaalses maailmas või vestlemas inimesed umbes reaalses maailmas internatuuri või täistööajaga võimalusi, tean, et mõned meie sõbrad tööstuses on seal. Ja paar pilti saame maalida siin on järgmised. [MUSIC] DAVID J. Malan: Olgu. Nii et siis on CS50 õiglane. Teeme nüüd edasi rääkida lugu mis tõesti annaks sul loodetavasti asjad nagu lõplik projekte. Nii et üks paar vähe asju seeme oma pidades, kas lõplik projektide või lihtsalt üldisemalt projektide võite otsustada tegeleda pärast Muidugi, need on kõik dokumenteeritud edasi manual.cs50.net kus CS50 kasutusjuhend, kus meil on palju tehnikate dokumenteerida. Ja see on lihtsalt stenografist märke öeldes, et on olemas maailma asju nimetatakse SMS e-postile väravaid, mis on fancy viis öeldes, seal on serverid maailmas et teada, kuidas teisendada kirju tekstsõnumeid. Nii et kui teie lõplik projekt, mida soovite luua mingisugune mobiilne teemaline teenus, mis võimaldab hoiatada sõbrad või kasutajate sündmused ülikoolilinnakus või mis on teeninud D Hall et öösel või sellise häire funktsioon, tean, et see on lihtne nagu saates e nagu PHPMailer mida võis kasutada pset7 või nägime lühidalt nädala või nii tagasi, et aadressid niimoodi. Ja tegelikult saab teksti see eeldades sinu sõber on piiramatu texting kava ja sa ei taha tasu neid $ 0,10. Aga kui sa saata e-posti oma sõbrale kes sa tead, et Verizon või AT & T Gmaili ja lihtsalt selle saatmist oma telefoninumber ükskõik sub domeeni on, mõistad sa saadab tekstisõnumi. Aga see on üks nendest asjadest, olema ettevaatlik. Kui sa troll läbi eelmise aasta CS50 videos ma arvan, et see oli kohutav, kohutav, kohutav viga Kirjutasin koodi sattus saates umbes 20.000 tekst Sõnumite elavad meie õpilased klassis. Ja ainult sellepärast, et keegi märganud, et nad saavad mitu tekst sõnumeid mulle tegi mul teabeta tabas kontroll C kiiresti ja lõpetage see protsess. Kontroll C, te mäletate, on sinu sõber juhtudel, lõputu silmuse. Nii Hoiduge võime me just antud et sa pigem vastutustundetult, kõige tõenäoline, põhineb minu isiklik kogemus. Aga see on netis ja on olemas olnud juba mõnda aega. Hea küll. Nii textmarks.com. Nii et see on veebilehel. Ja seal on kobarad teised seal samuti, et me oleme tegelikult kasutatud klassina aastaid suutma saada tekstsõnumeid. Kahjuks lühisõnumid on lihtne nagu saates e-kirju niimoodi. Vastuvõtmine on natuke raskem, eriti kui sa tahad olla üks need sexy lühinumbrite, mis on ainult viis või kuus numbrit. Nii näiteks aastaid oled olnud võimalik saata tekstsõnumi - ja te võid proovida ka seda - kuni 41411. Ja see on telefoninumber seda eriti käivitamisel. Ja kui saadate sõnumi 41411 - Ma kirjutan selle siia, et 41411 - ja siis saadab sõnumi meeldib SBOY jaoks Shuttle Boy. Ja siis kirjuta midagi nagu mather quad. Nii et sa saata tekstsõnum selle telefoninumber. Mõne sekundi sa peaksid tagasi vastust CS50 Shuttle Boy teenus, mis on shuttle sõiduplaani tarkvara, mis meil on olnud läbi seal veebis juba mõnda aega. Ja see vastab te kaudu tekstsõnum. Sest see, mida me oleme teinud, kui klassist programmeerija, on kirjutada tarkvara, konfigureeritud meie tasuta konto teksti märgid kuulata tekstisõnumeid saata et SBOY tol number. Ja mida nad teevad, on edasi nende tekst sõnumeid meie PHP-põhine veebisait nagu HTTP parameetrid öeldes siin. See kasutaja seda telefoni number saadetakse teile tekstisõnumi. Kas seda, mida sa tahad. Nii et me kirjutas mõned tarkvara, mis peale saanud string nagu SBOY mather quad, me sõeluda see. Oleme aru saada, kus ruumid on sõnade vahel. Ja meil on klassis otsustada kuidas vastata, et. Ja kui sa püüad, et nüüd, näiteks sa peaksid nägema, via jooksul vastuse Mõne sekundi paari süstikud läheb alates mather et quad kui üldse. Ja seal on muid peatusi. Võite sisestada Boylston või muu selline lõpetab ülikooli, ja see peaks tunnustada neid sõnu. Nii parse.com. See on veel üks teenus, mis me oleme osutades mõned õpilased eest lõplik projekte, mis on imeline aastal, et see on tasuta mõistlik kasutamine. Ja kui ma lähen parse.com näete et see on alternatiiv oleks tegelikult midagi oma MySQL andmebaasi. Ja ausalt öeldes, see on lihtsalt omamoodi hüpnotiseeriv. See on see, mis on sees pilv isegi pilvisel päeval. Nii parse.com võimaldab teil teha hunnik huvitavaid asju. Ja seal on muid alternatiive sellele seal. Näiteks võite kasutada neid kui selg end andmebaasi. Nii et sa ei pea olema web hosting ettevõte. Sa ei pea olema MySQL andmebaasi. Selle asemel saate kasutada oma lõppfaasi. Kui sa teed mobiilne projekti Android või iOS vms, teame, et on olemas asjad nagu push teenused nii saab push teateid oma sõpradele või oma kasutajate kodus ekraane. Ja siis hunnik muid funktsioonid samuti. Nii et kui teil on huvi, vaadake neid veebisaite ja veebilehed nagu neid lihtsalt näha, kui palju teiste inimeste õlad saab seista teha lahedaid tarkvara oma. Nüüd nii autentimist FAQ, on see, kuidas sa tegelikult taga et teie kasutajad on inimesed loengusse, Harvardi üliõpilased või õppejõud või töötaja? Nii CS50 on oma autentimine teenust nimega CS50 ID. Mine selle link ja te saate piirata kodulehel kedagi Harvard ID, näiteks. Nii tean, et me saame hakkama. Te ei peaks olema äri öelda, mis su Harvard ID? Milline on sinu Harvard kadunud? Lubage mul nüüd midagi teha. Me teeme kõik, et. Ja mida me anname sulle tagasi on kellegi nime ja e-posti aadress, kuid mitte midagi tundlik. App mobiiltelefoni, see võib olla tehtud tööd mobiilne seade, kuid See ei ole päris mõeldud, et. Nii et sa lõpuks kulutusi mitte triviaalne aega seda teha. Nii et ma ei soodustaks sellel liinil praegu. See on tõesti mõeldud veebipõhiseid rakendusi. Nii web hosting. Nii et kui sa ei ole näinud Muidugi koduleht - ja siin on koht, kus me hakkame lugu - web hosting on kõik umbes maksavad tavaliselt teenuse võõrustada server omanduses kellegi teise poolt veebis, mis on IP-aadress ja sa siis pane kodulehel peal. Ja nad tavaliselt teile kiri kontode ja andmebaasid ja muid selliseid funktsioone. Tea, et kui sa ei taha, et tegelikult eest maksma, minema, et URL seal ja CS50 tegelikult on mittetulunduslik konto, mida saab kasutada, et tegelikult ei ole http://project seadme sisemust oma lõpliku projekti. Kui sa tegelikult tahad seda midagi nagu, isawyouharvard.com, saab osta, et domeeninime - kuigi mitte, et eriti üks - ja siis võid minna umbes hosting seda avalik veebiserver nagu pakume te siit läbi. Ja tegelikult, kui võõras, kui te pole kunagi olnud isawyouharvard.com, üks, mine sinna. Aga kaks, tean, et see oli noor naise nime Tej Et Toor Too kaks aastat tagasi, kolm aastat tagasi, kes oli CS50 vilistlasi juhtus päev või kaks enne CS50 õiglane saatis talle oma maja meililisti ja voila. Kaks päeva hiljem CS50 õiglane, ta oli sadu kasutajad kõik hiiliva kohta üksteisele oma veebilehel ja öelda, kuidas nad olid näinud tema või tema loengusse. Nii et üks CS50 lemmik edulugusid CS50 lõplik projekt. Niisiis, kuidas sa minna laskmise veebilehte niimoodi internetis? Noh, seal on mõned, nagu koostisosade siin. Nii et üks, sa pead ostma domeeninimi. Seal on kobarad kohti maailm, kust saate osta domeeninime. Ja näiteks, mis soovitame ainult sellepärast, et see on populaarne ja see on odav, nimetatakse namecheap.com. Aga sa võid minna godaddy.com ja kümned inimesed seal. Võite lugeda üles ülevaateid. Aga enamasti see ei loe, kellelt sa osta domeeninime. Ja nad on erineva hinnaga ja nad erinevad järelliide. Sufiksid nagu. Com,. Net, . Org. Io. Tv, need tegelikult erinev hind. Aga kui me tahtsime teha midagi cats.com saame minna sellele leheküljele nuppu Otsi. Arvatavasti see on vastu võetud. Aga ilmselt, catsagainst.com on olemas. pluscats.com on olemas. Lovecats, catscorner, dampcats.net. Kõik see loodetavasti pseudo juhuslikult genereeritud. Kui soovite cats.pw, 1500 $ ainult, mis on natuke hull. Nii et keegi on tõesti takerduda kõik kass seotud domeeninimed siia muutuvate hindadega. Nagu kõrvale, vaatame. Kes on cats.com? Teadke, et te olema Teie käsutuses üsna keerulisi käske nüüd. Nagu ma tippida sõna otseses mõttes kes on cats.com? Ja sellepärast, et internet on struktureeritud saate tegelikult näha, kes on registreeritud selles. Ilmselt see isik on [kuuldamatu] kasutades proxy teenust. Nii Kesiganed cats.com ei taha maailm teada, kes nad on. Nii nad on registreeritud, kui läbi mõne juhusliku privaatsust teenust. Aga mõnikord sa tegelikult saada tegelik omanikud. Ja see tähendab, eriti kui sa oled jälitavad mõned käivitamisel ja te tõesti mõned domeeninime ja sa oled nõus maksma kellegi see, saate aru saada kontakt teave sel viisil. Aga huvitav on see. Lubage mul kerida kuni see osa. Nii see on, et sama tulemuse. Ja see on vaid kleepuv. Nii ilmselt cats.com saab sinu jaoks õige hinnaga. Aga mis on huvitav siin on see, et nimeserverite - see on kokku kuritarvitamise mida nimi server peaks olema - oma nimi server ei peaks olema thisdomainforsale.com. Kui me tegelikult valida midagi - Valime midagi veidi õigustatud, nagu, kes on google.com, ja liikuge üles siin. Nii et siin - Mis seal juhtus? Huvitav. Beyond, kes on - Jätame selle veel väike võti. Hetkel mit.edu? OK. See on kasulik. Nii et see on see, mida ma lootsin. Õiguspärast kasutamist DNS teenust. Nimeserverite siin näidata järgmised. See on MIT viis öelda, kui keegi maailmas, kus nad on liigid mit.edu ja hits Enter oma sülearvuti, kas Mac või PC, eks kuidagi lõpuks aru saada, et inimesed maailmas, kes teavad, mida IP aadress on mit.edu või ükskõik sub domeenid mit.edu või mõni need serverid siin - ja see tegelikult näeb MIT infrastruktuuri päris kindel, kui te ootaks. Neil on mitu nime serverid mis on hea koondamise. Ja tegelikult, nad tunduvad olevat kogu maailmas jaotunud üle kogu maailma. Kamp need tunduvad olevat USAs paar Aasias, üks Euroopas, kaks kusagil mujal. Aga asi on selles, et DNS et oleme olnud võttes enesestmõistetavaks ja üldiselt kirjeldada kui suur Exceli tabelis mis on IP-aadresside ja domeen nimed on tegelikult üsna keeruline hierarhiline teenust nii, et Maailmas on tegelikult hulga servereid, mis sisuliselt teada, kus kõik. coms on või kõik . võrgud on kõik . Orgs on, ja nii edasi. Nii et kui sa minna ja osta domeen nimi kohas nagu nimi Odav või Mine issi või mõni muu veebilehel, üks sammudest, mis sa pead tegema sa, kui sa seda veel oma lõplikku Projekti on öelda registripidaja kellelt sa osta domeen nimi, kes maailmas teab oma veebisaidi IP-aadressid, kes oma nimi serverid on. Nii et kui te kasutate, näiteks CS50 on hosting konto - me juhtumisi on Selle konto kaudu dreamhost.com mis on populaarne web hosting ettevõte - nad ütlevad teile, et sa peaksid ostma domeeni ja öelda maailmale, et domeeni nimi server on ns1.dreamhost.com, ns2.dreamhost.com, ja ns3.dreamhost.com. Aga see on kõik. Buying domeeninimi Kastmiseks raha ja saada omandi domeeni, kuid see on rohkem nagu rendi küll. Sa saad seda aasta ja siis nad arve sa kordumatult kogu ülejäänud oma elu, kuni te öelda domeeninimi. Ja siis ütle neile, kes nimi serverid on. Aga siis sa oled teinud oma registripidaja. Ja sealt saate suhelda ainult koos oma web hosting ettevõte, mis aastal CS50 juhtum on DreamHost. Aga jälle, rohkem dokumendid peavad olema tingimusel, kui sa otsustad minna sellel liinil. Nii et kui te seda pärast kursuse Lõpuks lihtsalt googling web hosting firma omakorda üles tuhandeid võimalusi. Ja ma tavaliselt soovitame küsida sõbrad, kes võis kasutada ettevõte enne kui nad soovitavad neid ja oli hea kogemus. Sest seal on palju sõita öösel web hosting firmad, nagu mees oma keldrisse server mis on IP-aadress. Tal on mõned ekstra RAM ja kõvaketas ruumi ja lihtsalt müüb web hosting kontod, kuigi ei ole nii, et server võib käidelda sajad kasutajate või tuhandeid kasutajaid. Nii mõistad sa saad mida te eest maksma. Sest üsna samas minu isiklik kodulehekülg leht - ja see oli täiesti vastuvõetav sest ma olin nagu, kaks külastajat kuus - Ma maksin, nagu, $ 2,95 kuus. Ja ma olen päris kindel, et see oli kellegi keldrisse. Aga jälle, sa ei saa tingimata mingit garantiid uptime või mastaapsuse. Nii et taas, sa tavaliselt otsin kell midagi enamat. Aga mis SSL? Mis siis SSL kasutatakse? Olgem nüüd hakata juhtima Euroopa suunad turvalisus ja asju, mis võib meid kahjustada. Eriti kui te venture läbi oma. Mis on SSL või mis SSL kasutatakse? Turvalisus, OK. Nii seda kasutatakse turvalisuse. Mida see tähendab? Seega tähistab Secure Sockets Layer. Ja see näitab URL mis algab https://. Paljud meist on tõenäoliselt kunagi kirjutatud https://, kuid sa sageli, et Teie brauser suunatakse alates HTTP HTTPS, nii et kõik on seal pärast krüpteeritud. FYI, kasutades SSL nõuab tavaliselt, et teil on unikaalne IP aadress. Ja tavaliselt, et saada unikaalne IP aadress peate maksma web hosting firma paar dollarit rohkem kuus. Nii mõistavad seda on väga lihtne rakendada nendel päevadel ostes IP aadress ja ostes mis nimetatakse SSL sertifikaat. Aga mõistan, et see ei tule mõned lisakulud. Ja kui me üritame hirmutada vaid natuke, see ei ole isegi tingimata 100% kaitsev iganes see on üritate kaitsta. Nii turvalisus, ma mõtlesin, et ma teha omamoodi juhuslik rännata siin. Nagu te võite teada, CS50 loeng videod, meie tootmise meeskond on olnud fänn nagu ma olen võttes tõesti kena fotograafia campus ja õhust fotograafia viimasena. Kui sa kunagi otsida ja sa näed midagi lendab väike kaamera, see võib tegelikult olla CS50. Ja ma mõtlesin, et ma jagan minut mõned kaadrid meeskond on kogutud, eriti, kui me vaatame, et kevadsemestril ja järgmisel sügisel. Kui keegi teist on harjumus fotograafia, Videograafia, oleksime armastan sind kaasatud kulisside taga. Aga rohkem on need andmed kord nädalas. [MUSIC] DAVID J. Malan: Selgub seal minigolf peal Staadionil et me ei teadnud midagi. [MUSIC] DAVID J. Malan: Näete lühiiseloomustus undamine seal. [MUSIC] DAVID J. Malan: Parim osa siin on, vaadata lonkija vasakul. [MUSIC] DAVID J. Malan: Veel üks näide selle kohta, mida saate teha tehnoloogia, mis on vaid riivamisi, ausalt, julgeolekuga seotud. Aga ma arvasin, et oleks rohkem lõbus viis lihtsalt öeldes julgeolekut. Seega vaatame, kas me ei hirmuta teid nüüd mitte ainult natuke vähe ohud, aga ka aluseks arusaamine sellest, mis nende ohtude on nii, et liigub edasi saab otsustada, kuidas ja kas kaitsta ise selliste asjade vastu ja vähemalt tähelepanelikkusele neid kui teha otsuseid selle kohta, kas või mitte Kirjuta, et e-posti, kas logida arvesse, et kodulehel, või mitte kasutada, et cyber cafe Wi-Fi access punkt, et sa tead, mida ohud on tõepoolest ümber. Joonatan osutatud midagi meeldib see esmaspäeval. Ta oli aken ekraanil shot. See üks on Mac. Kui paljud teist on kunagi installitud tarkvara Mac või PC? Ilmselt igaüks. Kui paljud teist on andnud palju mõelnud et kirjutades oma salasõna kui küsitakse? Ma mõtlen, et isegi mina ei ole, ausalt. Nii paar meist on hea kell paranoiline. Aga mõelda, mida sa oled tegelikult siin teed. On tüüpiline Mac või PC olete administraatori konto. Ja tavaliselt sa oled ainus, kes kasutavad laptop vähemalt nendel päevadel. Nii et teie konto, Malan või JHarvard või mis iganes see on, on administraatori konto. Ja mida see tähendab, teil on root juurdepääsu oma arvutisse. Võite installida ükskõik mida tahad, kustutada midagi, mida soovid. Ja tavaliselt nendel päevadel, sest Dateeritud disaini otsuseid aastat tagasi viis kõige tarkvara saab paigaldada on administraator. Ja isegi kui teie Mac või PC on vähemalt saanud piisavalt targad üle aasta viimaste inkarnaatioihin Mac OS ja Windows ei jookse oma kasutajanimi vaikimisi administraator, kui sa alla laadida mõned Uus programm off internet ja proovige installida, sa oled ilmselt läheb et küsitakse salasõna. Aga saak on sel hetkel, sa oled sõnalt ulatas võtmed oma arvuti üle iganes juhuslikult programmi sa lihtsalt alla laadida ja võimaldab see paigaldada mis iganes ta tahab. Ja kui Jonathan vihjas, mõistma et ta võiks öelda, et ta tahab paigaldada oma tarkvara, et sa hoolid kohta, Spotify või iTunes või mis iganes see on sa üritad paigaldada. Aga sa sõna otseses mõttes usaldav autor või autorite tarkvara ainult seda, mida programm peaks tegema. Aga on midagi peatusteta enamik programme kõige opsüsteemid failide kustutamise, üleslaadimist need mõned firma veebileht, alates trall ümber, krüpteerimiseks asju. Ja veel, me oleme omamoodi ehitatud kogu infrastruktuuri aasta usaldust. Ja nii aru, et sa oled olnud usaldav juhuslikult inimesi ja juhuslikult firmad enamasti. Ja Joonatan vihjas ka mõnikord need ettevõtted ise on omamoodi teadlikult pahatahtlik, eks? Sony püütud palju Flack paar aastat tagasi paigaldamise mida kutsuti rootkit kit inimeste arvutid ilma nende teadmata. Ja põhisisu oli see, et kui sa ostetud CD näiteks, et nad ei taha, et teil oleks võimalik kopeerida või rippida muusikat off, CD oleks paigaldada ilma teie teadmata, rootkit arvutisse. Rootkit lihtsalt tähendab tarkvara, mis töötab administraatorina, mis potentsiaalselt teeb halbu asju. Aga nende seas, mida see asi ei olnud ta peitis ennast. Nii mõned võite olla üsna Savvy arvuti ja tean, ma võid avada Task Manager või Activity Monitor ja võin vaadata kõik Euroopa arcanely nimega programmid töötavad. Ja kui midagi tundub kahtlane Ma lihtsalt tappa või kustutada. Aga see, mida rootkit tegi. See sisuliselt tähendab, et kui töötab Task Manager ei näita ennast. Nii oli tarkvara seal. Ja ainult siis, kui sa tõesti tundus raske võib teil isegi leida. Ja seda tehti nimi koopia kaitse. Aga kujutage ette, mida võiks on teinud teisiti. Nüüd kaitse seisukohalt ise. Palju veebilehed on imeliselt armuline, et nad panid need tabalukk ikoonide oma kodulehele, mis tähendab, et veebisait on turvaline. See on bankofamerica.com hommikul. Mis siis, et väike tabaluku ikoon seal tähenda kõrval nupul Logi sisse? Absoluutselt mitte midagi. See tähendab, kui keegi teab, kuidas kasutada Photoshop muuta pildi tabaluku ikoonil. Nagu sõna otseses mõttes, et see on seal pidi olema positiivne märku kasutajale meeldib, ooh, turvalisele veebisaidile. Ma usaldan seda veebilehte ja nüüd kirjuta oma kasutajanimi ja parool. Ja see on olnud konventsionaalses aastat, alles täna hommikul. Aga pean harjumusi, mis see muutub meid. Mõtle kaudne sõnum, et kõik Nende pankade antud juhul on saates meile aastaid. Kui näed tabalukk, seejärel kinnita. Olgu? Niisiis, kuidas saab kuritarvitada süsteemi usaldust, kui sa oled paha poiss? Pane tabalukk oma veebilehel, ja Loogiline on, et kasutajad on konditsioneeritud aastaid eeldada tabalukk tähendab turvaline. Ja see võib tegelikult olla turvaline. Sul võib olla imeliselt turvaline SSL HTTPS ühendus võltsitud veebisait. com. Ja keegi teine ​​maailmas võimalik näha mis sa parasjagu käsi teda oma kasutajanimi ja parool kontole. See aga võib-olla on veidi rahustada. Nii et see on Ekraanipilt top minu brauseri täna hommikul kell bankofamerica.com. Ja teate ka siin me on tabaluku ikoon. Mis see tähendab selles kontekstis Chrome vähemalt? Nii et see on nüüd kasutades SSL. Nii et see on tegelikult parem asi. Ja asjaolu, et Chrome on muuta see roheline on mõeldud juhtida meie tähelepanu on asjaolu, et see on mitte ainult üle SSL. See on firma, et keegi läbi seal on kontrollinud on tegelikult bankofamerica.com. Ja see tähendab, et Bank of America, ostes oma nn SSL sertifikaat sisuliselt suur juhuslik, mõnevõrra juhuslikud arvud, mis rakendavad turvalisust, nad on olnud kontrollinud mõned sõltumatu kolmas pool, mis ütleb, eks. See on tegelikult tegevjuht Bank of Ameerika üritab osta sertifikaat. Chrome Seetõttu usun, et sertifitseerimisasutus ja öelda roheline, see on bankofamerica.com. Ja Bank of America lihtsalt maksab vähe sada dollarit, et või mõni tuhat erinevalt mõnikümmend dollarit. Aga ka siin, kui paljud teist on kunagi käitunud kuidagi teisiti, sest brauseri URL on roheline asemel must? Õigus? Nii paar meile. Ja see on hea, et olla paranoiline. Aga isegi siis, you need, kes isegi teate neid asju, kas sa tegelikult lõpetage logige muidu turvaline veebilehel kui URL ei ole roheline? Olgu, ilmselt ei ole, eks? Vähemalt enamik meist, kui see ei ole roheline, tõenäoliselt sa lihtsalt läheb olla nagu, mida iganes. Nagu, ma tahan sisse logida sellel veebilehel. Sellepärast ma siin olengi. Ma lähen sisse sellegipoolest. Nagu kõrvale, Chrome on vähe parem sellest. Aga seal on palju brausereid nagu Firefox näiteks, vähemalt mõnda aega, kui see tabaluku ikoon on, saab tegelikult panna iga ikoon oma. Las ma vaatan, mida viimane versioon Firefox välja näeb. Nii et kui me läheme CS50.net. OK, nii et nad on paranenud ka. Mis brauserid teha on nagu, siin on näiteks [? Edendavad on?] hari siin. See on nn lemmik ikoon veebilehel. Aastaid tagasi - tegelikult ei ole nii kaua aega tagasi - et vähe kilp oleks olnud õigus siin kõrval URL. Kuna mõned geenius otsustas, et see oleks lihtsalt vaadata päris stiilne olla Teie graafilise logo õigus kõrval oma URL. Ja disain tark, et tegelikult on üsna kaalukas. Mis siis halb start teed? Nad hakkasid muutma oma lemmik ikoonid, või nende default ikoon kodulehekülg olla ei hari aga tabalukk, mis oli mingit tähendust. Muud kui nende lemmik ikoon oli tabalukk see ei olnud märke turvalisust. Nii lugu siin paar ma arvan. Üks on see, et seal on tegelikult mõned heasoovliku mehhanismid õpetamise juures kasutajaid turvalisust veelgi kui te ei ole isegi teadlikud, mida roheline mõeldud või mida isegi HTTPS tähendas. Aga kui neid mehhanisme saada meid halb harjumus usaldav veebilehed kui me näeme neid positiivseid signaale, nad väga kergesti kuritarvitada nägime hetk tagasi millegi tobe niimoodi. Nii sessiooni ärandamine satub mängima, nagu me varem öelnud, küpsiseid näiteks. Mida see tegelikult tähendab? Noh sessiooni ärandamine on see kõik umbes varastamine kellegi küpsiseid. Nii et kui ma avada Chrome siin, sest Näiteks, ma avada Inspector siia alla ja ma lähen Network Tab - ja me oleme seda teinud enne - ja ma lähen midagi http://facebook.com Enter, kogu hunnik asju läheb üle ekraani sest kõik pildid ja CSS ja JavaScript failid. Aga kui ma vaatan see siin märgata et Facebook on tõesti istutada üks või rohkem küpsiseid minu brauser siin. Nii et need on põhiliselt käsitsi templid, mis esindavad mind. Ja nüüd loodetavasti minu brauser esitada see uuesti ja uuesti, kui korrates, et veebilehel. See aga on kindel, me ütlesime paar nädalat tagasi, kui te kasutate SSL. Aga isegi SSL ise ei ohustatud. Mõelge, kui kõik viis SSL töötab. Kui teie brauser ühendub serveri server kaudu https://, pikk lugu lühike, krüptograafia on kaasatud. See ei ole nii lihtne nagu Caesar või VISIONAIRE või isegi DES, DES alates kui tagasi pset2. See on keerukam kui see. Seda nimetatakse avaliku võtme krüptograafia. Aga tõesti suur ja tõesti juhuslik numbreid kasutatakse rüselus vahel teabe punkti, siis, ja punkt B, nagu facebook.com. Probleem on aga selles, kui paljud meist uuesti kunagi kirjuta https:// algusesse meie kodulehel ühendus selles turvaline režiimis? Ma mõtlen, et kui paljud teist isegi tüüp http://facebook.com? Olgu, kui sa, nagu, tere. Teil ei ole vaja seda teha, enam, eks? Brauser on aru saada. Aga enamik meist tõepoolest kirjuta facebook.com. Sest kui me kasutame brauseri brauserid on saanud piisavalt targad poolt 2013 oletada, kui te kasutate brauser, kirjutad aadressi, siis ilmselt tahad seda kasutada ei e-posti teel või vahetu sõnumside. Sa mõtled HTTP ja Port 80. Kõnealused konventsioonid on vastu võetud. Aga kuidas suunamine toimib? Noh, teate, mis juhtub siin. Kui ma lähen tagasi Chrome - ja teeme seda incognito režiimis, nii et kõik mu küpsised visata. Ja lase mul minna siin, jälle facebook.com. Ja vaatame, mis juhtub. Tuletame meelde, et esimene taotlus oli tõepoolest ainult facebook.com. Aga mis oli vastus, et ma sain? See ei olnud 200 OK. See oli 300 või 301, mis on suunata mulle minna http://www.facebook.com, mis on kus Facebook tahab minna. Aga kui me vaatame järgmise taotluse, ja me oleme näinud seda enne, teate, millised on nende teine ​​vastus on. Nimelt, et nad tahavad mind nüüd minge SSL versiooni Facebook. Nii et siin on võimalus. See on imeliselt kasulik funktsioon lihtsalt veebis ja HTTP. Kui lõppkasutaja nagu Facebook tahab mind jääda turvaline versioon oma veebilehel, suurepärane. Nad suunab mind endale. Ja nii ma ei pea isegi arvad. Aga mis siis, kui vahel punkt A ja B, Teie ja Facebook, seal on mõned paha poiss, seal on mõned süsteemi administraator Harvardi kes on uudishimulik näha, kes teie sõbrad on. Või on mingi - aastat tagasi, seda kasutatakse heli hull - kuid seal on mõned valitsuse üksus nagu NSA, kes on tegelikult huvitatud kes sa oled poking Facebookis. Kus on võimalus olemas? Noh, nii kaua, kui keegi on piisavalt tehniline Savvy ja neil on juurdepääs Teie tegelik võrk üle Wi-Fi või mõne füüsilise traat, Mis võiks nad teha? Noh, kui nad on samas võrgus te ja nad teavad midagi TCP / IP ja IP aadressid ja DNS ja kuidas kõik, mis töötab, mis siis, kui see mees keskel, mis siis, et National Security Agency, mis see võib olla, kuid mis siis, kui isik lihtsalt reageerib kiiremini kui Facebook HTTP taotluse ja ütleb: oh, ma olen Facebook. Lase käia, ja siin on HTML facebook.com. Arvutid on päris darn kiire. Nii võid kirjutada programm töötab server nagu nsa.gov et kui see kuuleb taotluse teid facebook.com, väga kiiresti maha stseene saab tõeline facebook.com tegemine täiesti [? esque?] turvaline SSL seos NSA ja vahel Facebook, saada, et HTML väga turvaliselt sisselogimise lehele ja seejärel NSA server lihtsalt reageerib te koos sisselogimise lehele facebook.com. Nüüd, kui paljud teist oleks märka et te kasutate Facebook üle HTTP veel sel hetkel, sest olete kogemata ühendatud nsa.gov ja ei Facebook? URL ei muutu. Kõik see on tehtud kulisside taga. Aga enamik meist, mina kaasa arvatud, ilmselt ei märka selline pisiasi. Nii võite olla täiesti toimiv seost teie ja mida te arvates on Facebook, kuid seal niinimetatud mees keskel. Ja see on üldine termin mees keset rünnak, kus teil on mõned üksuse vahel sa ja punkt B, mis on kuidagi manipuleerida, varastada või vaadates oma andmeid. Nii et isegi SSL ei ole kindel, eriti kui olete ekslikult ei sisselülitamist, sest kuidas need põhjuslikud mehhanismid tegelikult töötavad. Niisiis õppetund täna siis ka on, kui te tõesti tahad olla paranoiline - ja isegi siin on ohud - sa peaksid tõesti alustada sattumist harjumus kirjutades https://www sõltumata domeeninime tegelikult hoolivad. Ja kõrvale ka seal järjekordne ähvardades arvesse sessiooni ärandamine. Väga sageli, kui te esimest korda külastada kodulehel nagu facebook.com, kui server on konfigureeritud öelda, et et käsi tempel ta sokutada eile tuleks kindlustada ennast, oma brauser võib väga hästi, peale külastavad asjad facebook.com google.com, twitter.com, brauseri võidakse esitada, et käsi tempel ainult tuleb slapped alla ja ütles ei. Kasuta SSL. Aga see on liiga hilja sel hetkel. Kui sa oled juba saatnud oma käsi tempel, küpsiste, on selge, ei SSL, teil on sekundi murdosa haavatavuse kus keegi nuusutamisel liiklust, kas toakaaslane või NSA, saab siis kasutada, et sama küpsise ja koos natuke tehnilisi Savvy, esitada see tema enda. Teine rünnak te võite ei mõelnud. See üks on tõesti, kui sa kruvi see üles kirjalikult mõned kodulehel, et kuidagi kasutab SQL. Nii et siin, näiteks, on ekraanil shot Harvardi login. Ja see on üldine näiteks midagi koos kasutajanimi ja parool. Super ühine. Nii oletame, et SSL on olemas ja pole mees keskel või midagi sellist. Nüüd oleme keskendunud serveri kood, et sa võiksid kirjutada. Noh, kui ma kirjuta kasutajanimi ja UUS oletame, et PIN-teenus rakendatakse PHP. Ja siis võib olla mõned kood et server niimoodi. Saada kasutaja nime postitus super maailma ja saada uue võtme, ja siis kui nad kasutavad mõned pset7 nagu kood seal päringu funktsiooni mis võiks seda teha. Vali Star kasutajate kus kasutajanimi võrdub ja salasõna võrdub. See tundub esmapilgul, täiesti mõistlik. See on süntaktiliselt kehtiv PHP koodi. Loogiliselt miski valesti seda. Arvatavasti seal veel mõned read, mis tegelikult midagi teha nii et tuleb tagasi andmebaasist. Aga see on haavatav järgmistel põhjustel. Pange tähele, et, nagu hea kodanik, Ma panen jutumärgid, ühe hinnapakkumisi, kasutaja nimi. Ja panin ülakoma UUS. Ja see on hea, sest nad on ei peaks olema numbrid. Tavaliselt nad ei kavatse olla tekst. Nii, et ma tsiteerin neid nagu stringid. Ja kui ma nüüd edasi edasi mis siis, kui - ja ma olen eemaldanud kuule PIN-teenuse - Mis siis, kui ma üritan sisse logima President [? Scroob?] aga ma väita, et minu parool 12345 'OR '1' = '1 ja teave mida ma ei ole teinud. Ma ei sulge muu ühe hinnapakkumise. Sest ma olen päris terav siin on paha poiss. Ja ma eeldan, et nad oled ei ole väga hea oma PHP ja MySQL koodi. Ma arvan, et sa ei kontrolli olemasolu hinnapakkumisi. Mis siis juhtus, et kui teie kasutaja on kirjutatud, et string, päringu sa parasjagu luua näeb välja selline. Ja pikk lugu lühike, kui teie ja midagi koos või teie või midagi koos see läheb tagasi rida andmebaasist. Sest see on alati nii, et 1 võrdub 1. Ja lihtsalt sellepärast, et ei osatud ette näha et kasutajad, hea või halb, võib on ülakoma oma nime loonud SQL päringu, mis on ikka veel kehtivad ja naaseb nüüd rohkem tulemusi kui sa oleks võinud ette. Ja nii see paha poiss nüüd on potentsiaalselt sisse serverisse sest teie andmebaas on tagasi rida isegi kui ta ei tea, mida [? Scroob on?] Tegelik parool. Oh, ma mõistsin kirjaviga siin. Ma olen öelnud salasõna võrdub 12345 nagu eelmise Näiteks või 1 võrdub 1. Ma ajan selle online. Miks me siis olete päringu abil funktsioon küsimärgid? Üks asi, päringu funktsiooni Kas Teie jaoks on see tagab, et kui te kaotate argumenteerides pärast komadega siin niimoodi, et päring See on tegelikult saadetakse andmebaasis näeb välja selline. Palju koledam vaadata, kuid tagasi kaldkriipsud on automaatselt sisestatud, et vältida just seda süst rünnak, et ma näitasin hetk tagasi. Nüüd lõbus XKCD et ma mõtlesin, et ma tõmba siin, et loodetavasti peaks nüüd olema veidi arusaadavamaks on see siin. Natuke? Äkki vaja natuke rohkem arutelu selle kohta. Nii et see on vihjates väike laps Bobby, kes on kuidagi võtta ära veebileht, mis on lihtsalt uskudes, et see, mida kasutaja on trükitud aastal ei ole tegelikult SQL koodi, kuid tegelikult on string. Nüüd võite meelde tuletada, et drop - Te olete näinud seda - drop abil Tabeli kustutamiseks, kustutada andmebaasi. Nii et kui sa sisuliselt väita, et Sinu nimi on Robert "droptabl estudentsomething,] võite väga hästi trikk andmebaas mitte üksnes kontrollida, et sa oled tõepoolest Robert, aga semikoolon ka jätkake tilk lauale. Ja nii SQL süst rünnakud tegelikult olla ähvardades kui see mille saate kustutada kellegi andmed, saate valida rohkem andmete suhtes kui ette, saate sisestada või uuendada andmeid. Ja te võite tegelikult näha seda lepitud kodus kasutada, mitte pahatahtlik eesmärgil, kuid ainult õppematerjalid, on igal ajal palutakse teil sisse logida Veebileht, eriti mingi mitte väga avalik, väga populaarne veebileht, proovige sisse logida nagu John O'Reilly või keegi, kellel on ülakomaga oma nimi. Või sõna otseses mõttes lihtsalt kirjutada ülakoma, Enter, ja vaata, mis juhtub. Ja liiga tihti, traagiliselt, inimesed pole desinfitseeritakse nende sisendite ja kindlaks teinud, et asjad nagu tsitaadid või semikooloniga on pääsenud. Mistõttu on pset7 anname sa selle päringu funktsiooni. Aga ärge all mõista täpselt mida ta teeb sinu jaoks. Nii et öelda, naudite web sel nädalal. Ja me näeme esmaspäeval. Järgmise CD50. [MUSIC]