[MUZIKO] DAVID J. Malan: Bone. Do tiu estas CS50 kaj ĉi estas la fino de semajno 10. Iuj do el vi eble vidis tiun jam, sed estante cirkulis de malfrua estas artikolo kiun mi pensis mi ŝatus legi ekstrakto de kaj tiam montri al vi tri minuto video kiu pentras la saman bildon. Ĝi estis vere kortuŝa rakonto, mi pensis pri tiu komunaĵo de la reala mondo kun malfalse konvinka uzoj de teknologio. Do la artikolo estis titolita, "Knabo oversleeps sur trajno, uzas Google Mapoj trovi familion 25 jarojn poste. "Kaj la unua paro de alineoj estis, "Kiam Saroo havis kvin jarojn li iris kun lia pli aĝa frato al scrounge por ŝanĝi la pasaĝero trajno en urbo ĉirkaŭ du horoj el lia malgranda hejmurbo. Saroo laciĝis kaj saltetadis sur proksima trajno kie li opiniis sian frato, tiam endormiĝis. Kiam li vekiĝis li estis en Kalikato, preskaux 900 mejlojn for. Saroo provis trovi sian vojon reen, sed li ne scias, La nomo de lia hejmurbo. Kaj kiel eta knabo analfabeta en vasta urbo estas plena de forgesitaj infanoj li havis preskaŭ nenian ŝancon akiri domon. Estis strato infano por tempo ĝis loka adopto agentejo enganchados lin kun aŭstralia paro kiu elkondukis lin vivi en Hobarto, Tasmanio. Saroo kopiis tie, lernis Angla, kaj kreskis. Sed li neniam ĉesis serĉi lia familio kaj sia patrujo. Jardekoj poste, li malkovris Google Tero kaj sekvis fervojaj trakoj. Kaj donante sin preskribitaj radiuso bazitaj sur kiom longe li pensis ke li estis dormis kaj kiel rapide li pensis la trajno tuj, li sciis li estis plenkreska en varma klimato, li sciis, ke li parolis Hindia kiel infano, kaj li volonte estis rakontita ke li aspektis kiel li estis el Orienta Hindujo. Fine, post jaroj de scouring la satelito fotoj, li rekonis kelkajn limŝtonoj. Kaj post babili kun administranto de proksima vilaĝo Facebook paĝo, li komprenis Li volas trovi hejmon. " Do jen do la video rakontis ke rakonto de sia perspektivo. [VIDEO reprodukto] -Ĝi havis 26 jarojn kaj mi preskaŭ turni kvin. Ni alvenis al la fervoja stacidomo kaj Ni eniris trajnon kune. Mia frato ĵus diris Mi restos ĉi tie kaj mi revenos. Kaj mi nur pensis, nu, vi scias, mi povus tiel simple iri dormi kaj tiam li devos nur veki min. Kaj kiam mi veki la sekva tago, la tuta vagono estis malplena sur fuĝantajn trajno, fantomo trajno prenante al mi, mi ne scias kie. Mi estis adoptita al Aŭstralio al aŭstralia familio. Kaj panjo estis ornaminta mia ĉambro kun la mapo de Barato, kiun ŝi meti apud mia lito. Mi vekiĝis ĉiumatene vidante ke mapo, kaj de ĉi tie, ĝi ia subtenis la memoroj vivas. Homoj dirus, vi provas trovi kudrilo en fojnamaso. Saroo, vi neniam trovos. Mi havas ekbrilojn de la lokoj kiuj Mi kutimis iri, la ekbriloj de mia familio edroj. Tie estis la bildo de mia patrino sidis malsupren per siaj kruroj transiris nur rigardante sian krion. Vivo estas ĝuste tiel forta. Tiu estis mia trezoro. Kaj mi rigardis en Google Mapo kaj rimarkis ke estas Google Earth tiel. En mondo, kie vi povus zomi al mi komencis havi cxiujn tiujn pensojn kaj kiaj eblecoj ke ĉi tio povus fari por mi. Mi diris al mi, nu, vi scias, vi havas la tutan fotografia memoroj kaj limŝtonoj kie vi estas de kaj vi scias, kio la urbeto aspektas. Tio povus esti apliko kiu vi povas uzi por trovi vian vojon reen. Mi pensis, nu, mi metos punkton sur Kalkuto Trajno Stacidomo en radioaparato linio kiu vi devus esti serĉado ĉirkaŭ ĉi loko. Mi renkontis tiujn trajno trakoj. Kaj mi komencis sekvi ĝin kaj mi venis al trajno stacio kiu reflektas la saman bildon, kiu estis en miaj memoroj. Ĉio koincidis. Mi nur pensis, yep. Mi scias, kie mi iras. Mi simple tuj lasi la mapo, ke mi havas en mia kapo min gvidu kaj portu min apogi al mia hejmurbo. Mi venis al la sojlo de la domo ke mi naskiĝis kaj marŝis ĉirkaŭ cxirkaux dek kvin metroj ĉirkaŭ la angulo. Okazis tri sinjorinoj staras ekstere apuda al ĉiu alia. Kaj la meza paŝis antaŭen. Kaj mi nur pensis, tiu estas via patrino. Ŝi venis antaŭen, ŝi brakumis min, kaj ni estis tie dum ĉirkaŭ kvin minutoj. Ŝi kaptis mian manon kaj ŝi prenis min al la domo kaj atingis en la telefono kaj ŝi sonoris mia fratino kaj mia frato diri ke via frato havas ĝuste ĉiuj subita aperis kiel fantomo. Kaj poste la familio estis kunvenis denove. Ĉio estas tute bona. Mi helpas mian patrinon eliri. Ŝi ne devas esti slaving for. Ŝi povas konduki la cetera ŝia vivo en paco. Ĝi estis kudrilo en fojnamaso, sed la nadlo estis tie. Ĉio estas tie. Ĉio ni havas en la mondo estas la krano de butono. Sed vi devas havi la volon kaj la determino de voli ĝin. [FINO reprodukto de vídeo] Do vere dolĉa rakonton. Kaj ĝi efektive memorigas min pri tute temo kiun oni estis atingi sufiĉe de atento de malfrue en The Crimson, pli nacie ĝenerale. Precipe kiel MOOCs prenas la etapo de malfrue. MOOCs esti ĉi tiuj amasaj kaj malfermita retaj kursoj pri kiu CS50 estas unu. Kaj homoj parolas kiel, por Ekzemple, la homaroj ne estas vere reatingas aŭ ne estas preskaŭ tiel en boga kiel ili iam estis. Kaj mi kuraĝigas vin infanoj, multe kiel Jonathan faris lunde, pensi pri kiel vi eliri 50, kaj ni scias Jam ĉirkaŭ 50% de vi ne faros daŭrigi preni alian komputilon scienco kurso, kaj tio estas tute fajna kaj atendis. Ĉar unu el la komunajn celojn de klaso kiel ĉi tio estas vere por kapabligi you guys kun nur kompreno de kiel ĉiuj ĉi aferoj funkcias kaj kiel tiu mondo de la teknologio verkoj. Por ke, kiam vi revenas en viaj propraj mondoj, ĉu ĝi estas antaŭ-med aŭ ĉu ĝi estas la homaroj aŭ la sociaj sciencoj aŭ iu alia kampo aro, kiun vi infanoj alportas iuj teknikaj savvy al la tablo kaj helpi por fari inteligentajn decidojn kiam temas pri la uzo de kaj enkonduko de la teknologio en via mondo. Ekzemple mi rememoris malfrue tro de du de la studento klasoj mi prenis du jaroj, kiuj estis tiaj simplaj uzoj de teknologio sed cxiam tiel konvinkaj. Unua Noktoj kun Profesoro Tom Kelly se vi prenis la klaso. Ĝi estas klaso de klasika muziko en ĉi tiu stadio tie kie vi lernas iom ion pri muziko. Fakte Unua Noktoj ke CS50 prunteprenis la ideo de reloj por tiuj malpli komfortaj inter kaj pli komforta. En mia tempo ili havis malsamajn temoj por infanoj kun absolute nenia muziko sperti kiel mi, kaj tiam la infanoj, kiuj estis realigo de kiam ili estis kvin jarojn. Kaj tiu klaso, ekzemple, nur havis retejo kiel plej ajna alia, sed Estis retejo kiu permesis vin esplori muziko sur ĝi kaj ludi reen muzikaj klipoj de klaso, de la retejo, kaj ĝuste uzi teknologion en tre senjunta vojo. Alia klaso jardekoj mi auditados, esence, en grad lernejo, Anthro 1010, Enkonduko al Arkeologio tie. Ĝi estis mirinda. Kaj unu el la plej konvinka ankoraŭ super evidenta, Retrospektive uzoj de programaro estis, ke la instruistoj en tiu klaso uzas Google Earth. Ni sidis trans la strato en iu prelego halo. Kaj vi ne povus veturi, ekzemple, al la Mezoriento por la dig ke unu de la instruistoj estis ĵus reveninta sur, sed ni povus fari tion virtuale per flugante ĉirkaŭ en Google Earth kaj rigardas birda okulo vido en la fosi lokon li ĵus revenis de antaŭ unu semajno. Do mi rekomendas al vi, knaboj, speciale en la homaroj, iri apogi al tiuj fakoj post tio klaso alportante viajn fino projektoj kun vi aŭ ideoj de viaj propraj, kaj vidu precize kion vi povas fari por infuse via propraj kampoj en homaroj aŭ preter kun iom da ĉi tiu speco de aĵo kiun ni esploris tie en CS50. Do kun tiu bildo pentrita, pensis ni volas provi pritrakti du aferoj hodiaŭ. Unu, provas doni al vi la senton de kie vi povas iri post 50. Kaj en aparta, se vi elektos pritrakti retejo bazita projekto kiel estas nekredeble komuna, kiel vi povas iri pri demetante ĉiujn CS50 la trejnado radoj kaj tuj tie sur viajn proprajn kaj ne havante por fidi al PDF aŭ specifo de pset? Ne havante fidi sur CS50 aparato plu. Sed povas vere tiri vin mem laux via bootstraps. Kun tiu diris: C-bazita fino projektoj estas bonvenaj. Aĵoj kiuj uzas la stand por porteblan biblioteko en grafiko estas bonvenaj. Ni nur scias, ke statistike multan homoj mordi ekstere projektojn en PHP kaj Python kaj Ruby kaj MySQL kaj aliaj medioj, tial ni emo kelkaj el niaj rimarkoj al tiu. Sed rapidan rigardon reen. Tiel ni prenis donita en pset7 la fakto, ke $ _SESSION ekzistis. Tio estis la super tutmonda, tutmonda, asocieca tabelo. Kaj kion signifas ĉi lasu vin fari? Funkcie, kio estas la prezentos ĉi donas al ni? Jes? Spuri la uzanto ID. Kaj kial tio estas utila? Por povi gardi ene de ĉi tiu super tutmonda JHarvard aŭ [? Scroobs?] aŭ Malan la uzanto ID kiam li aŭ ŝi vizitas ejo. Ekzakte. Do vi ne devas ensaluti en denove kaj denove. Estus vere lama tutmonde retejo se ĉiufoje kiam vi klakis ligon en loko kiel Facebook aŭ ĉiufoje alklakita email en Gmail vin devis re-legalizi pruvi ke ĝi estas ankoraŭ vi ne viajn kunloĝanto kiu povus esti marsxis al via komputilo en via foresto. Do ni uzu SESIO al nur memori, kiu vi estas. Kaj kiel estas ĉi implementado sub la kapuĉo? Kiel retejo kiu uzas, la protokolo kiu retumiloj kaj serviloj paroli, kiel faras HTTP, kiu estas senŝtataj protokolo, diru. Kaj per senŝtataj Mi volas diri, iam vi konekti al retejo, elŝutu iuj HTMLs, iuj JavaScript, iuj CSS, via retumilo ikono ĉesas ŝpini. Vi ne havas konstantan rilaton al la servilo tipe. Estas tio. Ne estas stato subtenis senĉese. Do kiel estas SESIO implementado en tia maniero, ke ĉiufoje kiam vi vizitas nova paĝo, la retejo memoras kiu vi estas? Kio estas la subkuŝanta realigo detalo? Krii ĝin. Ĝi estas unu vorto. Kuketoj. Ĉio bone. Do kuketojn. Nu, Kiele kuketoj uzataj? Ni memoras, ke kuketo estas ĝenerale nur peco de informo. Kaj ĝi estas ofte granda hazarda nombro, sed ne ĉiam. Kaj kuketo estas plantita sur via malmola disko aŭ en via komputilo RAM tiel ke ĉiufoje kiam vi reviziti tiun saman TTT-ejo, via retumilo memoras la servilo, mi estas uzanto 1234567. Mi estas uzanto 1234567. Kaj tiel longe kiel la servilo memoris tiu uzanto 1234567 estas JHarvard, la retejo estos nur supozi ke vi estas, kiu vi diras, ke vi estas. Kaj memoru ke ni prezentu tiujn kuketojn ia en la formo de virtuala mano piedestalon. Oni sendis en la HTTP-titolaj nur por memorigi al la servilo, kiu vi estas, kiuj ĝin pensas vi estas. Kompreneble, ekzistas minaco. Kio minaco tio ĉi malfermu nin al se ni esence uzante speco de klubo aŭ amuzparko meĥanismo por memori kiuj ni estas? Se vi kopias ies kuketon kaj forrabi ilia kunsido, por tiel diri, vi povas ŝajnigi esti alia persono kaj la afiŝinto plej verŝajna estas ĝuste tuj kredas vin. Do ni revenos al tio. Ĉar la alia temo por hodiaŭ preter partoprenigo ankaŭ parolas pri la tre timigas mondo ni vivas kaj kiom multe de kion vi faros en la retejo, kiom de kion vi faras eĉ sur via poŝtelefonoj hodiaŭ povas esti spuris vere per iu inter vi kaj punkto B. Kaj Ajax, memoro. Ni rigardis nur mallonge pri tio, kvankam vi estis uzante ĝin nerekte en pset8 ĉar vi uzas Google Maps kaj ĉar vi estas uzante Google Earth. Google Maps kaj Google Earth ne elŝuti la tutan mondon al via labortablo, evidente, la momento vi montru pset8. Ĝi nur Downloads kvadrato de la mondo aŭ pli grandan kvadrato de la tero. Kaj poste ĉiufoje vi speco de stir el gamo vi eble rimarkos - precipe se la malrapidan konekton - vi povus vidi iom griza dum momento aŭ iom de fuzzy pentrajxoj kiel la komputilo malŝarĝoj pli tiaj tegoloj, pli tiaj bildoj de la mondo aŭ la tero. Kaj Ajax estas ĝenerale la teknikon per kiu retejoj faras tion. Kiam vi bezonas pli de la mapo, via retumilo tuj uzi AJAX, kiu estas mem ne estas lingvo aŭ teknologio, estas nur tekniko. Ĝi estas la uzo de JavaScript por tuj akiri pliaj informoj el servilo permesas via retumilo iri akiri kio okazos al oriente aŭ kio estas okcidente de kio estas alie aktuale esti montrita en tiu mapo. Do tiu estas temo, ke multaj el vi trovos ĉu rekte aŭ nerekte tra fino projektoj se vi elektas fari ion ke estas simile dinamika tio estas tiranta datumoj de iu tria retejo. Do ni havas vere ekscita sekva merkredo antaŭe. Kvizo, la informon por ke estas ĉe CS50.net jam. Sciu, ke tie estos revizion kunsido ĉi tiu venonta lundo je 5:30. La dato kaj tempo jam afiŝis sur CS50.net en tiu Pri folio. Kaj ĉu ni konas vin havas iujn demandojn. Pset8 dume estas jam en viajn manojn. Kaj lasu min nur trakti unu Oftaj demandoj savi homojn iuj streso. Plejparte okazas multe da babilado ni vidas en oficejo horojn kaj multe da la erarojn vidas raportis diskuti estas ja cimoj en studenta kodo. Sed kiam vi renkontis ion kiel la Google Earth plug-in frakasi aŭ eĉ ne laboris kaj vi estas certa tio ne estas vi, ĝi ne estas [? chamad?] afero, ne estas cimo vi enkondukis en la dissendo kodo. Realigi nur FYI - tio estas ia plano Z - ke la lasta tempo ni uzis tiun problemon aro kaj ni kuris en simila demandojn, ne estas linio de kodo en service.js kiu esence estas ĉi tiu, kiu diras, turnu konstruaĵoj. Kaj ili laboras ĉirkaŭ la lasta fojo ni faris tion en, denove, angulo kazoj kie studentoj simple ne povis akiri la Darn aferon por labori estas ŝanĝi vera al malvera en tiu linio de kodo. Kaj vi trovos, se vi serĉi tra service.js. Mi ne rekomendas tiun ĉar vi volas krei la plej malfekunda pejzaĝo de Cambridge, Massachusetts. Tio laŭvorte platigi via mondo tiel ke cxiuj vi vidas estas la instruado uloj kaj kompreneble helpantoj en la horizonto kaj ne konstruaĵoj. Sed rimarkas ial ajn la Google Earth plug-in ŝajnas ankoraŭ esti kalesxon jaron poste, tiel ĉi povus esti via malsukcesas savi. Do anstataŭ feriejo al larmoj, resort por plenumi konstruaĵoj ekstere se vi scias ĝi estas la plug-in, kiu ne estas kunlaboranta sur via Mac aŭ PC. Sed, tiu estas denove elektebla se vi estas certa ke ne estas cimo. Do la Hackathon. Paro de teasers nur havi vin ekscitita. Ni havis sufiĉe da RSVPs. Kaj ĝuste por pentri bildon de kio atendas, mi pensis, ke mi volas doni al vi kelkajn sekundoj memoras de ĉi bildoj de la pasinta jaro. [MUZIKO] DAVID J. Malan: Atendu, oh. Ni eĉ havas niajn laŭvorta CS50 pramoj. [MUZIKO] DAVID J. Malan: Do jen kio atendas vi en terminoj de la Hackathon. Kaj ĉi tio estos ŝanco, por esti klara, ne por komenci vian fino projektoj sed por daŭre labori en via lasta projektoj apud samklasanoj kaj bastonon, kaj multe de nutraĵo. Kaj denove, se vi estas maldorma je 5:00 AM ni prenos vin laŭ la vojo al IHOP. La CS50 foiron, dume, estas la klimakso por la tuta klaso kie vi alportos vian tekkomputiloj kaj amikoj, eble eĉ familio al ĉambro en la campus laŭ la strato al eksponi viajn projektoj sur tekkomputiloj, sur altaj tabloj kiel tiu kun multe da nutraĵo kaj amikoj kaj muziko en la fono, tiel kiel niaj amikoj el industrio. Kompanioj kiel Facebook kaj Microsoft kaj Google kaj Amazon kaj aroj da aliaj tiel ke se interesas nur aŭdi pri la reala mondo aŭ babili kun amikoj pri reala mondo internulejo aŭ plentempe ŝancoj, scias, ke kelkaj el niaj geamikoj de industrio estos tie. Kaj kelkaj pentraĵoj ni povas pentri tie estas kiel sekvas. [MUZIKO] DAVID J. Malan: Bone. Tial do estas la CS50 foiro. Do ni nun procedi por rakonti rakonto kiu vere estos kapabligi vi espereble por aĵoj kiel fina projektoj. Do unu el la malmultaj etulojn semi via menso, ĉu por fina projektoj aŭ simple pli ĝenerale por projektoj vi eble decidos pritrakti post la kurson, ĉi tiuj ĉiuj estas dokumentitaj sur manual.cs50.net kie la CS50 manlibro kie ni havas multajn teknikoj dokumentita. Kaj tio estas nur stenografio skribmaniero por dirante, ke ekzistas en la mondo aĵoj nomata SMS al retposxtu enirejoj, kiu estas ornama metodo de dirante, ke estas serviloj en la mondo kiuj scias kiel konverti retmesaĝojn al teksto mesaĝoj. Do, se por via fina projekto vi volas krei ian mobile themed servo kiu permesas vin alarmi amikoj aŭ uzantoj okazaĵoj en la campus aŭ kio servas en la D Salono tiunokte nek ion tian garde karakterizaĵo, scias, ke ĝi estas simpla kiel sendante retpoŝto kiel kun PHPMailer kiu vi povus esti uzata por pset7 aŭ ni vidis mallonge unu semajno aŭ tiel antaŭe, por retadreson. Kaj fakte oni povas teksto ĉi supozante Via amiko havas senliman texting plano kaj vi ne volas ŝarĝi ilin $ 0.10. Sed se vi sendas retmesaĝon al via amiko kiu vi scias havi Verizon aŭ AT & T uzante Gmail kaj simple sendante ĝin al lia numero de telefono ĉe kio la sub domajno estas, realigi vin sendos mesaĝon de teksto. Sed tio estas unu el tiuj aĵoj atenti de. Se vi troll tra pasintjara CS50 videoj mi kredas ke estis, teruraj, teruraj, teruraj cimon mi skribis en kodo finis sendante ĉirkaŭ 20.000 teksto mesaĝojn vivi al nia lernantoj en klaso. Kaj nur ĉar iu rimarkis ke ili ricevas multnombraj teksto mesaĝojn de mi faris mi havas la Per kio bati Kontrolo C rapide kaj haltigi tiun procezon. Kontrolo C, vi memoras, estas via amiko en kazoj de malfinia ciklo. Do atentu la potenco ni ĵus donita vin prefere senresponse, plej Probable, bazita sur mia propra sperto. Sed tio estas en la reto kaj havas estis tie por iom da tempo. Ĉio bone. Do textmarks.com. Do tiu estas paĝaro. Kaj estas aroj da aliaj tie tiel, ke ni reale uzata kiel klaso dum jaroj por povi por ricevi mesaĝojn de teksto. Bedaŭrinde, sendante mesaĝojn de teksto estas facila kiel sendi retpoŝtojn tiel. Ricevante estas iom pli malfacila, precipe se vi volas havi unu el tiuj sexy mallongaj kodoj kiuj estas nur kvin aŭ ses ciferoj longa. Do ekzemple, dum jaroj vi estis povos sendi mesaĝon de teksto - kaj vi povas provi ĉi tiel - al 41411. Kaj tio estas la telefona numero por tiu aparta ekkuro. Kaj se vi sendas mesaĝon al 41411 - Mi nur skribi ĝin ĉi tie, do 41411 - kaj poste sendi ilin mesaĝon ŝatas SBOY por pramo Knabo. Kaj poste entajpi ion kiel Mather quad. Do vi sendu tiu teksto mesaĝon al tiu numero de telefono. Ene de kelkaj sekundoj vi devus reiri respondon de la CS50 Pramo Knabo servo, kiu estas la pramo temptabelanta programaro kiu ni devis eliri tie en la reto por iom da tempo. Kaj respondos por vi per SMS-mesaĝo. Ĉar kion ni faris kiel klaso, kiel programisto, estas verki programaron, agordi nian liberan konton kun teksto markojn por aŭskulti por teksto mesaĝoj senditaj al SBOY en tiu nombro. Kaj kion ili faras estas antaŭen tiuj teksto mesaĝojn al nia PHP-bazita retejo kiel HTTP parametroj jene tie. Ĉi tiu uzanto kun tiu telefono sendis vin ĉi SMS-mesaĝo. Ĉu per ĝi tion, kion vi volas. Do ni skribis iu programaro ke sur ricevi ĉenon kiel SBOY Mather quad, ni analizi ĝin. Ni diveni kie la spacoj estas inter la vortoj. Kaj ni kiel klaso decidi kiel respondi al tio. Kaj se vi provas ke nun, ekzemple, Vi devus vidi, tra respondon ene de kelkaj sekundoj, la venontaj pramoj irante el Mather al la kvar se neniu. Kaj estas aliaj haltoj. Vi povas entajpi Boylston aŭ aliaj tiaj ĉesu en la campus, kaj ĝi devus rekoni tiujn vortojn. Do parse.com. Tio estas alia servo kiun ni vizitis montrante iuj studentoj por fina projektoj kiuj estas mirinda en tiu estas libera por racia kvanto de uzado. Kaj se mi iros al parse.com vi vidos ke tio estas alternativo al efektive havi iun kiel viajn proprajn MySQL datenbazo. Kaj sincere, nur speco de mesmerizing. Jen kio estas ene de la nebuligi eĉ en nuba tago. Do parse.com permesas vin fari faskon da interesaj aferoj. Kaj estas aliaj alternativoj al ĉi tie. Ekzemple, vi povas uzi ilin kiel via dorso fino datumbazo. Do vi ne bezonas havi retejo gastigi kompanio. Vi ne bezonas havi MySQL datenbazo. Vi povas anstataŭe uzi sian dorson fino. Se vi faras telefono projekto por Android aŭ IOS aŭ similaj, scii ke tie ekzistas aĵoj kiel puŝo servoj tiel vi povas puŝi alarmas al viaj amikoj aŭ vian uzantoj hejmo ekranoj. Kaj tiam faskon da aliaj karakterizaĵoj kiel bone. Do se vi havas intereson, kontrolu tiujn retejoj kaj retejoj kiel ili al nur vidi kiom da aliaj popoloj ŝultroj vi povas stari sur fari vere malvarmeta programaro de via propra. Nun en terminoj de aŭtentokontrolo, kun FAQ, Estas kiel vi efektive garantii ke via uzantoj estas homoj en la campus, Harvard lernantoj aŭ fakultaton aŭ bastono? Do CS50 havas sian propran aŭtentokontrolo servo nomita CS50 ID. Iru al tiu URL kaj vi povas limigi viajn retejo por ĉiu kun Harvard IRU, ekzemple. Do scias, ke ni povas trakti ĝin. Vi infanoj ne devus esti en la negoco diri, kio estas via Harvard ID? Kio estas via Harvard PIN? Permesu al mi fari ion per ĝi. Ni faros la tuta de tiu. Kaj kion ni donos al vi dorso estas ies nomon kaj retadreson, sed nenio sentema. App sur movebla aparato, ĝi povas esti faris por labori sur movebla aparato, sed ĝi estas ne tute desegnitaj por tio. Do vi devos fini pasi ne banalaj kvanto de tempo fari tion. Do mi estus malkuraĝigi tiun itineron por nun. Tiu estas vere destinita por retejo bazita aplikoj. Do retejo retprovizanton. Do se vi ne vidis sur la kurson de hejmpaĝo - kaj tie estas kie ni komencos rakonto - retejo retprovizanton estas ĉion pri pagi por kutime servon, gastigi servilo proprieto de iu alia en la reto kiu havas IP-adreso, kaj vi surmetu viajn afiŝinto sur ĝi. Kaj oni kutime donas al vi retpoŝton kontoj kaj datumbazoj kaj aliaj tiaj karakterizaĵoj. Sciu, ke se vi ne volas reale pagi por tia, iru al tiu URL tie kaj CS50 fakte havas senprofita Pro kiu vi povas uzi por fakte ne havas http://project ene de la aparato por via fina projekto. Se vi vere volas esti iu kiel, isawyouharvard.com, vi povas aĉeti tiun domajna nomo - kvankam ne tiu konkreta unu - kaj tiam vi povas iri pri gastigi ĝin sur publika retservilo kiel ni povas proponi you guys tra tie. Kaj fakte, se nekonataj, se vi neniam estis en isawyouharvard.com, oni, iru tien. Sed du, scias, ke tiu estis juna virina nomo por Tej Por Toor Tro du jaroj, tri jaroj, kiuj estis CS50 lernantoj, kiuj okazis dum unu aux du antaŭ la CS50 justa sendis retmesaĝon al sia domo dissendolisto kaj voilà. Du tagojn poste por la CS50 bela, ŝi havis centojn da uzantoj ĉiuj rampaĵoj sur reciproke sur sia retejo kaj dirante kiom ili vidis ŝi aŭ li en universitatoj. Do jen unu el CS50 favorito sukceso rakontoj de oni CS50 fina projekto. Do kiel vi irad metanta afiŝinto ŝatas ke sur la interreto? Nu, tie estas kelkaj tiaj ingrediencoj tie. Do, vi devas aĉeti domajna nomo. Ekzistas aroj da lokoj en la mondo de kiu vi povas aĉeti domajna nomo. Kaj ekzemple, kiu rekomendas nur ĉar ĝi estas populara kaj estas malmultekosta nomas namecheap.com. Sed vi povas iri godaddy.com kaj dekoj da aliaj tie. Vi povas legi sur recenzoj. Sed plejparte ĝi ne gravas de kiu vi aĉeti domajna nomo. Kaj ili varias en prezo kaj Ili varias en sufikso. La sufiksoj kiel. Com,. Net, . Org,. Io,. Tv, tiuj fakte varias en prezo. Sed se ni volis fari ion kiel cats.com ni povas iri al ĉi tiu TTT klaki Search. Supozeble ĉi tiu estas prenita. Sed ŝajne, catsagainst.com estas havebla. pluscats.com estas havebla. Lovecats, catscorner, dampcats.net. Ĉio ĉi espereble pseŭdo hazarde generita. Se vi volas cats.pw, $ 1,500 nur, kio estas iom freneza. Do iu vere elprenis ĉiujn la kato rilatajn domajnnomoj ĉi tie varianta prezoj. Kiel flanken, vidu. Kiu havas cats.com? Sciu, ke vi infanoj havas en via dispono sufiĉe kompleksa komandoj nun. Kiel mi povas tajpi laŭvorte kiu estas cats.com? Kaj pro la maniero la interreto estas strukturita vi povas fakte vidi kiu registris tion. Ŝajne tiu persono estas [inaudibles] uzante proxy servon. Do se iu posedas cats.com ne volas la mondo por scii kiu ili estas. Do ili jam registrita se per iu hazarda privatecon servon. Sed kelkfoje vi efektive akiri realan posedantoj. Kaj jen estas, precipe se vi estas persekutantaj iuj lanĉo kaj vi vere volas iun domajna nomo kaj vi estas pretas pagi iun alian por ĝin, vi povas diveni kontakto informo en tiu vojo. Sed ankaŭ interesa estas tio. Lasu min rulumi supren al ĉi parton. Do tiu estas tiu sama eligo. Kaj tio estas nur tacky. Do ŝajne cats.com povas esti via por la rajto prezo. Sed kio estas interesa ĉi tie estas ke la nomo serviloj - ĉi estas tuta misuzo de kia nomo servilo supozas estas - via nomo servilo ne estas supozataj esti thisdomainforsale.com. Se ni efektive elektas ion kiel - ni elektas iu iom pli legitima kiel, kiu estas google.com, kaj rulumu supren tie. Do jen - kio okazis tie? Interesa. Trans kiu estas - ni tenu gxin pli malalta klavo. Kiu estas mit.edu? Akcepti. Tio estas utila. Do ĉi tiu estas kion mi atendis por. Legitima uzo de la DNS servon. Nomo servantoj tie indiki la jena. Ĉi tiu estas MIT maniero diri, kiam ajn iu en la mondo, kie ajn ili estas, tipoj en mit.edu kaj hits Enter, via tekkomputilo, ĉu Mac aŭ PC, volo iel eventuale eltrovi, ke la homoj en la mondo, kiu scias, kion la IP-adreso estas por mit.edu aŭ iu el la sub regadoj en mit.edu aŭ iu el ĉi tiuj servantoj tie - kaj ĝi efektive aspektas kiel MITS infrastrukturo estas sufiĉe fortika kiel vi devus atendi. Ili havas plurajn nomojn serviloj kio estas bona por la redundo. Kaj fakte, ili ŝajnas esti tutmonde distribuis tra la mondo. Al faskon el tiuj ŝajnas esti en Usono, paro en Azio, unu en Eŭropo, du en iu alia loko. Sed la punkto estas, ke DNS ke ni estis prenante por koncedis kaj ĝenerale priskribita kiel granda Excel tablo kiu havas IP adresoj kaj domajno nomoj estas fakte sufiĉe kompleksa hierarkia servo tiel ke en la mondo ekzistas reale finia nombro de serviloj kiuj esence scias kie ĉiuj. COMS estas aŭ ĉiuj la. retojn estas, ĉiuj de la . Orgs estas, kaj tiel plu. Do kiam vi iras antaŭen kaj aĉeti domajno nomo de loko kiel Nomo Cheap aŭ Iru Paĉjo aŭ iu ajn alia TTT-ejo, unu el la ŝlosilo paŝoj kiuj vi devos fari vi, se vi faros tion eĉ por via fina projekto, estas diri la matrikulisto el kiu vi aĉetas la domajno nomo, kiu en la mondo konas vian TTT-ejo IP-adresojn, kiuj Via nomo serviloj estas. Do se vi uzas, ekzemple CS50 la gastigi konton - ni hazarde havas tiu konto tra dreamhost.com kiu estas populara retejo retprovizanton entrepreno - ili diros al vi, ke vi devus aĉeti via havaĵo kaj diri al la mondo kiu Via domajno nomo servilo estas ns1.dreamhost.com, ns2.dreamhost.com, kaj ns3.dreamhost.com. Sed tio estas ĝi. Aĉeti domajno nomo signifas doni ilin la monon kaj ekhavi la proprieto de la domajno, sed estas pli kiel luo kvankam. Vi ricevas ĝin dum jaro kaj poste ili beko vi recurringly por la resto de via vivo ĝis nuligi la domajna nomo. Kaj tiam vi diros al ili, kiu la nomo serviloj estas. Sed tiam vi faras kun via registro. Kaj de tie vi interagas nur kun via retejo gastigi kompanio, kiu en CS50 La kazo estos DreamHost. Sed denove, pli dokumentado estos havigis al vi se vi decidas iri tiu itinero. Do, se vi faros tion post la kurso de Fine, simple googling retejo gastigi kompanio remetos ĝis miloj de ebloj. Kaj mi estus ĝenerale kuraĝigas vin demandas amikojn kiuj eble uzas kompanio antaŭ se ili rekomendas ili kaj havis bonan sperton. Ĉar ekzistas multe da muŝo nokte retejo retprovizanton entreprenoj, kiel knabo en lia kelo kun servilo kiu havas IP-adreso. Li havas iujn ekstrajn RAM kaj malmola disko spaco kaj nur vendas retejo retprovizanton kontoj kvankam ne estas tiel ke servilo teni centojn da uzantoj aŭ miloj da uzantoj. Do realigi vi akiros kion vi pagas por. Por sufiĉe tempo por mia persona hejmo paĝo - kaj tio estis tute akceptebla ĉar mi estis, same kiel, du vizitantoj monate - Mi pagis, kiel, $ 2,95 monate. Kaj mi sufiĉe certas ke estis en ies kelo. Sed denove, vi ne komprenas nepre neniu garantioj de uptime aŭ amplekso. Do denove, vi tipe rigardis en iu pli ol tio. Nu, kio pri SSL? Do kio SSL uzas por? Ni nun komenci stiri en la direktoj de sekureco kaj aferojn, kiuj povas malutili al ni. Precipe cxar vi venture sur via propra. Kio estas SSL, aŭ kio SSL uzas por? Sekureco, OK. Do ĝi estas uzata por sekureco. Kion tio signifas? Do ĝi signifas Secure Sockets Layer. Kaj ĝi estas montrata per la URL kiu komencas kun https://. Multaj el ni probable neniam tajpis https://, sed vi ofte trovas ke via retumilo estas nomumata de HTTP por HTTPS tiel ke ĉiu estas tie post ĉifrita. FYI, uzante SSL postulas tipe ke vi havas unikan IP-adreson. Kaj tipe por akiri unikan IP-adreso vi devas pagi retejo hosting kompanio kelkaj dolaroj pli monate. Do realigi ĉi tio estas tre facile implementado tiuj tagoj por aĉeti IP adreso kaj por aĉetado kio estas nomiĝas SSL atestilon. Sed rimarkas ke ne venu en iu aldona kosto. Kaj, kiel ni penos fortimigi en nur iom, ĝi estas eĉ ne nepre 100% protekta de ĉiu kiu estas vi provas protekti. Do por sekureco, mi pensis, ke mi volonte do speco de hazarda segue tie. Kiel vi eble scias el CS50 la prelego videoj, nia teamo de produktado estis fanon kiel mi havas de prenante vere bela foto de universitata tereno, kaj aeraj foto plej laste. Se vi iam rigardas supren kaj vi vidos io flugante kun iom ĉambro, ĝi povas efektive esti CS50. Kaj mi nur pensis mi ŝatus dividi minuto de iuj el la bildoj la teamo havas kolektataj, aparte kiel ni rigardas al la printempo semestro kaj apud falo. Se iu el vi havas talenta foto, videography, ni volus amas havi vin implikis malantaŭ la scenoj. Sed pli sur tiujn detalojn en unu semajno. [MUZIKO] DAVID J. Malan: rezultas tie estas miniaturo golfo sur la supro de la stadiono, ke ni neniam sciis, pri. [MUZIKO] DAVID J. Malan: Vi povas vidi la profili de la drone tie. [MUZIKO] DAVID J. Malan: La plej bona parto tien estas, rigardu la jogger maldekstre. [MUZIKO] DAVID J. Malan: Alia ekzemplo de kio vi povas fari kun teknologio kiu estas nur tangencialmente, sincere, rilata al sekureco. Sed mi pensis, ke estus pli amuza maniero de nur diras, sekureco. Do ni vidu se ni ne povas timigi vin infanoj Nun kun ne nur iom de kelkaj minacoj, sed ankaŭ suba kompreno de kio tiuj minacoj estas tiel ke movi antaŭen vi povas decidi kiel kaj ĉu defendi mem kontraŭ tiuj aferoj kaj ĉe Almenaŭ al rememoros ilin kiel vi preni decidojn pri tio, ĉu aŭ ne sendi ke retpoŝto, ĉu por ensaluti en tiu TTT-ejo, ĉu aŭ ne uzi tiun ciber kafejoj Wi-Fi aliro punkto por ke vi sciu kion la minacoj estas ja ĉirkaŭ vi. Kaj Jonatan raportis al io ŝatas tiun lundon. Li havis fenestro ekrankopio. Ĉi tiu estas de Mac. Kiel multaj el vi iam instalita programaro sur via Mac aŭ PC? Evidente ĉiuj. Kiel multaj el vi donis multe pensis por tajpi en via pasvorton kiam instigis? Mi volas diri, eĉ ne mi, sincere. Do kelkaj el ni estas bonaj ĉe esti paranoja. Sed rigardu, kion vi estas fakte faras cxi tie. La tipa Mac aŭ PC vi havas administranto konton. Kaj tipe vi estas la sola uzante portebla komputilo almenaŭ ĉi tiuj tagoj. Do via konto, Malan aŭ JHarvard aŭ kio ajn ĝi estas, estas la administranto konton. Kaj kion tio signifas estas vi elradikigu aliron al via komputilo. Vi povas instali ajn vi volas, forviŝi ajn vi volas. Kaj tipe tiuj tagoj, pro datitaj dezajno decidojn de jaroj, la vojo plej programaro gets instalita Estas kiel administranto. Kaj eĉ se nia Mac aŭ PC havas almenaŭ alveninta sufiĉe lertaj pri la jaroj kun la lastaj personigoj de Mac OS, kaj Vindozo por ne kuri via salutnomo defaŭlte kiel la administranto, kiam vi elŝutas iun nova programo ekstere de la interreto kaj provi instali ĝin, vi probable tuj esti instigis por via pasvorto. Sed la kaptaĵo estas je tiu punkto, vi estas laŭvorte transdoni la ŝlosilojn de via komputilo super al kiom hazarda programo vi ĵus elŝutis kaj permesante ĝin por instali kion ajn ĝi volas. Kaj Jonatan aludis, realigi por ke gxi diras, ke ĝi volas instali vian programaron kiu vi zorgas pri, Spotify aŭ iTunes aŭ kio ajn estas vi provas instali. Sed vi laŭvorte konfidi la aŭtoro aŭ aŭtoroj de la programaro por nur faros la programo supozas fari. Sed estas absolute nenio haltante plej programoj en plej mastrumaj sistemoj de viŝante dosieroj, el alŝuti ilin al iu entrepreno TTT-ejo, el trolling ĉirkaŭe, por kodi aĵoj. Kaj denove, ni ia konstruita tuta infrastrukturo super la jaroj sur fido. Kaj tiel rimarkas ke vi ĵus estis konfidi hazardaj homoj kaj hazarda entreprenoj plejparte. Kaj Jonatan aludis tro, kelkfoje tiuj kompanioj mem estas ia konscie malica, ĉiuj rajtas? Sony kaptis multan Flack kelkaj jaroj antaŭe por instali kio nomiĝas rootkit kit sur popola komputiloj sen lia scio. Kaj la gist de tio estis, ke kiam vi aĉetis KD ekzemple, ke ili ne volas ke vi povos kopii aŭ ŝiri la muziko ekstere de, la KD estus instali, sen via sciante, oni rootkit sur via komputilo. Rootkit simple signifas programaro kiu kuras kiel administranto kiuj potenciale faras malbonajn aferojn. Sed inter la aĵoj tiu afero ne estis kaŝis sin. Do iuj el vi povus esti bela savvy kun via komputilo kaj scias, bone, mi povas simple malfermi la Task Manager aŭ la Aktiveco Monitoro kaj mi povas rigardi ĉiujn de la arcanely nomata programoj kiuj kuras. Kaj se io aspektas suspektinda Mi nur mortigi lin aŭ forviŝi ĝin. Sed tio estas kion la rootkit faris. Ĝi esence diris, se kuranta tasko Direktisto, ne montru vin. Do la programaro estis tie. Kaj nur se vi vere, vere rigardis malmola vi povis eĉ trovi ĝin. Kaj tio estis farita en la nomo de kopio protekto. Sed ĝuste imagi kio povis esti farita alimaniere. Nun en terminoj de protekti vin. Multaj retejoj estas mirinde kompatema en kiu metis tiujn pendseruro ikonojn sur sian hejmpaĝon kiu signifas ke la retejo estas sekura. Ĉi tio estas el bankofamerica.com ĉi-matene. Do kio faras ke iom pendseruro ikono tie signifas apud la Ensaluti butonon? Absolute nenion. Ĝi signifas iu scias kiel uzi Photoshop por fari foton de pendseruro ikono. Kiel sufiĉe laŭvorte, la fakto ke ĝi estas tie estas intencita al esti pozitiva signali al la uzanto kiel, ooh, sekura retejo. Mi devus fidi tiu retejo kaj nun enmeti salutnomon kaj pasvorton. Kaj tio estis kutima por jaroj, kiel ĵus kiel ĉimatene. Sed konsideru la kutimojn, ke tiu fariĝas ĉiam nin. Konsideri la implicita mesaĝon, ke ĉiuj el tiuj bankoj en ĉi tiu kazo estis sendi al ni dum jaroj. Se vi vidas pendseruro, tiam certigi. Ĉio bone? Do kiel vi povas trouzi tiu sistemo de konfido, se vi estas la malbona ulo? Metu pendseruro en via TTT-ejo, kaj logike, la uzantoj estis kondiĉita dum jaroj por supozi pendseruro signifas sekura. Kaj povus vere esti sekura. Vi eble havas mirinde sekura SSL HTTPS rilato al falsa retejo. com. Kaj neniu alia en la mondo povas vidi ke vi volis transdoni lin aŭ ŝin via salutnomo kaj pasvorto por via profito. Ĉi kvankam, eble, estas iom pli trankviliga. Do tiu estas ekrankopio el la supro de mia retumilo ĉimatene ĉe bankofamerica.com. Kaj rimarki ankaŭ ĉi tie ni havi pendseruro ikono. Kion ĝi signifas en tiu kunteksto en Chrome almenaŭ? Do tiu estas nun uzante SSL. Do tiu estas fakte pli bona afero. Kaj la fakto ke Chrome faras ĝin verda celas nomas nian atenton al la fakto ke ĉi tiu estas ne nur sur SSL. Tio ĉi estas entrepreno kiu iu el tie kontrolis estas fakte bankofamerica.com. Kaj tio signifas ke Banko de Ameriko, aĉetinte iliaj tn SSL registrita, esence granda hazardo, iom hazardaj nombroj kiuj implemento sekureco por ili, ili estis kontroli por iuj sendependaj tria partio kiu diras, yep. Tiu estas fakte la ĝenerala direktoro de Banko de Ameriko provas akiri la atestilo. Chrome do esperas, ke atesto aŭtoritato kaj diru en verda, ĉi tiu estas bankofamerica.com. Kaj Banko de Ameriko nur pagas kelkajn cent dolaroj por tiu aŭ malmultaj mil kontraste al kelkaj dekoj da dolaroj. Sed tie ankaŭ, kiel multaj el vi havas iam kondutis ajna malsame ĉar la URL-on en via retumilo estas verda loko de nigra? Ĝuste? Do kelkaj el ni. Kaj tio estas bone esti paranoja. Sed eĉ tiam, tiuj el vi, kiuj eĉ rimarki tion, ĉu vi vere halti restadas enen alie sekura afiŝinto se la URL ne estas verda? Bone, do probable ne, ĉu ne? Almenaŭ la plimulto de ni, se ĝi ne estas verdo, tre probable vi simple iras esti kiel, kia ajn. Kiel, mi volas ensaluti en ĉi tiu retejo. Tial mi estas tie. Mi tuj ensaluti tamen. Kiel flanken, Chrome estas iom bona pri tiu. Sed estas multe da foliumiloj kiel Firefox ekzemple, almenaŭ por iu tempo, kie tiu pendseruro ikono estas, vi povas efektive metis neniun ikono de via propra. Lasu min vidi kion la lasta versio de Firefox aspektas. Do, se ni iros al CS50.net. Bone, do ili jam pliboniĝis ankaŭ. Kion la retumiloj kutimis fari estas kiel, jen ekzemple [? Saas estas?] kresto ĝis ĉi tie. Tio estas la tn preferita ikono di retejo. Antaŭ jaroj - fakte ne ke antaŭlonge - ke iom ŝildo estus estinta dekstra tie apud la URL. Ĉar iuj genio decidis ke estus simple aspekti bela classy havi via grafika logo dekstra apud via URL. Kaj dezajno sagxuloj, ke reale estas sufiĉe konvinkaj. Do kion malbona komenco faras? Ili komencis ŝanĝi lian plej ŝatata ikonojn, aŭ ilia defaŭlta ikono por hejmpaĝo esti ne kresto sed pendseruro, kiu havis absolute nenian signifon. Krom liaj preferataj ikono Estis pendseruro ne havis indikoj de sekureco. Do la lecionoj tie estas paro mi pensas. Unu estas, ke fakte estas iuj bonintenca mekanismojn por instruante nin uzantojn pri sekureco eĉ se vi ne estis eĉ konsciis kion verda signifis aŭ kio eĉ HTTPS signifis. Sed se tiuj mekanismoj atingi nin en la malbona kutimo de konfidita retejoj kiam ni vidas tiujn pozitivajn signaloj, ili estas tre facile trouzis kiel ni vidis nur antaŭ momento kun iu stulta kiel ĉi tio. Do kunsido kidnapo eniras en ludi, kiel ni diris antaŭe, kun kuketoj ekzemple. Kaj kion signifas ĉi fakte signifas? Nu kun kunsido kidnapo ĉi estas ĉio pri ŝtelado ies kuketojn. Do, se mi malfermos Chrome tie, por Ekzemple, mi malfermas la inspektoro ĉi tie kaj mi iros al la Reto Tab - kaj ni faris tiun antaŭe - kaj mi iras al iu kiel http://facebook.com eniri, tuta faskon da aferoj iras trans la ekrano ĉar de ĉiuj bildoj kaj CSS kaj Javascript dosierojn. Sed se mi rigardas tiun ĉi tie rimarki ke Facebook estas ja plantante unu aŭ pli kuketojn sur mia retumilo ĝuste ĉi tie. Tiuj estas esence la mano poŝtmarkojn kiuj reprezentas min. Kaj nun espereble mia retumilo volo prezenti ĉi denove kaj denove kiam revisitando tiu retejo. Sed tio nur estas sekura, ni diris al paro semajnojn, se vi uzas SSL. Sed eĉ SSL mem povas esti kompromitita. Konsideru post tuta vojo SSL verkoj. Kiam via retumilo konektas al fora servilo tra https://, longan rakonton, ĉifriko estas implikitaj. Ĝi ne estas tiel simpla kiel Cezaro aŭ Visionaire aŭ eĉ donas, donas el dum rondveturo en pset2. Ĝi estas pli kompleksa ol tio. Ĝi nomiĝas publika ŝlosila ĉifriko. Sed vere granda kaj vere hazarda nombroj estas uzata por scramble informon inter punkto A, vi, kaj punkto B, kiel facebook.com. Sed la problemo estas, kiel multaj el ni denove iam tipo en https:// komenci nia retejo ligo en tiu sekura modo? Mi volas diri, kiom multaj el vi eĉ tipo http://facebook.com? Bone, se vi faras, kiel, saluton. Vi ne bezonas fari tion plu, ĉu ne? La foliumilo diveni ĝin. Sed la plimulto el ni faras ja nur tajpi facebook.com. Ĉar se ni uzas retumilo, La foliumiloj akiris sufiĉe lertaj por 2013 supozi se vi uzas retumilo, vi tajpas en parolado, vi probable volas konsenti li ne per retpoŝto aŭ momenteto mesaĝo. Vi volas diri HTTP kaj Port 80. Tiuj konvencioj estis adoptita. Sed kiel faras redirección laboro? Nu, rimarkas kio okazas tie. Se mi reirus al Chrome - kaj ni faru tion en incognito mode por ke ĉiuj miaj kuketoj estas forĵetita. Kaj lasu min iri tien por, denove, facebook.com. Kaj ni vidos kio okazas. Memoru ke la unua peto estis ja nur por facebook.com. Sed kio estis la respondo kiun mi ricevis? Ne estis 200 OK. Estis 300, aŭ 301, kiu estas redirect telling me iri al http://www.facebook.com, kiu estas kie Facebook volas min iri. Sed tiam, se ni rigardas la sekva peto, kaj ni vidis ĉi tion antaŭe, rimarki kion lia dua respondo estas. Specife, ke ili deziras, ke mi nun al iri al la SSL-versio de Facebook. Do jen estas ŝanco. Tio ĉi estas mirinde utila trajto de nur la retejon kaj HTTP. Se la uzanto fino kiel Facebook volas min resti sur la sekura versio de ilia TTT-ejo, granda. Ili redirect mi por mi mem. Kaj do mi ne devas eĉ pensas pri tio. Sed kion se inter punkto A kaj B, inter vi kaj Facebook, estas iuj malbona, ekzistas iu sistemo administranto en Harvard kiu estas scivola por vidi kiu viaj amikoj estas. Aŭ ekzistas iuj - jaroj, tiu uzata por soni freneze - sed estas iuj registaro ento kiel la NSA, kiu estas vere interesita en kiuj vi ŝovas en Facebook. Kie estas la ŝanco tie? Nu, tiel longe kiel iu havas sufiĉe teknika savvy kaj ili havas aliron al viaj realaj reto super Wi-Fi aŭ iu fizika drato, kion ili povus fari? Nu, se ili estas en la sama reto vi kaj ili scias ion pri TCP / IP kaj IP-adresoj kaj DNS kaj kiel ĉiuj kiuj verkoj, kio se tiu viro en la mezo, kio se tiu Nacia Sekureco Agentejo, kion povas esti, sed kio se tiu estaĵo simple respondas pli rapide ol Facebook por via HTTP peto kaj diras, ho, mi estas Facebook. Antaŭen, kaj jen la HTML por facebook.com. Komputiloj estas sufiĉe rapidaj Darn. Tiel vi povus skribi programon kurante en servanto kiel nsa.gov ke kiam Aŭdas peton de vi por facebook.com, tre rapide malantaŭ la scenoj ricevas la realan facebook.com farado perfekte [? esque?] sekura SSL rilato inter NSA kaj inter Facebook, atingante ke HTML tre sendanĝere por la ensalutpaĝo, kaj poste la NSA-servilo simple respondas al vi kun ensalutpaĝo por facebook.com. Nun kiom da vi estus eĉ rimarki ke vi uzas Facebook sur HTTP Ankoraŭ en tiu punkto ĉar vi havas hazarde konektita al nsa.gov kaj ne Facebook? La URL ne ŝanĝas. Ĉio ĉi estas farinta malantaŭ la scenoj. Sed la plimulto el ni, mi mem komprenis, probable ne rimarkos tia malgranda detalo. Do vi eble havas perfekte praktika rilato inter vi kaj kion vi pensi estas Facebook, sed estas tn viro en la mezo. Kaj tio estas ĝenerala termino por homo en la mezo atenco kie vi havas iujn ento inter vi kaj punkto B tio iel manipulanta, ŝtelante, aŭ rigardante viajn datumojn. Do eĉ SSL ne estas Surefire, speciale se vi estas trompita en li ne deturnis gxin pro kiel tiuj suba mekanismojn efektive funkcias. Do lecionon hodiaŭ tiam tro estas se vi vere volas esti paranoja - kaj eĉ tie estas minacoj - vi devus vere komenci por eniri la kutimo de tajpi en https://www kion ajn domajna nomo vi vere maltrankviligas. Kaj kiel flanken tro ekzistas ankoraŭ alia minaco kun rigardas al kunsido kidnapo. Tre ofte kiam vi unue viziti retejo kiel facebook.com, krom se la servilo estis agordita por diri ke tiu mano stampon metis sur vin hieraŭ devus certigi sin, via retumilo povus tre bone, sur vizitante aĵojn kiel facebook.com google.com, twitter.com, via foliumilo povus prezenti tiu mano stampon nur esti frapis malsupren kaj diris: Ne. Uzi SSL. Sed estas tro malfrue je tiu punkto. Se vi jam sendis viajn manojn frapu, viaj kuketo, en la klara kun neniu SSL, vi havas la dua partio vundebleco kie iu snufadon via trafiko, ĉu kunloĝanto aŭ NSA, povas tiam uzi tiun saman kuketo, kaj kun iom de teknikaj savvy, prezenti ĝin kiel lia aŭ ŝia. Alia atako vi povus ne pensis. Ĉi tiu estas vere sur vi, se vi ŝraŭbi ĉi tion skribe iu retejo kiu iel uzas SQL. Do jen, ekzemple, estas ekrano pafita de Harvard ensalutu. Kaj tio estas ĝenerala Ekzemplo de io per salutnomon kaj pasvorton. Super komuna. Do ni supozu ke SSL ekzistas kaj ne estas viro en la mezo aŭ io kiel tio. Nun ni enfokusigante en la servila kodo kiun vi povus skribi. Nu, kiam mi tajpas en salutnomon kaj pasvorto, supozu ke la PIN servo estas implementado en PHP. Kaj vi havu iom da kodo sur tiu servilo kiel ĉi tio. Akiru la nomo de uzanto de la fosto super tutmonda kaj akiri la pasvorton, kaj poste se ili uzas iun pset7 kiel kodo ekzistas konsulto funkcio kiuj povus fari ĉi tion. Elektu Stelo de uzantoj kie salutnomo egalas tio kaj pasvorton egalas tio. Tio aspektas, unuavide, tute racia. Ĉi tiu estas sintakse valida PHP-kodo. Logike estas nenio wrong with this. Supozeble ekzistas iu pli linioj kiuj vere ion fari kun la rezulto kiu venas denove el la datumbazo. Sed tio estas vundebla por la jena kialo. Rimarku ke, kiel bona civitano, Mi metis en citiloj, sola citaĵoj, vikipediista nomo. Kaj mi metis en simpla citaĵoj la pasvorton. Kaj tio estas bona afero, ĉar ili estas ne supozis esti ciferoj. Tipe ili tuj estos teksto. Do mi citas ilin kiel kordoj. Kaj se mi nun pli antaŭen kion se - kaj mi forigis la kugloj de la PIN servo provizore - kio se mi provas ensaluti kiel Prezidanto [? Scroob?] sed mi asertas ke mia pasvorto estas 12345 'OR '1' = '1, kaj anonco kion mi ne faris. Mi ne fermis la alia simpla citaĵo. Ĉar mi sufiĉe akra jen kiel la malbona ulo. Kaj mi supozas ke ili estas vi Ne tre bona kun via PHP kaj MySQL kodo. Mi konjektas ke vi ne kontrolanta por la ĉeesto de citiloj. Do kio ĵus okazis estas ke kiam via uzulo tajpas en tiu ĉeno, la konsulto vi estas estonta krei aspektas kiel ĉi tio. Kaj longan rakonton, se vi kaj io kune aŭ vi aŭ iu kune tiun tuj revenos vico de la datumbazo. Ĉar estas ĉiam la kazo ke 1 estas 1. Kaj ĝuste pro tio vi ne anticipis ke viaj uzantoj, bonaj aŭ malbonaj, povus havas apostrofon en lia nomo al vi kreis SQL query tio estas ankoraŭ valida, kaj ĝi revenos nun pli rezultoj ol vi eble intencis. Kaj tial ĉi tiu malbona knabo nun havas potenciale ensalutinta por via servilo ĉar via datumbazo estas reveni vico eĉ se li aŭ ŝi ne havas ideon kion [? Scroob a?] Reala pasvorton estas. Ho, mi realigis typo tie. Mi jam diris pasvorton egalas 12345 kiel la antaŭa Ekzemple aŭ 1 estas 1. Mi ripari tiun ensalutintaj. Do, kial ni vin uzanta la konsulto funkcio kun demandosignojn? Unu el la aferoj la konsulto funkcio ne por vi estas ĝi certigas ke kiam vi transiros en argumentoj post la komoj tie kiel tiu ke la konsulto ke estas fakte sendita al la datumbazo aspektas kiel ĉi tio. Multaj pli malbelaj por rigardi, sed reen slashes estis aŭtomate inserto por eviti ĝuste tio injekto atakon kiu mi montris antaŭ momento. Nun amuza xkcd ke mi pensis ke mi volas tiri ĝis tie espereble nun devus esti iom pli komprenebla Estas ĉi tie. Iom? Eble ni bezonas iom pli diskuto pri tio. Do tiu estas aludante al iom kapridon nomata Bobby kiu iel prenita avantaĝo de retejo estas gxuste konfidante ke kion la uzanto tajpas en ne estas, fakte, SQL kodo, sed estas fakte kordo. Nun vi povas memori ke guto - eble vi vidas cxi tiun - guto rimedoj forigi tablon, forigi datumbazo. Do se vi esence asertas ke via nomo estas Roberto "; droptabl estudentsomething,] vi povus tre bone trompi la datumbazo ne nur en kontrolanta ke vi estas ja Roberto, sed punktokomo ankaŭ procedi por faligi la tablo. Kaj tiel SQL injekto atakoj povas reale esti tiel minaca kiel ĉi per kiu vi povas forigi ies datumoj, vi povas elekti pli ol Datumoj intencis, vi povas enmeti aŭ ĝisdatigi datumojn. Kaj vi povas vere vidi tio farigxis en hejmen ekzerco, ne por malica intencoj sed nur por instrua, estas ia tempo vi instigis por ensaluti en TTT-ejo, speciale ian ne tre publika, tre populara retejo provu ensalutante kiel John O'Reilly aŭ iu kun apostrofo en ilia nomo. Aŭ laŭvorte simple tajpi apostrofo, batis Eniru, kaj rigardu, kio okazas. Kaj tro ofte, tragike, personoj ne sanitized iliaj enigoj kaj certigis, ke aferoj kiel citaĵoj aŭ punktokomojn liberigxis. Kiu estas kio en pset7 ni donas vi query funkcio. Sed ne sub estimi ekzakte kion ĝi faras por vi. Do kun tiu diris: ĝui la TTT-tiu semajno. Kaj ni vidos vin lunde. Je la sekvanta CD50. [MUZIKO]