1 00:00:00,000 --> 00:00:11,214 >> [MUSIEK] 2 00:00:11,214 --> 00:00:11,661 >> David J. MALAN: Alle reg. 3 00:00:11,661 --> 00:00:15,400 So dit is CS50 en hierdie is die einde van die week 10. 4 00:00:15,400 --> 00:00:20,420 So 'n paar van julle het dalk gesien het hierdie reeds, maar wat gesirkuleer van laat 5 00:00:20,420 --> 00:00:25,800 is 'n artikel wat ek gedink ek wil lees 'n uittreksel uit en dan wys jy 'n 6 00:00:25,800 --> 00:00:27,800 drie minute video wat verf dieselfde prentjie. 7 00:00:27,800 --> 00:00:30,950 Dit was regtig 'n roerende storie, ek gedink het, van die kruising van die 8 00:00:30,950 --> 00:00:35,210 werklike wêreld met werklik dwingende gebruik van tegnologie. 9 00:00:35,210 --> 00:00:39,785 >> So het die artikel is getiteld, "'n Seun oversleeps op die trein, maak gebruik van Google Maps 10 00:00:39,785 --> 00:00:44,930 familie tot 25 jaar later vind. "En die eerste paar paragrawe was, 11 00:00:44,930 --> 00:00:48,820 "Wanneer Saroo vyf jaar oud was hy saam met sy ouer broer te bietsen vir 12 00:00:48,820 --> 00:00:51,830 verandering op 'n passasierstrein in 'n dorpie sowat twee uur 13 00:00:51,830 --> 00:00:53,510 van sy klein tuisdorp. 14 00:00:53,510 --> 00:00:56,790 Saroo moeg geraak het en hop op 'n nabygeleë trein waar hy gedink het sy 15 00:00:56,790 --> 00:00:58,880 broer is toe aan die slaap geraak. 16 00:00:58,880 --> 00:01:03,360 Toe hy wakker word het hy was in Calcutta, byna 900 myl weg. 17 00:01:03,360 --> 00:01:05,770 Saroo probeer om sy weg te vind terug, maar hy het nie geweet 18 00:01:05,770 --> 00:01:07,260 die naam van sy tuisdorp. 19 00:01:07,260 --> 00:01:11,430 En as 'n klein ongeletterd seun in 'n groot stad vol vergeet kinders moes hy 20 00:01:11,430 --> 00:01:13,520 feitlik geen kans om die huis. 21 00:01:13,520 --> 00:01:16,760 >> Hy was 'n straat kind vir 'n rukkie totdat 'n plaaslike aanneming agentskap verslaaf 22 00:01:16,760 --> 00:01:18,840 hom met 'n Australiese paartjie wat hom gebring 23 00:01:18,840 --> 00:01:20,600 woon in Hobart, Tasmanië. 24 00:01:20,600 --> 00:01:23,130 Saroo geskuif daar, geleer Engels, en grootgeword het. 25 00:01:23,130 --> 00:01:27,450 Maar hy het nooit ophou soek na sy familie en sy tuisdorp. 26 00:01:27,450 --> 00:01:32,380 >> Dekades later, het hy ontdek Google Aarde en gevolg treinspore. 27 00:01:32,380 --> 00:01:36,140 En gee hom 'n voorgeskrewe radius gebaseer op hoe lank hy gedink het hy was 28 00:01:36,140 --> 00:01:40,020 slaap en hoe vinnig het hy gedink dat die trein gaan, het hy geweet hy grootgeword het 29 00:01:40,020 --> 00:01:43,930 in 'n warm klimaat, het hy geweet hy het Hindi soos 'n kind, en hy is aangesê 30 00:01:43,930 --> 00:01:46,160 dat hy lyk asof hy was uit Oos-Indië. 31 00:01:46,160 --> 00:01:49,650 >> Ten slotte, na jare van skuur die satelliet foto's, het hy 32 00:01:49,650 --> 00:01:51,340 erken 'n paar bakens. 33 00:01:51,340 --> 00:01:54,180 En na die gesels met 'n administrateur van 'n nabygeleë dorp se 34 00:01:54,180 --> 00:01:57,740 Facebook-blad, het hy besef hy het die huis. " 35 00:01:57,740 --> 00:02:03,770 >> So hier is dan die video vertel wat verhaal uit sy perspektief. 36 00:02:03,770 --> 00:02:04,025 >> [Video speel] 37 00:02:04,025 --> 00:02:07,480 >> -Dit was 26 jaar gelede en ek was net sowat vyf te draai. 38 00:02:07,480 --> 00:02:10,539 Ons het na die stasie en ons aan boord van 'n trein saam. 39 00:02:10,539 --> 00:02:13,390 My broer het net gesê ek sal bly hier en ek sal terug kom. 40 00:02:13,390 --> 00:02:16,363 En ek het net gedink, wel, jy weet, ek kan net so goed gaan slaap en 41 00:02:16,363 --> 00:02:17,950 dan sal hy net maak my wakker. 42 00:02:17,950 --> 00:02:21,740 En wanneer ek wakker word die volgende dag, die hele wa leeg was op 'n weghol 43 00:02:21,740 --> 00:02:24,305 trein, 'n spook trein neem my, ek weet nie waar. 44 00:02:24,305 --> 00:02:27,120 45 00:02:27,120 --> 00:02:31,660 >> Ek is aangeneem na Australië 'n Australiese familie. 46 00:02:31,660 --> 00:02:35,360 En Ma het versier my kamer met die kaart van Indië, wat sy 47 00:02:35,360 --> 00:02:37,090 sit langs my bed. 48 00:02:37,090 --> 00:02:42,170 Ek het elke oggend sien dat die kaart, en dus is dit soort van gehou die 49 00:02:42,170 --> 00:02:43,740 herinneringe lewendig. 50 00:02:43,740 --> 00:02:46,475 >> Mense sou sê, jy probeer om te vind 'n naald in 'n hooimied. 51 00:02:46,475 --> 00:02:49,060 Saroo, sal jy nooit vind nie. 52 00:02:49,060 --> 00:02:52,510 Ek wil hê flitse van die plekke wat Ek gebruik om te gaan, die flitse 53 00:02:52,510 --> 00:02:55,050 van my gesin se gesigte. 54 00:02:55,050 --> 00:02:59,200 Daar was die beeld van my ma sit sit met haar bene gekruis 55 00:02:59,200 --> 00:03:00,610 net kyk na haar roep. 56 00:03:00,610 --> 00:03:03,340 Die lewe is net so hard. 57 00:03:03,340 --> 00:03:06,002 Dit was my skat. 58 00:03:06,002 --> 00:03:09,390 >> En ek was op soek in Google Map en besef daar is Google Earth as well. 59 00:03:09,390 --> 00:03:13,560 In 'n wêreld waar jy kan zoem in ek begin al hierdie gedagtes te hê en 60 00:03:13,560 --> 00:03:16,650 watter moontlikhede wat dit kon doen vir my. 61 00:03:16,650 --> 00:03:19,520 Ek het vir myself gesê, wel, jy weet, jy het al die fotografiese 62 00:03:19,520 --> 00:03:22,340 herinneringe en landmerke waar jy uit en jy weet wat 63 00:03:22,340 --> 00:03:23,460 die dorp lyk. 64 00:03:23,460 --> 00:03:27,910 Dit kan 'n aansoek wees dat jy kan gebruik om jou pad terug te vind. 65 00:03:27,910 --> 00:03:32,750 >> Ek het gedink, goed, ek sal 'n dot op Calcutta Station in 'n radius 66 00:03:32,750 --> 00:03:36,350 lyn wat jy moet soek word rondom hierdie gebied. 67 00:03:36,350 --> 00:03:38,850 Ek het gekom oor hierdie treinspore. 68 00:03:38,850 --> 00:03:44,490 En ek het begin na aanleiding van dit en ek het gekom om te 'n stasie wat weerspieël die 69 00:03:44,490 --> 00:03:48,260 dieselfde beeld wat in my herinneringe. 70 00:03:48,260 --> 00:03:49,730 >> Alles wat ooreenstem. 71 00:03:49,730 --> 00:03:50,800 Ek het net gedink, yep. 72 00:03:50,800 --> 00:03:51,545 Ek weet waar ek gaan. 73 00:03:51,545 --> 00:03:55,387 Ek gaan net die kaart te laat dat ek het in my kop om my te lei en neem my 74 00:03:55,387 --> 00:03:58,230 Terug na my tuisdorp. 75 00:03:58,230 --> 00:04:02,290 >> Ek het na die drumpel van die huis dat ek gebore en rondgeloop 76 00:04:02,290 --> 00:04:04,270 omtrent vyftien meter om die draai. 77 00:04:04,270 --> 00:04:08,140 Daar is drie dames staan ​​buite aangrensend aan mekaar. 78 00:04:08,140 --> 00:04:10,230 En die middelste een na vore getree. 79 00:04:10,230 --> 00:04:12,910 En ek het net gedink, hierdie is jou moeder. 80 00:04:12,910 --> 00:04:18,590 Sy het na vore gekom het, het sy my omhels, en ons was daar vir omtrent vyf minute. 81 00:04:18,590 --> 00:04:21,670 82 00:04:21,670 --> 00:04:25,787 >> Sy gryp my hand en sy het my na die huis en het op die telefoon en sy 83 00:04:25,787 --> 00:04:31,110 lui my suster en my broer te sê dat jou broer net al die 84 00:04:31,110 --> 00:04:34,480 skielik verskyn soos 'n spook. 85 00:04:34,480 --> 00:04:37,590 >> En dan is die familie was weer saam. 86 00:04:37,590 --> 00:04:38,570 Alles is alles goed. 87 00:04:38,570 --> 00:04:40,250 Ek help my ma uit. 88 00:04:40,250 --> 00:04:42,240 Sy hoef nie te word weg slaaf. 89 00:04:42,240 --> 00:04:45,040 Sy kan lei die res van haar lewe in vrede. 90 00:04:45,040 --> 00:04:48,590 >> Dit was 'n naald in 'n hooimied, maar die naald was daar. 91 00:04:48,590 --> 00:04:49,530 Alles is daar. 92 00:04:49,530 --> 00:04:53,410 Alles wat ons het in die wêreld is die kraan van 'n knoppie. 93 00:04:53,410 --> 00:04:57,375 Maar jy het die wil te hê en die vasberadenheid om te wil dit. 94 00:04:57,375 --> 00:05:02,310 95 00:05:02,310 --> 00:05:02,780 >> [Einde video-vertoning] 96 00:05:02,780 --> 00:05:04,220 >> So 'n werklik soet storie. 97 00:05:04,220 --> 00:05:08,430 En dit herinner my eintlik van 'n hele onderwerp wat die afgelope tyd nogal 'n bietjie 98 00:05:08,430 --> 00:05:11,200 van die aandag van laat in die rooi, meer nasionaal in die algemeen. 99 00:05:11,200 --> 00:05:13,620 Veral as MOOCs neem die stadium van laat. 100 00:05:13,620 --> 00:05:17,370 MOOCs om hierdie massiewe en oop online kursusse wat CS50 is een. 101 00:05:17,370 --> 00:05:20,680 >> En die mense praat oor hoe, vir Byvoorbeeld, die geesteswetenskappe is nie regtig 102 00:05:20,680 --> 00:05:23,900 vang of is nie naastenby so in die mode soos dit eens was. 103 00:05:23,900 --> 00:05:26,680 En ek sal u aanmoedig om ouens, baie soos Jonathan het op Maandag, om te dink 104 00:05:26,680 --> 00:05:29,900 oor as jy die uitgang 50, en ons weet reeds sowat 50% van julle sal nie 105 00:05:29,900 --> 00:05:32,480 voortgaan om op 'n ander rekenaar te neem wetenskap natuurlik, en dit is heeltemal 106 00:05:32,480 --> 00:05:33,770 boete en verwag. 107 00:05:33,770 --> 00:05:36,620 Want een van die oorkoepelende doelwitte van 'n klas soos dit is regtig te 108 00:05:36,620 --> 00:05:39,790 bemagtig ouens met net 'n begrip van hoe al hierdie dinge 109 00:05:39,790 --> 00:05:41,760 werk en hoe om die wêreld van tegnologie te werk. 110 00:05:41,760 --> 00:05:45,400 >> Sodat wanneer jy terug is in jou eie wêrelde, of dit is pre-med of 111 00:05:45,400 --> 00:05:48,270 of dit nou die geesteswetenskappe of die sosiale wetenskappe of 'n ander veld 112 00:05:48,270 --> 00:05:51,830 geheel en al, dat jy ouens bring 'n paar tegniese vaardig om die tafel en 113 00:05:51,830 --> 00:05:54,770 help om slim besluite te neem wanneer dit kom by die gebruik van en 114 00:05:54,770 --> 00:05:57,530 bekendstelling van tegnologie in jou wêreld. 115 00:05:57,530 --> 00:06:00,410 >> Byvoorbeeld Ek was herinner aan wyle ook van twee van die voorgraadse 116 00:06:00,410 --> 00:06:04,410 klasse Ek het twee jaar gelede, wat was so 'n eenvoudige gebruik van tegnologie 117 00:06:04,410 --> 00:06:06,180 maar ooit so oortuigend. 118 00:06:06,180 --> 00:06:08,845 Eerste Nights met Professor Tom Kelly As jy geneem het om die klas. 119 00:06:08,845 --> 00:06:11,640 Dit is 'n klas van klassieke musiek op hierdie stadium hier waar jy leer om 'n 120 00:06:11,640 --> 00:06:13,190 bietjie iets oor musiek. 121 00:06:13,190 --> 00:06:17,770 Dit is eintlik die eerste nag wat CS50 geleen om die idee van liedjies vir dié 122 00:06:17,770 --> 00:06:20,630 minder gemaklik in tussen en meer gemaklik. 123 00:06:20,630 --> 00:06:24,410 >> In my tyd het hulle verskillende spore vir kinders met absoluut geen musiek 124 00:06:24,410 --> 00:06:27,300 ervaar soos ek, en dan kinders wat het reeds sedert hulle was 125 00:06:27,300 --> 00:06:28,240 vyf jaar oud. 126 00:06:28,240 --> 00:06:31,200 En daardie klas, byvoorbeeld, het net 'n webwerf soos die meeste ander, maar dit 127 00:06:31,200 --> 00:06:34,210 was 'n webwerf wat toegelaat word om jou te verken musiek op dit en speel 128 00:06:34,210 --> 00:06:39,120 musikale uittreksels uit die klas, van die web, En net gebruik tegnologie in 'n baie 129 00:06:39,120 --> 00:06:40,210 naatlose manier. 130 00:06:40,210 --> 00:06:44,460 >> 'N ander klas jare later dat ek geouditeer, in wese, in grad skool, 131 00:06:44,460 --> 00:06:47,430 Anthro 1010, Inleiding te Argeologie hier. 132 00:06:47,430 --> 00:06:48,190 Dit was ongelooflik. 133 00:06:48,190 --> 00:06:52,715 En een van die mees dwingende nog super voor die hand liggend, in retrospek, gebruik van 134 00:06:52,715 --> 00:06:56,000 sagteware was dat die professore in daardie klas gebruik Google Earth. 135 00:06:56,000 --> 00:06:58,250 Ons sit oorkant die straat in sommige lesing saal. 136 00:06:58,250 --> 00:07:01,240 En jy kan nie reis, byvoorbeeld, na die Midde-Ooste na die grawe wat 'n mens 137 00:07:01,240 --> 00:07:04,530 van die professore het net terug te kom op, maar ons kon dit feitlik doen deur 138 00:07:04,530 --> 00:07:07,870 vlieg rond in Google Earth en op soek na 'n voël se oog die lig op die 139 00:07:07,870 --> 00:07:10,360 grawe webwerf Hy het pas teruggekeer van 'n week gelede. 140 00:07:10,360 --> 00:07:12,630 >> So ek sal aanmoedig om julle, veral in die geesteswetenskappe, om te gaan 141 00:07:12,630 --> 00:07:16,260 terug na die departemente ná hierdie klas om jou finale projekte 142 00:07:16,260 --> 00:07:19,960 met jou of jou eie idees, en sien net wat jy kan doen om jou te vul 143 00:07:19,960 --> 00:07:23,570 eie velde in geesteswetenskappe of buite met 'n bietjie van hierdie soort 144 00:07:23,570 --> 00:07:26,770 ding wat ons het ondersoek hier in CS50. 145 00:07:26,770 --> 00:07:31,790 >> So met die beeld geverf, gedink ons wil probeer om twee dinge aan te pak vandag. 146 00:07:31,790 --> 00:07:35,040 Een, probeer om te gee jou 'n gevoel van waar jy kan gaan na 50. 147 00:07:35,040 --> 00:07:37,950 En in die besonder, as jy kies om te Pak 'n web-gebaseerde projek is 148 00:07:37,950 --> 00:07:42,580 ongelooflik gemeen het, hoe kan jy gaan oor die neem af al CS50 se 149 00:07:42,580 --> 00:07:45,810 opleiding wiele en gaan daar op jou eie en nie om te vertrou op 'n 150 00:07:45,810 --> 00:07:48,000 PDF of 'n spesifikasie van 'n pset? 151 00:07:48,000 --> 00:07:50,510 Nie om te vertrou op 'n CS50 toestel nie. 152 00:07:50,510 --> 00:07:52,780 Maar kan nie regtig trek jouself deur jou bootstraps. 153 00:07:52,780 --> 00:07:55,790 >> Met wat gesê het, C-gebaseer finale projekte is welkom. 154 00:07:55,790 --> 00:07:58,020 Dinge wat gebruik maak van die stand vir 'n draagbare biblioteek in 155 00:07:58,020 --> 00:07:59,510 grafiese is welkom. 156 00:07:59,510 --> 00:08:03,240 Ons weet net dat daar statisties 'n baie mense byt af projekte in PHP en 157 00:08:03,240 --> 00:08:07,860 Python en Ruby en MySQL en ander omgewings, so ons sal 'n paar van vooroordeel 158 00:08:07,860 --> 00:08:09,570 ons opmerkings na daardie. 159 00:08:09,570 --> 00:08:10,650 >> Maar 'n vinnige blik. 160 00:08:10,650 --> 00:08:15,940 So ons het dit as vanselfsprekend in die pset7 feit dat $ _SESSION bestaan. 161 00:08:15,940 --> 00:08:19,400 Dit was 'n super wêreld, 'n globale, assosiatiewe skikking. 162 00:08:19,400 --> 00:08:23,040 En wat beteken dit laat doen? 163 00:08:23,040 --> 00:08:27,130 Funksioneel, wat is die funksie dit gee ons? 164 00:08:27,130 --> 00:08:28,590 Ja? 165 00:08:28,590 --> 00:08:30,270 Die gebruiker se ID op te spoor. 166 00:08:30,270 --> 00:08:31,660 En hoekom is dit nuttig? 167 00:08:31,660 --> 00:08:36,059 Om in staat wees om in te slaan van hierdie super globale JHarvard of [? Scroobs?] 168 00:08:36,059 --> 00:08:41,880 of Malan se gebruiker ID toe hy of sy besoek 'n site. 169 00:08:41,880 --> 00:08:42,380 >> Presies. 170 00:08:42,380 --> 00:08:44,049 So jy hoef nie aan te meld in weer en weer. 171 00:08:44,049 --> 00:08:47,170 Dit sou 'n baie lam wêreld wye web wees As elke keer as jy kliek 'n skakel 172 00:08:47,170 --> 00:08:50,780 op 'n site soos Facebook of elke keer jy het op 'n e-pos in Gmail jy 173 00:08:50,780 --> 00:08:54,060 moes weer kontroleer om te bewys dat dit is nog steeds jou en nie jou kamermaat 174 00:08:54,060 --> 00:08:56,700 wat dalk geloop het tot by jou rekenaar in jou afwesigheid. 175 00:08:56,700 --> 00:08:59,640 >> So gebruik ons ​​net onthou wie jy is. 176 00:08:59,640 --> 00:09:01,830 En hoe dit geimplementeer onder die enjinkap? 177 00:09:01,830 --> 00:09:07,720 Hoe om 'n webwerf wat gebruik maak van die protokol wat web blaaiers en bedieners 178 00:09:07,720 --> 00:09:12,060 praat, hoe HTTP, wat 'n staatlose protokol, kom ons sê. 179 00:09:12,060 --> 00:09:15,510 >> En deur staatlose Ek bedoel, sodra jy toegang tot 'n webwerf, laai 'n paar 180 00:09:15,510 --> 00:09:19,650 HTMLs, sommige JavaScript, sommige CSS, jou leser se ikoon ophou spin. 181 00:09:19,650 --> 00:09:23,420 Jy hoef nie 'n konstante verband na die bediener tipies. 182 00:09:23,420 --> 00:09:24,170 Dit is dit. 183 00:09:24,170 --> 00:09:26,290 Daar is geen staat gehandhaaf voortdurend. 184 00:09:26,290 --> 00:09:30,510 So, hoe is SESSIE geïmplementeer in sulke 'n manier dat elke keer as jy 'n besoek 185 00:09:30,510 --> 00:09:32,860 nuwe bladsy, die webtuiste onthou wie jy is? 186 00:09:32,860 --> 00:09:36,150 187 00:09:36,150 --> 00:09:38,195 Wat is die onderliggende implementering detail? 188 00:09:38,195 --> 00:09:40,810 189 00:09:40,810 --> 00:09:41,490 Skree dit uit. 190 00:09:41,490 --> 00:09:43,270 Dit is een woord. 191 00:09:43,270 --> 00:09:43,640 >> Koekies. 192 00:09:43,640 --> 00:09:44,190 Alle regte. 193 00:09:44,190 --> 00:09:44,800 So koekies. 194 00:09:44,800 --> 00:09:45,900 Wel, hoe koekies gebruik? 195 00:09:45,900 --> 00:09:48,870 Ons sal onthou dat 'n koekie is oor die algemeen net 'n stuk van inligting. 196 00:09:48,870 --> 00:09:51,590 En dit is dikwels 'n groot ewekansige nommer, maar nie altyd nie. 197 00:09:51,590 --> 00:09:55,420 En 'n koekie is geplant op jou harde ry of in jou rekenaar se geheue so 198 00:09:55,420 --> 00:09:59,070 dat elke keer as jy weer dieselfde webwerf, die leser herinner die 199 00:09:59,070 --> 00:10:01,650 bediener, ek is gebruiker 1234567. 200 00:10:01,650 --> 00:10:03,570 Ek gebruiker 1234567. 201 00:10:03,570 --> 00:10:07,590 >> En so lank as wat die bediener het onthou daardie gebruiker 1234567 is 202 00:10:07,590 --> 00:10:11,300 JHarvard, die webwerf sal net aanvaar dat u is wie jy sê jy is. 203 00:10:11,300 --> 00:10:14,230 En onthou dat ons vandag hierdie koekies soort in die vorm van 'n 204 00:10:14,230 --> 00:10:15,510 virtuele hand staan. 205 00:10:15,510 --> 00:10:20,530 Dit is gestuur in die HTTP-hoofde net om te herinner die bediener wat jy is wat dit 206 00:10:20,530 --> 00:10:21,620 dink jy is. 207 00:10:21,620 --> 00:10:23,320 >> Natuurlik, daar is 'n bedreiging. 208 00:10:23,320 --> 00:10:27,530 Wat bedreiging hou dit oop te maak ons ​​tot as ons is hoofsaaklik gebruik soort van 'n klub 209 00:10:27,530 --> 00:10:30,110 of 'n pretpark meganisme vir onthou wie ons is? 210 00:10:30,110 --> 00:10:32,630 211 00:10:32,630 --> 00:10:36,170 >> As jy asseblief iemand se koekie en kaping hul sessie, om so te spreek, het jy 212 00:10:36,170 --> 00:10:39,670 kan voorgee om iemand anders en die wees webwerf mees waarskynlike is net gaan om te 213 00:10:39,670 --> 00:10:40,150 Glo jy. 214 00:10:40,150 --> 00:10:41,030 So sal ons kom terug na daardie. 215 00:10:41,030 --> 00:10:44,240 Omdat die ander tema vir vandag verby bemagtiging is ook praat 216 00:10:44,240 --> 00:10:48,170 oor die baie scary wêreld waarin ons leef en net hoe baie van wat jy doen op 217 00:10:48,170 --> 00:10:51,480 die web, hoeveel van wat jy doen, selfs op jou selfone vandag kan wees 218 00:10:51,480 --> 00:10:55,170 nagespoor regtig deur enigiemand tussen jy en punt B. 219 00:10:55,170 --> 00:10:56,240 >> En Ajax, onthou. 220 00:10:56,240 --> 00:10:58,740 Ons kyk net kortliks na hierdie, Alhoewel jy het al met behulp dit 221 00:10:58,740 --> 00:11:02,660 indirek in pset8 omdat jy met Google Maps en omdat jy 222 00:11:02,660 --> 00:11:03,830 die gebruik van Google Earth. 223 00:11:03,830 --> 00:11:07,780 Google Maps en Google Earth nie laai die hele wêreld aan jou 224 00:11:07,780 --> 00:11:10,490 lessenaar, natuurlik, die oomblik wat jy laai pset8. 225 00:11:10,490 --> 00:11:15,020 Dit laai net 'n vierkant van die wêreld of 'n groter vierkante van die aarde. 226 00:11:15,020 --> 00:11:18,910 En dan elke keer as jy soort van stuur van die reeks wat jy kan sien - 227 00:11:18,910 --> 00:11:21,790 veral as 'n stadige konneksie nie - jy dalk 'n grys vir 'n oomblik 228 00:11:21,790 --> 00:11:26,440 of 'n bietjie vaag beelde as die rekenaar afgelaai meer soos teëls, 229 00:11:26,440 --> 00:11:29,190 meer sulke beelde van die wêreld of die aarde. 230 00:11:29,190 --> 00:11:34,620 >> En Ajax is oor die algemeen die tegniek deur watter webtuistes is om dit te doen. 231 00:11:34,620 --> 00:11:39,250 Sodra jy meer van die kaart, jou leser gaan Ajax, wat is om te gebruik 232 00:11:39,250 --> 00:11:42,240 nie self 'n taal of tegnologie, dit is net 'n tegniek. 233 00:11:42,240 --> 00:11:47,390 Dit is die gebruik van JavaScript om te gaan kry meer inligting van 'n bediener wat 234 00:11:47,390 --> 00:11:52,320 kan jou leser om te gaan kry wat om te die ooste of wat is aan die westekant van 235 00:11:52,320 --> 00:11:55,110 Wat is anders tans word getoon in die kaart. 236 00:11:55,110 --> 00:11:58,520 So dit is 'n onderwerp wat baie van julle sal direk of teëkom 237 00:11:58,520 --> 00:12:01,180 indirek via finale projekte as jy kies iets wat te maak 238 00:12:01,180 --> 00:12:05,020 Net so dinamies dat se trek data van 'n paar derde party webwerf. 239 00:12:05,020 --> 00:12:07,390 >> So ons het 'n baie opwindende volgende Woensdag voorlê. 240 00:12:07,390 --> 00:12:12,280 Quiz een, die inligting waarvoor is op CS50.net reeds. 241 00:12:12,280 --> 00:12:17,530 Weet dat daar sal 'n hersiening sessie eerskomende Maandag om 05:30. 242 00:12:17,530 --> 00:12:21,010 Die datum en tyd is reeds gepos op CS50.net in daardie About vel. 243 00:12:21,010 --> 00:12:22,940 En moenie laat weet dat jy enige vrae het. 244 00:12:22,940 --> 00:12:25,230 Pset8 is intussen reeds in jou hande. 245 00:12:25,230 --> 00:12:29,210 >> En laat my net by een Vrae te red mense mate van stres. 246 00:12:29,210 --> 00:12:32,530 Vir die grootste deel 'n groot deel van die chatter ons sien by kantoorure en 'n baie 247 00:12:32,530 --> 00:12:36,950 die foute wat ons op Bespreek berig sien, is wel foute in 'n student se kode. 248 00:12:36,950 --> 00:12:41,360 Maar wanneer jy teëgekom het iets soos die Google Earth plug-in gekraak 249 00:12:41,360 --> 00:12:44,310 of selfs nie werk nie en jy is vol vertroue dat dit nie is wat jy is, is dit nie 'n 250 00:12:44,310 --> 00:12:48,530 [? chamad] issue?, is dit nie 'n fout wat jy ingevoer en in die 251 00:12:48,530 --> 00:12:49,820 verspreiding kode. 252 00:12:49,820 --> 00:12:51,250 >> Besef net FYI - 253 00:12:51,250 --> 00:12:53,130 hierdie is 'n soort van plan Z - 254 00:12:53,130 --> 00:12:57,100 dat die laaste keer wat ons gebruik om hierdie probleem stel en ons het in 'n soortgelyke 255 00:12:57,100 --> 00:13:01,520 kwessies, is daar 'n reël van die kode in service.js wat in wese is dit, 256 00:13:01,520 --> 00:13:03,580 wat sê, draai geboue op. 257 00:13:03,580 --> 00:13:07,100 En hulle werk om die laaste keer dat ons het dit in, weer, op die hoek gevalle waar 258 00:13:07,100 --> 00:13:11,660 studente kon net nie die darn ding aan die werk is verander getrou aan valse 259 00:13:11,660 --> 00:13:12,940 in dat een lyn van kode. 260 00:13:12,940 --> 00:13:15,520 En jy sal dit vind as jy soek deur service.js. 261 00:13:15,520 --> 00:13:19,990 >> Ek beveel dit nie, want jy sal die skep van die mees dorre landskap 262 00:13:19,990 --> 00:13:21,720 van Cambridge, Massachusetts. 263 00:13:21,720 --> 00:13:24,930 Dit sal letterlik plat jou wêreld sodat alles wat jy sien, is die onderrig 264 00:13:24,930 --> 00:13:28,610 maats en natuurlik assistente op die horison en geen geboue. 265 00:13:28,610 --> 00:13:31,980 Maar besef vir watter rede ook al die Google Earth plug-in lyk nog steeds te wees 266 00:13:31,980 --> 00:13:35,290 karretjie 'n jaar later, so hierdie kan wees om jou fail red. 267 00:13:35,290 --> 00:13:38,915 So eerder as oord in trane, oord te draai geboue af as jy weet 268 00:13:38,915 --> 00:13:41,980 dit is die plug-in dit is nie saam op jou Mac of PC. 269 00:13:41,980 --> 00:13:46,060 Maar dit is weer die laaste uitweg as jy seker is dat dit nie 'n fout. 270 00:13:46,060 --> 00:13:46,890 >> So het die Hackathon. 271 00:13:46,890 --> 00:13:48,950 'N Paar van die teasers net om jou opgewonde. 272 00:13:48,950 --> 00:13:50,640 Ons het nogal 'n paar wie al geantwoord. 273 00:13:50,640 --> 00:13:54,230 En net 'n prentjie van wat om te verf wag, het ek gedink ek wil gee jou 'n paar 274 00:13:54,230 --> 00:13:56,858 sekondes onthou van hierdie beelde van verlede jaar. 275 00:13:56,858 --> 00:14:00,850 >> [MUSIEK] 276 00:14:00,850 --> 00:14:02,240 >> David J. MALAN: Wag, oh. 277 00:14:02,240 --> 00:14:05,410 Ons het selfs ons letterlike CS50 pendel. 278 00:14:05,410 --> 00:14:17,920 >> [MUSIEK] 279 00:14:17,920 --> 00:14:20,620 >> David J. MALAN: So dit is wat wag jy in terme van die Hackathon. 280 00:14:20,620 --> 00:14:24,180 En dit sal 'n geleentheid wees om duidelik wees, nie jou finale te begin 281 00:14:24,180 --> 00:14:27,730 projekte, maar om voort te gaan werk op jou finale projekte saam 282 00:14:27,730 --> 00:14:30,210 klasmaats en personeel en baie kos. 283 00:14:30,210 --> 00:14:34,340 En weer, as jy wakker 05:00 Ons sal jou op die pad na IHOP. 284 00:14:34,340 --> 00:14:37,075 >> Die CS50 billike, intussen, is die klimaks vir die hele klas waar 285 00:14:37,075 --> 00:14:41,160 jy bring jou skootrekenaars en vriende, miskien selfs familie na 'n kamer op die kampus 286 00:14:41,160 --> 00:14:44,530 af in die straat jou projekte uit te stal op skootrekenaars, op lang tafels 287 00:14:44,530 --> 00:14:47,570 soos dit met baie van die kos en vriende en musiek in die agtergrond, 288 00:14:47,570 --> 00:14:49,250 sowel as ons vriende van die bedryf. 289 00:14:49,250 --> 00:14:52,760 Maatskappye soos Facebook en Microsoft en Google en Amazon en trosse van 290 00:14:52,760 --> 00:14:55,750 ander, sodat indien belangstel in net hoor oor die werklike wêreld of 291 00:14:55,750 --> 00:14:59,570 gesels met mense oor die werklike wêreld internskap of voltydse geleenthede, 292 00:14:59,570 --> 00:15:01,950 weet dat sommige van ons vriende van die bedryf sal daar wees. 293 00:15:01,950 --> 00:15:04,970 En 'n paar van die foto's wat ons kan verf hier is soos volg. 294 00:15:04,970 --> 00:15:24,400 >> [MUSIEK] 295 00:15:24,400 --> 00:15:24,920 >> David J. MALAN: Alle reg. 296 00:15:24,920 --> 00:15:27,060 So dit is dan die CS50 regverdig. 297 00:15:27,060 --> 00:15:31,780 So laat ons nou voortgaan om 'n storie te vertel wat werklik sal jou bemagtig om hopelik 298 00:15:31,780 --> 00:15:33,230 vir dinge soos finale projekte. 299 00:15:33,230 --> 00:15:36,940 So een van 'n paar klein dinge om saad jou gedagte, hetsy vir finale projekte 300 00:15:36,940 --> 00:15:40,470 of net meer algemeen vir projekte wat jy kan besluit aan te pak nadat 301 00:15:40,470 --> 00:15:45,720 die kursus is al hierdie gedokumenteer op manual.cs50.net waar die CS50 302 00:15:45,720 --> 00:15:48,010 handleiding waar ons het baie van die tegnieke gedokumenteer. 303 00:15:48,010 --> 00:15:51,080 >> En dit is net snelskriknotasie vir sê dat daar in die 304 00:15:51,080 --> 00:15:55,190 wêreld dinge genoem SMS te e-pos poorte, wat is 'n deftige manier 305 00:15:55,190 --> 00:15:58,180 sê daar is bedieners in die wêreld wat weet hoe om e-pos te omskep 306 00:15:58,180 --> 00:15:59,230 teks boodskappe. 307 00:15:59,230 --> 00:16:02,450 So as vir jou finale projek wat jy wil hê 'n soort van mobiele tema te skep 308 00:16:02,450 --> 00:16:06,650 diens wat u toelaat om vriende te waarsku of gebruikers op gebeure op die kampus 309 00:16:06,650 --> 00:16:10,290 of wat bedien word in die D Hall daardie aand of enige sodanige waarskuwing funksie, 310 00:16:10,290 --> 00:16:15,150 weet dat dit eenvoudig soos die stuur van 'n e-pos as met PHPMailer wat jy 311 00:16:15,150 --> 00:16:18,735 mag gebruik het om vir pset7 of ons gesien kortliks 'n week of wat gelede, te 312 00:16:18,735 --> 00:16:20,440 adresse soos hierdie. 313 00:16:20,440 --> 00:16:26,040 >> En in die feit dat jy dit kan teks veronderstelling Jou vriend het 'n onbeperkte SMS 314 00:16:26,040 --> 00:16:28,310 plan en jy nie wil hê te hef hulle $ 0,10. 315 00:16:28,310 --> 00:16:31,920 Maar as jy stuur 'n e-pos aan jou vriend wat jy weet Verizon of te laat 316 00:16:31,920 --> 00:16:35,870 AT & T gebruik Gmail en net die stuur om dit te hul telefoonnommer op wat ook al die 317 00:16:35,870 --> 00:16:38,980 sub domein daar is, besef jy stuur 'n SMS-boodskap. 318 00:16:38,980 --> 00:16:41,570 >> Maar dit is een van daardie dinge om versigtig te wees. 319 00:16:41,570 --> 00:16:47,430 As jy sleep deur middel van verlede jaar se CS50 video's wat ek dink dit was 'n verskriklike, 320 00:16:47,430 --> 00:16:51,660 gruwelike, verskriklike fout ek geskryf het in die kode beland stuur van ongeveer 20.000 teks 321 00:16:51,660 --> 00:16:55,410 boodskappe lewe aan ons studente in die klas. 322 00:16:55,410 --> 00:16:57,970 En net omdat iemand opgemerk dat hulle was om meer as een teks 323 00:16:57,970 --> 00:17:01,860 boodskappe van my het ek die middele om vinnig te beheer C getref 324 00:17:01,860 --> 00:17:03,210 en stop die proses. 325 00:17:03,210 --> 00:17:06,200 Beheer C, jy onthou, is jou vriend in gevalle van oneindige lus. 326 00:17:06,200 --> 00:17:10,900 So wees versigtig vir die krag wat ons het net gegee aan u eerder onverantwoordelik, het die meeste 327 00:17:10,900 --> 00:17:12,950 waarskynlik, gebaseer op my eie ervaring. 328 00:17:12,950 --> 00:17:15,400 Maar dit is op die web en het is daar vir 'n geruime tyd. 329 00:17:15,400 --> 00:17:15,810 >> Alle regte. 330 00:17:15,810 --> 00:17:17,064 So textmarks.com. 331 00:17:17,064 --> 00:17:18,040 So, dit is 'n webwerf. 332 00:17:18,040 --> 00:17:20,829 En daar is trosse van ander daar buite asook dat ons eintlik gebruik het 333 00:17:20,829 --> 00:17:24,050 as 'n klas vir die jaar te wees om SMS-boodskappe te ontvang. 334 00:17:24,050 --> 00:17:27,869 Ongelukkig, die stuur van SMS-boodskappe is maklik as die stuur van e-posse soos dit. 335 00:17:27,869 --> 00:17:30,730 Ontvangs is 'n bietjie harder, veral as jy wil een te hê 336 00:17:30,730 --> 00:17:34,610 die sexy kort kodes wat net vyf of ses syfers lank. 337 00:17:34,610 --> 00:17:37,720 >> So byvoorbeeld, vir die jaar wat jy het al staat om 'n SMS-boodskap te stuur - en jy 338 00:17:37,720 --> 00:17:39,200 kan probeer om dit so goed - 339 00:17:39,200 --> 00:17:41,900 na 41411. 340 00:17:41,900 --> 00:17:44,300 En dit is die telefoonnommer vir hierdie spesifieke begin. 341 00:17:44,300 --> 00:17:48,130 En as jy 'n boodskap stuur na 41411 - 342 00:17:48,130 --> 00:17:51,190 Ek sal net skryf dit hier, sodat 41411 - 343 00:17:51,190 --> 00:17:54,290 en dan stuur hulle 'n boodskap hou SBOY vir pendel Boy. 344 00:17:54,290 --> 00:17:56,370 En dan tik in iets soos Mather quad. 345 00:17:56,370 --> 00:17:59,360 So jy stuur dat die SMS-boodskap aan daardie telefoonnommer. 346 00:17:59,360 --> 00:18:02,630 Binne 'n paar sekondes wat jy moet kry terug 'n reaksie van die CS50 Shuttle 347 00:18:02,630 --> 00:18:06,210 Boy diens, wat is die bus skedulering sagteware wat ons gehad het uit 348 00:18:06,210 --> 00:18:07,290 daar op die web vir 'n geruime tyd. 349 00:18:07,290 --> 00:18:09,450 En dit sal reageer op jy via SMS-boodskap. 350 00:18:09,450 --> 00:18:13,410 >> Want wat ons gedoen het as 'n klas, soos 'n programmeerder, is sagteware te skryf, 351 00:18:13,410 --> 00:18:18,760 ingestel om ons gratis rekening met die teks punte te luister vir sms-boodskappe gestuur 352 00:18:18,760 --> 00:18:20,770 te SBOY op daardie nommer. 353 00:18:20,770 --> 00:18:25,210 En wat hulle doen, is om vorentoe die teks boodskappe na jou PHP-gebaseerde webwerf 354 00:18:25,210 --> 00:18:27,420 HTTP parameters sê hier. 355 00:18:27,420 --> 00:18:30,380 Hierdie gebruiker met hierdie telefoonnommer het julle gestuur om hierdie teks boodskap. 356 00:18:30,380 --> 00:18:31,850 Doen met dit wat jy wil. 357 00:18:31,850 --> 00:18:35,180 >> So ons het 'n paar sagteware wat op ontvangs van 'n string soos SBOY Mather 358 00:18:35,180 --> 00:18:38,420 quad, ons ontleed dit. 359 00:18:38,420 --> 00:18:41,210 Ons vind uit waar die ruimtes tussen woorde. 360 00:18:41,210 --> 00:18:44,220 En ons as 'n klas besluit hoe om te reageer nie. 361 00:18:44,220 --> 00:18:47,335 En as jy probeer om daardie nou, byvoorbeeld, jy moet sien, via reaksie binne 'n 362 00:18:47,335 --> 00:18:51,470 n paar sekondes, die volgende paar shuttles gaan van Mather na die quad indien enige. 363 00:18:51,470 --> 00:18:52,260 En daar is ander punte. 364 00:18:52,260 --> 00:18:56,060 Jy kan tik in Boylston of sodanige ander stop op die kampus, en dit moet 365 00:18:56,060 --> 00:18:57,760 erken dié woorde. 366 00:18:57,760 --> 00:18:58,590 >> So parse.com. 367 00:18:58,590 --> 00:19:01,630 Dit is 'n ander diens wat ons het al wys sommige studente op vir 368 00:19:01,630 --> 00:19:04,390 finale projekte wat is wonderlik in dat dit is gratis vir 'n 369 00:19:04,390 --> 00:19:05,660 redelike bedrag van gebruik. 370 00:19:05,660 --> 00:19:08,820 En as ek gaan na parse.com sal jy sien dat hierdie is 'n alternatief vir 371 00:19:08,820 --> 00:19:13,230 eintlik het iets soos jou eie MySQL databasis. 372 00:19:13,230 --> 00:19:14,490 En eerlik, dit is net soort van hypnotiserende. 373 00:19:14,490 --> 00:19:17,450 Dit is wat die binnekant van die wolk op 'n bewolkte dag. 374 00:19:17,450 --> 00:19:21,580 >> So parse.com kan jy 'n om te doen n klomp van die interessante dinge. 375 00:19:21,580 --> 00:19:23,610 En daar is ander alternatiewe om dit uit daar. 376 00:19:23,610 --> 00:19:26,870 Byvoorbeeld, kan jy gebruik om hulle as jou rug end-databasis. 377 00:19:26,870 --> 00:19:28,980 So jy hoef nie te hê 'n web hosting maatskappy. 378 00:19:28,980 --> 00:19:31,180 Jy hoef nie te hê 'n MySQL databasis. 379 00:19:31,180 --> 00:19:32,850 Jy kan gebruik in plaas hul agterkant. 380 00:19:32,850 --> 00:19:36,350 >> As jy doen 'n mobiele projek vir Android of IOS of die wil, weet dat 381 00:19:36,350 --> 00:19:39,776 daar bestaan ​​dinge soos druk dienste sodat jy kan stoot kennisgewings aan jou vriende 382 00:19:39,776 --> 00:19:41,390 of jou gebruikers se huis skerms. 383 00:19:41,390 --> 00:19:43,600 En dan 'n klomp van die ander funksies as well. 384 00:19:43,600 --> 00:19:47,200 >> So as jy belang, kyk uit hierdie webwerwe en webwerwe soos hulle 385 00:19:47,200 --> 00:19:50,720 om net te sien hoeveel ander mense se skouers kan jy staan ​​op te maak 386 00:19:50,720 --> 00:19:53,350 werklik 'n koel sagteware van jou eie. 387 00:19:53,350 --> 00:19:56,690 >> Nou in terme van verifikasie, 'n FAQ, is hoe jy waarborg eintlik 388 00:19:56,690 --> 00:20:01,220 dat jou gebruikers is mense op die kampus, Harvard studente of fakulteit of personeel? 389 00:20:01,220 --> 00:20:05,350 So CS50 het sy eie verifikasie diens genoem CS50 ID. 390 00:20:05,350 --> 00:20:09,940 Gaan na dat die URL en jy kan beperk jou webwerf vir enigiemand met 'n Harvard 391 00:20:09,940 --> 00:20:11,340 ID, byvoorbeeld. 392 00:20:11,340 --> 00:20:12,550 So weet ons dat ons wat kan hanteer. 393 00:20:12,550 --> 00:20:15,280 Julle moet nie in die besigheid om te sê, wat is jou Harvard ID? 394 00:20:15,280 --> 00:20:16,160 Wat is jou Harvard PIN? 395 00:20:16,160 --> 00:20:17,550 Laat my nou iets te doen met dit. 396 00:20:17,550 --> 00:20:18,740 Ons doen dit alles. 397 00:20:18,740 --> 00:20:21,710 En wat ons sal gee jou terug iemand se naam en e-posadres, maar 398 00:20:21,710 --> 00:20:23,010 niks sensitief. 399 00:20:23,010 --> 00:20:26,240 400 00:20:26,240 --> 00:20:30,380 >> 'N Program op 'n mobiele toestel, kan dit gemaak om te werk op 'n selfoon, maar 401 00:20:30,380 --> 00:20:32,630 dit is nie heeltemal ontwerp vir daardie. 402 00:20:32,630 --> 00:20:35,640 Sodat jy uiteindelik spandeer 'n nie geringe bedrag van die tyd om dit te doen. 403 00:20:35,640 --> 00:20:38,040 So ek sou ontmoedig dat die roete vir nou. 404 00:20:38,040 --> 00:20:41,570 Dit is eintlik bedoel vir web-gebaseerde programme. 405 00:20:41,570 --> 00:20:42,650 >> So web hosting. 406 00:20:42,650 --> 00:20:44,450 So as jy nie gesien het nie op die kursus se tuisblad - 407 00:20:44,450 --> 00:20:46,610 en hier is waar ons sal 'n storie begin - 408 00:20:46,610 --> 00:20:50,900 web hosting is al oor die betaling vir gewoonlik 'n diens, bied 'n bediener besit 409 00:20:50,900 --> 00:20:54,800 deur iemand anders op die web wat 'n IP adres, en jy dan jou 410 00:20:54,800 --> 00:20:55,880 webwerf op dit. 411 00:20:55,880 --> 00:20:58,620 En hulle het gewoonlik gee jou e-pos rekeninge en databasisse 412 00:20:58,620 --> 00:21:00,160 en ander sulke eienskappe. 413 00:21:00,160 --> 00:21:02,930 >> Weet dat as jy nie wil hê om werklik betaal vir so, gaan na daardie URL 414 00:21:02,930 --> 00:21:06,280 daar en CS50 het eintlik 'n nie-winsgewende rekening wat jy kan gebruik om te 415 00:21:06,280 --> 00:21:11,490 eintlik nie http://project binnekant van die toestel 416 00:21:11,490 --> 00:21:12,470 vir jou finale projek. 417 00:21:12,470 --> 00:21:16,465 As jy werklik wil hê dit moet iets wees soos, isawyouharvard.com, 418 00:21:16,465 --> 00:21:19,730 jy kan daardie domein naam te koop - hoewel nie daardie spesifieke een - en 419 00:21:19,730 --> 00:21:24,070 dan kan jy gaan oor die hosting dit op 'n openbare web bediener soos ons kan bied 420 00:21:24,070 --> 00:21:25,170 julle ouens deur hier. 421 00:21:25,170 --> 00:21:27,240 >> En in werklikheid, as onbekende, As jy nog nooit was nie 422 00:21:27,240 --> 00:21:30,590 isawyouharvard.com, een, daar gaan. 423 00:21:30,590 --> 00:21:37,310 Maar twee, weet dat dit was 'n jong vrou se naam deur Tej Te twee te toor 424 00:21:37,310 --> 00:21:41,550 jaar gelede, drie jaar gelede, wat 'n CS50 alumni wat 'n dag of twee gebeur 425 00:21:41,550 --> 00:21:46,280 voor die CS50 billike uitgestuur 'n e-pos na haar huis e-lys en voila. 426 00:21:46,280 --> 00:21:49,770 Twee dae later deur die CS50 regverdig, moes sy honderde gebruikers al die diere op 427 00:21:49,770 --> 00:21:53,240 mekaar op haar webwerf en sê hoe hulle gesien het 428 00:21:53,240 --> 00:21:55,250 hom of haar op die kampus. 429 00:21:55,250 --> 00:21:57,600 So dit is een van CS50 se gunsteling sukses stories uit 430 00:21:57,600 --> 00:21:59,650 'n CS50 finale projek. 431 00:21:59,650 --> 00:22:04,090 >> So, hoe gaan jy te werk om 'n webwerf soos wat op die internet? 432 00:22:04,090 --> 00:22:07,140 Wel, daar is 'n paar sulke bestanddele hier. 433 00:22:07,140 --> 00:22:09,310 So een, het jy 'n domein naam te koop. 434 00:22:09,310 --> 00:22:12,440 Daar is trosse van plekke in die wêreld uit wat jy kan 435 00:22:12,440 --> 00:22:13,940 koop 'n domein naam. 436 00:22:13,940 --> 00:22:16,660 En byvoorbeeld, een wat ons aanbeveel net omdat dit is gewild 437 00:22:16,660 --> 00:22:18,855 en dit is goedkoop genoem namecheap.com. 438 00:22:18,855 --> 00:22:22,860 Maar jy kan godaddy.com gaan dekades van die ander daar buite. 439 00:22:22,860 --> 00:22:24,420 Jy kan lees oor resensies. 440 00:22:24,420 --> 00:22:26,250 >> Maar vir die grootste deel dit nie saak van wie jy 441 00:22:26,250 --> 00:22:27,720 koop 'n domein naam. 442 00:22:27,720 --> 00:22:30,780 En hulle verskil in prys en hulle verskil in agtervoegsel. 443 00:22:30,780 --> 00:22:37,140 Die agtervoegsels soos. Com, net,. Org,.. Io. Tv, diegene 444 00:22:37,140 --> 00:22:38,650 eintlik verskil in prys. 445 00:22:38,650 --> 00:22:43,630 Maar as ons wou iets te doen soos cats.com ons kan gaan na die webwerf, 446 00:22:43,630 --> 00:22:44,280 Klik op Soek. 447 00:22:44,280 --> 00:22:46,370 Vermoedelik hierdie een geneem word. 448 00:22:46,370 --> 00:22:50,170 Maar blykbaar, catsagainst.com beskikbaar is. 449 00:22:50,170 --> 00:22:52,100 pluscats.com beskikbaar is. 450 00:22:52,100 --> 00:22:53,780 Lovecats, catscorner, dampcats.net. 451 00:22:53,780 --> 00:22:56,320 452 00:22:56,320 --> 00:22:59,135 Al hierdie hopelik pseudo lukraak gegenereerde. 453 00:22:59,135 --> 00:23:04,670 As jy wil cats.pw, $ 1500 net, Dit is 'n bietjie mal. 454 00:23:04,670 --> 00:23:08,100 So iemand het regtig opgeraap al die kat verwante domein name hier vir 455 00:23:08,100 --> 00:23:09,840 wisselende pryse. 456 00:23:09,840 --> 00:23:12,360 >> As 'n eenkant, laat ons sien. 457 00:23:12,360 --> 00:23:13,710 Wie cats.com het? 458 00:23:13,710 --> 00:23:16,290 Weet dat julle ouens het ten jou beskikking redelik 459 00:23:16,290 --> 00:23:17,540 gesofistikeerde bevele nou. 460 00:23:17,540 --> 00:23:20,592 Soos ek kan letterlik tik wat cats.com? 461 00:23:20,592 --> 00:23:23,730 En as gevolg van die manier waarop die internet is gestruktureer kan jy eintlik sien wat 462 00:23:23,730 --> 00:23:25,440 geregistreer het nie. 463 00:23:25,440 --> 00:23:30,240 Blykbaar het hierdie persoon is [onhoorbaar] gebruik van 'n proxy diens. 464 00:23:30,240 --> 00:23:33,900 So wie besit cats.com nie wil die wêreld om te weet wie hulle is. 465 00:23:33,900 --> 00:23:36,610 So het hulle geregistreer as deur 'n paar random privaatheid diens. 466 00:23:36,610 --> 00:23:39,100 Maar soms moet jy eintlik kry werklike eienaars. 467 00:23:39,100 --> 00:23:41,420 >> En dit is om te sê, veral as jy ' die voortsetting van 'n paar begin en jy 468 00:23:41,420 --> 00:23:44,640 regtig wil 'n domein naam en jy bereid is om iemand anders te betaal vir 469 00:23:44,640 --> 00:23:48,050 dit is, kan jy uitvind kontak inligting in die manier. 470 00:23:48,050 --> 00:23:49,940 >> Maar ook interessant is, is hierdie. 471 00:23:49,940 --> 00:23:53,380 Laat my blaai tot hierdie gedeelte. 472 00:23:53,380 --> 00:23:55,330 So dit is dat dieselfde uitset. 473 00:23:55,330 --> 00:23:56,990 En dit is net taai. 474 00:23:56,990 --> 00:24:00,740 So glo cats.com kan wees joune vir die regte prys. 475 00:24:00,740 --> 00:24:03,170 Maar wat interessant is hier is dat die naam bedieners - 476 00:24:03,170 --> 00:24:06,040 dit is totale misbruik van wat 'n naam bediener veronderstel is om te wees nie - jou naam 477 00:24:06,040 --> 00:24:08,876 bediener is nie veronderstel om te wees thisdomainforsale.com. 478 00:24:08,876 --> 00:24:11,050 As ons eintlik kies iets soos - 479 00:24:11,050 --> 00:24:15,181 Kom ons kies om iets 'n bietjie meer regmatige soos, wat is google.com, 480 00:24:15,181 --> 00:24:17,030 en blaai hier. 481 00:24:17,030 --> 00:24:18,280 So hier - 482 00:24:18,280 --> 00:24:20,600 483 00:24:20,600 --> 00:24:21,740 wat daar gebeur het? 484 00:24:21,740 --> 00:24:22,480 Interessant. 485 00:24:22,480 --> 00:24:25,290 Beyond wat - 486 00:24:25,290 --> 00:24:26,610 Kom ons hou dit meer lae sleutel. 487 00:24:26,610 --> 00:24:28,370 >> Wie is mit.edu? 488 00:24:28,370 --> 00:24:28,810 OK. 489 00:24:28,810 --> 00:24:29,900 Dit is nuttig. 490 00:24:29,900 --> 00:24:31,400 So dit is wat ek gehoop het. 491 00:24:31,400 --> 00:24:33,930 Wettige gebruik van die DNS-diens. 492 00:24:33,930 --> 00:24:36,750 Naam bedieners hier dui die volgende. 493 00:24:36,750 --> 00:24:40,880 Dit is MIT se manier om te sê, wanneer iemand in die wêreld, waar hulle ook al 494 00:24:40,880 --> 00:24:46,950 is, tipes in mit.edu en treffers Tik, jou laptop, of Mac of PC, sal 495 00:24:46,950 --> 00:24:51,830 een of ander manier het uiteindelik uit te vind dat die mense in die wêreld wat weet wat die 496 00:24:51,830 --> 00:24:58,130 IP-adres is vir mit.edu of enige van die sub domeine by mit.edu of enige van 497 00:24:58,130 --> 00:25:01,660 hierdie servers hier - en dit eintlik lyk soos MITs infrastruktuur 498 00:25:01,660 --> 00:25:03,370 redelik sterk as wat jy sou verwag. 499 00:25:03,370 --> 00:25:07,050 Hulle het verskeie name servers wat goed is vir die ontslag. 500 00:25:07,050 --> 00:25:09,840 En in waarheid te sê, dit lyk asof hulle om wêreldwyd te wees versprei oor die hele wêreld. 501 00:25:09,840 --> 00:25:13,250 'N klomp van die mense blyk te wees in die VSA, 'n paar in Asië, een in Europa, twee 502 00:25:13,250 --> 00:25:14,540 in iewers anders. 503 00:25:14,540 --> 00:25:18,000 >> Maar die punt hier is dat DNS wat het ons neem as vanselfsprekend aanvaar en 504 00:25:18,000 --> 00:25:21,990 oor die algemeen beskryf as 'n groot Excel-tabel wat IP adresse en domein 505 00:25:21,990 --> 00:25:25,890 name is eintlik redelik gesofistikeerd hiërargiese diens sodat in die 506 00:25:25,890 --> 00:25:29,170 World Daar is eintlik 'n beperkte aantal van bedieners wat in wese weet waar 507 00:25:29,170 --> 00:25:32,880 al die. Avontuur is of al die. nette is, almal van die 508 00:25:32,880 --> 00:25:34,650 . Orgs is, en so meer. 509 00:25:34,650 --> 00:25:37,820 >> So wanneer jy gaan voort en koop 'n domein naam van 'n plek soos Naam goedkoop of 510 00:25:37,820 --> 00:25:41,450 Gaan Daddy of enige ander webwerf, een van die belangrikste stappe wat jy hoef te doen, 511 00:25:41,450 --> 00:25:45,180 jy, as jy dit doen, selfs vir jou finale projek, is vertel die registrateur 512 00:25:45,180 --> 00:25:49,020 van wie jy die aankoop van die domein naam, wat in die wêreld weet jou 513 00:25:49,020 --> 00:25:52,310 webwerf se IP adresse, wat jou naam bedieners is. 514 00:25:52,310 --> 00:25:55,750 >> So as jy dit gebruik, byvoorbeeld CS50 se hosting rekening - ons gebeur het 515 00:25:55,750 --> 00:25:57,760 hierdie rekening deur dreamhost.com Dit is 'n 516 00:25:57,760 --> 00:25:59,560 gewilde web hosting maatskappy - 517 00:25:59,560 --> 00:26:03,530 hulle sal jou vertel dat jy moet koop jou domein en die wêreld vertel dat 518 00:26:03,530 --> 00:26:09,410 jou domein naam bediener is ns1.dreamhost.com, ns2.dreamhost.com, 519 00:26:09,410 --> 00:26:11,470 en ns3.dreamhost.com. 520 00:26:11,470 --> 00:26:12,600 >> Maar dit is dit. 521 00:26:12,600 --> 00:26:15,480 Aankoop van 'n domein naam beteken dat hulle die geld en om eienaarskap van die 522 00:26:15,480 --> 00:26:17,190 domein, maar dit is meer soos 'n huur al is. 523 00:26:17,190 --> 00:26:20,060 Jy kry dit vir 'n jaar en dan sal hulle wetsontwerp jy recurringly vir die res van 524 00:26:20,060 --> 00:26:22,130 jou lewe totdat jy kanselleer die domein naam. 525 00:26:22,130 --> 00:26:24,510 En dan moet jy vir hulle sê wat die naam bedieners is. 526 00:26:24,510 --> 00:26:26,190 Maar dan is jy klaar is met jou agent. 527 00:26:26,190 --> 00:26:30,130 En van daar af sal jy net interaksie met jou web hosting maatskappy, wat 528 00:26:30,130 --> 00:26:32,030 in CS50 se geval sal wees Dream Host. 529 00:26:32,030 --> 00:26:36,080 Maar weereens, sal meer dokumentasie wees verskaf aan jou as jy besluit om te gaan 530 00:26:36,080 --> 00:26:37,170 dat die roete. 531 00:26:37,170 --> 00:26:40,750 >> So as jy dit doen na die kursus se einde, net googlen web hosting 532 00:26:40,750 --> 00:26:42,830 maatskappy sal opdaag duisende van die opsies. 533 00:26:42,830 --> 00:26:45,720 En ek sal in die algemeen aan te moedig om jou te vra vriende wat dalk 'n gebruik het 534 00:26:45,720 --> 00:26:49,350 maatskappy voor as hulle beveel hulle en het 'n goeie ervaring. 535 00:26:49,350 --> 00:26:52,680 >> Want daar is 'n baie fly by night web hosting maatskappye, soos 'n man in 536 00:26:52,680 --> 00:26:55,220 sy kelder met 'n bediener wat 'n IP-adres. 537 00:26:55,220 --> 00:26:58,980 Hy het 'n paar ekstra RAM en hardeskyf ruimte en net verkoop web hosting 538 00:26:58,980 --> 00:27:02,380 rekeninge, selfs al is daar is geen manier dat bediener kon hanteer honderde 539 00:27:02,380 --> 00:27:04,050 gebruikers of duisende van die gebruikers. 540 00:27:04,050 --> 00:27:06,260 So besef jy sal kry waarvoor jy betaal. 541 00:27:06,260 --> 00:27:09,510 >> Vir 'n geruime tyd vir my persoonlike huis bladsy - en dit was heeltemal aanvaarbaar 542 00:27:09,510 --> 00:27:11,830 want ek het, wil, twee besoekers 'n maand - 543 00:27:11,830 --> 00:27:14,990 Ek was betaal, soos, $ 2,95 per maand. 544 00:27:14,990 --> 00:27:17,230 En ek is redelik seker dit was in iemand se kelder. 545 00:27:17,230 --> 00:27:20,800 Maar weereens, jy hoef nie noodwendig kry enige waarborge van uptime of 546 00:27:20,800 --> 00:27:21,840 scalability. 547 00:27:21,840 --> 00:27:24,560 So weer, jy tipies soek na iets meer as dit. 548 00:27:24,560 --> 00:27:26,220 >> Wel, wat oor SSL? 549 00:27:26,220 --> 00:27:27,690 So, wat is SSL gebruik? 550 00:27:27,690 --> 00:27:30,320 Laat ons nou begin om te stuur in die voorskrifte van sekuriteit en dinge wat 551 00:27:30,320 --> 00:27:32,330 ons kan seermaak. 552 00:27:32,330 --> 00:27:36,890 Veral as jy onderneming op jou eie. 553 00:27:36,890 --> 00:27:41,650 >> Wat is SSL, of wat gebruik word vir SSL? 554 00:27:41,650 --> 00:27:42,660 Sekuriteit, OK. 555 00:27:42,660 --> 00:27:44,000 So dit is wat gebruik word vir sekuriteit. 556 00:27:44,000 --> 00:27:44,640 Wat beteken dit? 557 00:27:44,640 --> 00:27:47,170 So dit staan ​​vir Secure Sockets Layer. 558 00:27:47,170 --> 00:27:52,330 En dit word aangedui deur 'n URL wat begin met https://. 559 00:27:52,330 --> 00:27:58,410 Baie van ons het waarskynlik nog nooit getik https://, maar jy sal vind dikwels dat 560 00:27:58,410 --> 00:28:03,000 jou leser is afgelei van HTTP te HTTPS sodat alles is daar 561 00:28:03,000 --> 00:28:04,260 na geïnkripteer. 562 00:28:04,260 --> 00:28:10,810 >> Ter inligting, die gebruik van SSL vereis gewoonlik dat jy het 'n unieke IP-adres. 563 00:28:10,810 --> 00:28:13,940 En tipies 'n unieke IP-adres te kry moet jy 'n web hosting te betaal 564 00:28:13,940 --> 00:28:15,850 maatskappy 'n paar dollars meer per maand. 565 00:28:15,850 --> 00:28:19,850 So besef dit is baie maklik geïmplementeer hierdie dae deur die koop van 'n IP 566 00:28:19,850 --> 00:28:22,930 adres en deur die koop van wat is genoem 'n SSL sertifikaat. 567 00:28:22,930 --> 00:28:26,520 Maar besef dat dit kom op 'n bykomende koste. 568 00:28:26,520 --> 00:28:30,880 En, soos ons sal probeer om te skrik in net 'n bietjie, dit is nie eens noodwendig 100% 569 00:28:30,880 --> 00:28:34,040 beskermende van wat dit ookal is jy probeer om te beskerm. 570 00:28:34,040 --> 00:28:38,620 >> So vir sekuriteit, het ek gedink ek wil doen soort van 'n ewekansige segue hier. 571 00:28:38,620 --> 00:28:42,820 Soos jy dalk weet van CS50 se lesing video's, het ons produksie span is 'n 572 00:28:42,820 --> 00:28:46,770 fan as ek van die neem van baie mooi fotografie van die kampus, en lug 573 00:28:46,770 --> 00:28:48,370 fotografie mees onlangs. 574 00:28:48,370 --> 00:28:51,450 As jy al ooit kyk en jy sien iets wat met 'n bietjie kamera, 575 00:28:51,450 --> 00:28:53,410 dit kan eintlik CS50. 576 00:28:53,410 --> 00:28:55,830 En ek het net gedink ek wil minuut van deel sommige van die beeldmateriaal van die span het 577 00:28:55,830 --> 00:28:59,450 versamel, veral as ons kyk na die lente semester en volgende val. 578 00:28:59,450 --> 00:29:03,320 Indien enige van julle het 'n aanleg vir fotografie, videografie, sou ons 579 00:29:03,320 --> 00:29:05,570 lief te kry jy betrokke agter die skerms. 580 00:29:05,570 --> 00:29:07,595 Maar meer op die besonderhede in 'n week. 581 00:29:07,595 --> 00:29:18,560 >> [MUSIEK] 582 00:29:18,560 --> 00:29:20,750 >> David J. Malan Turns out is daar 'n miniatuur gholfbaan op die top van 583 00:29:20,750 --> 00:29:22,754 die stadion dat ons nooit geweet het. 584 00:29:22,754 --> 00:30:06,150 >> [MUSIEK] 585 00:30:06,150 --> 00:30:08,440 >> David J. MALAN: Jy kan sien die uiteensetting van die dreun daar. 586 00:30:08,440 --> 00:30:24,160 >> [MUSIEK] 587 00:30:24,160 --> 00:30:26,280 >> David J. MALAN: Die beste deel hier is, kyk na die drawwer op die linkerkant. 588 00:30:26,280 --> 00:30:52,900 >> [MUSIEK] 589 00:30:52,900 --> 00:30:56,920 >> David J. MALAN: Nog 'n voorbeeld van wat wat jy kan doen met die tegnologie wat 590 00:30:56,920 --> 00:30:58,900 net tangensiaal, eerlik, verband hou met sekuriteit. 591 00:30:58,900 --> 00:31:01,710 Maar ek het gedink dit sou 'n meer prettige manier om net te sê, sekuriteit. 592 00:31:01,710 --> 00:31:07,780 So laat ons kyk of ons kan nie bang nie ouens nou met nie net 'n bietjie van 'n paar 593 00:31:07,780 --> 00:31:10,590 dreigemente, maar ook 'n onderliggende begrip van wat hierdie bedreigings 594 00:31:10,590 --> 00:31:13,830 word sodat vorentoe beweeg jy kan besluit hoe en of te verdedig 595 00:31:13,830 --> 00:31:17,290 jouself teen hierdie dinge, en op minste te wees bewus van hulle as wat jy 596 00:31:17,290 --> 00:31:20,530 besluite te neem as om te bepaal of te stuur dat die e-pos, of nie aan te meld 597 00:31:20,530 --> 00:31:24,920 in die webwerf, of om nie te gebruik dat kuber-kafee se Wi-Fi toegang 598 00:31:24,920 --> 00:31:28,210 punt so dat jy weet wat die bedreigings is inderdaad rondom jou. 599 00:31:28,210 --> 00:31:30,990 >> So Jonathan verwys na iets soos hierdie op Maandag. 600 00:31:30,990 --> 00:31:32,220 Hy het 'n venster skerm geskiet. 601 00:31:32,220 --> 00:31:33,630 Hierdie een is van 'n Mac. 602 00:31:33,630 --> 00:31:36,850 Hoeveel van julle het al ooit geïnstalleer sagteware op jou Mac of PC? 603 00:31:36,850 --> 00:31:38,420 Dit is duidelik dat almal. 604 00:31:38,420 --> 00:31:41,590 Hoeveel van julle gegee het veel gedink te tik in jou wagwoord 605 00:31:41,590 --> 00:31:43,030 wanneer dit gevra word? 606 00:31:43,030 --> 00:31:44,740 Ek meen, selfs ek dit nie doen nie, eerlik. 607 00:31:44,740 --> 00:31:48,730 So 'n paar van ons is goed by paranoïes. 608 00:31:48,730 --> 00:31:50,490 Maar kyk wat jy eintlik hier. 609 00:31:50,490 --> 00:31:53,280 >> Op 'n tipiese Mac of PC wat jy het 'n administrateur rekening. 610 00:31:53,280 --> 00:31:56,450 En tipies jy is die enigste een wat gebruik maak 'n skootrekenaar ten minste hierdie dae. 611 00:31:56,450 --> 00:31:59,780 So jou rekening, Malan of JHarvard of wat dit ookal is, is die 612 00:31:59,780 --> 00:32:00,830 administrateur rekening. 613 00:32:00,830 --> 00:32:03,530 En wat dit beteken is dat jy het wortel-toegang tot jou rekenaar. 614 00:32:03,530 --> 00:32:06,180 Jy kan installeer enigiets wat jy wil, verwyder enigiets wat jy wil. 615 00:32:06,180 --> 00:32:10,800 >> En tipies hierdie dae, as gevolg van gedateer ontwerp besluite van jare gelede, 616 00:32:10,800 --> 00:32:14,560 die manier waarop die meeste sagteware word geïnstalleer is as 'n administrateur. 617 00:32:14,560 --> 00:32:18,180 En selfs as jou Mac of PC het ten minste gekry het slim genoeg om oor die 618 00:32:18,180 --> 00:32:22,010 jaar met die nuutste inkarnasies van Mac OS en Windows te hardloop nie jou 619 00:32:22,010 --> 00:32:26,130 gebruikersnaam by verstek as die administrateur, wanneer jy dit aflaai paar 620 00:32:26,130 --> 00:32:29,160 nuwe program van die internet af en probeer om te dit installeer, gaan jy waarskynlik 621 00:32:29,160 --> 00:32:30,880 word gevra om jou wagwoord. 622 00:32:30,880 --> 00:32:34,790 Maar die catch is op daardie punt, is jy letterlik oorhandig die sleutels van jou 623 00:32:34,790 --> 00:32:38,620 rekenaar oor te wat lukraak program wat jy net afgelaai en 624 00:32:38,620 --> 00:32:41,590 toelaat om dit te installeer wat dit wil hê. 625 00:32:41,590 --> 00:32:45,050 >> En as Jonathan verwys om te besef dat dit dalk sê dat dit wil 626 00:32:45,050 --> 00:32:49,350 installasie van die sagteware wat jy omgee oor, Spotify of iTunes of wat ook al 627 00:32:49,350 --> 00:32:50,900 dit is wat jy probeer om te installeer. 628 00:32:50,900 --> 00:32:54,710 Maar jy letterlik die vertroue van die skrywer of skrywers van die sagteware te 629 00:32:54,710 --> 00:32:57,570 net doen wat die program veronderstel is om te doen nie. 630 00:32:57,570 --> 00:33:02,320 >> Maar daar is absoluut niks nie stop die meeste programme op die meeste 631 00:33:02,320 --> 00:33:06,910 die bedryfstelsel van die verwydering van lêers, van die oplaai om hulle tot 'n maatskappy se 632 00:33:06,910 --> 00:33:10,040 webwerf, van sleep rondom, vir versleutelen dinge. 633 00:33:10,040 --> 00:33:12,970 En weer, het soort van ons gebou 'n hele infrastruktuur oor 634 00:33:12,970 --> 00:33:14,930 die jaar op vertroue. 635 00:33:14,930 --> 00:33:18,690 En so besef dat jy het nou net vertrou ewekansige mense en random 636 00:33:18,690 --> 00:33:20,050 maatskappye vir die grootste deel. 637 00:33:20,050 --> 00:33:24,860 >> En Jonathan na verwys ook soms die maatskappye self is soort van 638 00:33:24,860 --> 00:33:26,410 willens en wetens kwaadwillige, alles reg? 639 00:33:26,410 --> 00:33:30,200 Sony gevang 'n baie Flack 'n paar jaar gelede vir die installering van dit wat was bekend as 'n 640 00:33:30,200 --> 00:33:33,220 rootkit kit op mense se rekenaars sonder hul kennis. 641 00:33:33,220 --> 00:33:36,570 En die kern van hierdie is dat wanneer jy 'n CD gekoop byvoorbeeld dat hulle 642 00:33:36,570 --> 00:33:40,050 nie wil hê jy moet in staat wees om te kopieer of rip die musiek af van die CD sou 643 00:33:40,050 --> 00:33:42,600 installeer, sonder jou wete, 'n rootkit op jou rekenaar. 644 00:33:42,600 --> 00:33:46,020 Rootkit net beteken sagteware wat loop as administrateur wat potensieel 645 00:33:46,020 --> 00:33:47,260 doen slegte dinge. 646 00:33:47,260 --> 00:33:50,780 >> Maar onder die dinge wat hierdie ding gedoen het, was dit weggesteek self. 647 00:33:50,780 --> 00:33:53,660 So 'n paar van julle sal wees redelik vaardig met jou rekenaar en weet, wel, ek 648 00:33:53,660 --> 00:33:57,310 kan net oop die Task Manager of die Aktiwiteit Monitor en ek kan kyk na al 649 00:33:57,310 --> 00:33:59,150 van die arcanely vernoem programme wat loop. 650 00:33:59,150 --> 00:34:01,760 En as daar iets verdag lyk Ek sal net dood te maak of dit verwyder. 651 00:34:01,760 --> 00:34:02,980 Maar dit is wat die rootkit het. 652 00:34:02,980 --> 00:34:07,070 Dit in wese gesê, indien hulle loop Taak Bestuurder, wys nie jouself. 653 00:34:07,070 --> 00:34:08,500 >> So het die sagteware was daar. 654 00:34:08,500 --> 00:34:12,710 En net as jy regtig, regtig gekyk hard jy kan selfs dit vind. 655 00:34:12,710 --> 00:34:15,670 En dit is gedoen in die naam van kopie beskerming. 656 00:34:15,670 --> 00:34:18,230 Maar dink net wat kan is anders gedoen. 657 00:34:18,230 --> 00:34:19,699 >> Nou in terme van die beskerming van jouself. 658 00:34:19,699 --> 00:34:22,190 Daar is baie van die webtuistes is wonderlik genadig in dat hulle hierdie 659 00:34:22,190 --> 00:34:26,480 slot ikone op hul tuisblad, wat beteken dat die webwerf is veilig. 660 00:34:26,480 --> 00:34:28,870 Dit is van bankofamerica.com vanoggend. 661 00:34:28,870 --> 00:34:32,239 So, wat beteken dat daar min slot-ikoon daar beteken langs die Sign In knoppie? 662 00:34:32,239 --> 00:34:35,699 663 00:34:35,699 --> 00:34:36,790 >> Absoluut niks nie. 664 00:34:36,790 --> 00:34:39,560 Dit beteken dat iemand wat weet hoe om te gebruik Photoshop 'n foto van 'n te maak 665 00:34:39,560 --> 00:34:40,590 slot-ikoon. 666 00:34:40,590 --> 00:34:44,449 Graag heel letterlik, die feit dat dit daar is bedoel om 'n positiewe 667 00:34:44,449 --> 00:34:46,880 sein aan die gebruiker soos, ooh, veilige webwerf. 668 00:34:46,880 --> 00:34:50,449 Ek moet hierdie webwerf vertrou en nou tik in my gebruikersnaam en wagwoord. 669 00:34:50,449 --> 00:34:53,870 En dit is konvensionele vir jaar, so onlangs as vanoggend. 670 00:34:53,870 --> 00:34:56,949 >> Maar kyk na die gewoontes wat hierdie is om ons in. 671 00:34:56,949 --> 00:35:00,600 Dink aan die implisiete boodskap dat alle van die banke in hierdie geval was 672 00:35:00,600 --> 00:35:01,830 stuur vir die jaar. 673 00:35:01,830 --> 00:35:05,160 As jy sien slot, dan verseker. 674 00:35:05,160 --> 00:35:05,340 Alle reg? 675 00:35:05,340 --> 00:35:10,520 >> So, hoe kan jy misbruik die stelsel van die trust as jy die slegte ou? 676 00:35:10,520 --> 00:35:14,100 Sit 'n slot op jou webwerf, en logies, het die gebruikers is 677 00:35:14,100 --> 00:35:17,260 gekondisioneer vir die jaar aan te neem slot beteken veilig. 678 00:35:17,260 --> 00:35:19,310 En dit kan eintlik veilig wees. 679 00:35:19,310 --> 00:35:24,810 Jy het dalk 'n wonderlike veilige SSL HTTPS verbinding met 'n 680 00:35:24,810 --> 00:35:26,452 vals webwerf. com. 681 00:35:26,452 --> 00:35:30,150 En niemand anders in die wêreld kan sien dat jy oor hom of haar te oorhandig 682 00:35:30,150 --> 00:35:32,790 jou gebruikersnaam en wagwoord tot jou rekening. 683 00:35:32,790 --> 00:35:35,110 >> Dit alhoewel, miskien, is 'n bietjie meer gerus te stel. 684 00:35:35,110 --> 00:35:38,600 So dit is 'n screen shot van die top van my leser vanoggend by 685 00:35:38,600 --> 00:35:39,910 bankofamerica.com. 686 00:35:39,910 --> 00:35:43,270 En hier sien ook ons het 'n slot-ikoon. 687 00:35:43,270 --> 00:35:48,040 Wat beteken dit in hierdie konteks in Chrome ten minste? 688 00:35:48,040 --> 00:35:49,520 >> So, dit is nou die gebruik van SSL. 689 00:35:49,520 --> 00:35:51,220 So dit is eintlik 'n beter ding. 690 00:35:51,220 --> 00:35:54,250 En die feit dat Chrome dit maak groen is bedoel om ons aandag te trek 691 00:35:54,250 --> 00:35:56,750 aan die feit dat dit ' nie net oor SSL. 692 00:35:56,750 --> 00:36:01,400 Dit is 'n maatskappy wat iemand uit daar geverifieer is eintlik 693 00:36:01,400 --> 00:36:02,520 bankofamerica.com. 694 00:36:02,520 --> 00:36:05,970 En dit beteken dat Bank van Amerika, wanneer die koop van hul sogenaamde SSL 695 00:36:05,970 --> 00:36:09,680 sertifikaat, hoofsaaklik groot willekeur, ietwat ewekansige getalle wat implementeer 696 00:36:09,680 --> 00:36:14,710 sekuriteit vir hulle, het hulle geverifieer word deur 'n onafhanklike derde 697 00:36:14,710 --> 00:36:15,570 party wat sê, yep. 698 00:36:15,570 --> 00:36:19,240 Dit is eintlik die hoof uitvoerende beampte van die Bank van Amerika probeer om die sertifikaat te koop. 699 00:36:19,240 --> 00:36:23,290 Chrome sal dus vertrou dat sertifisering gesag en sê in 700 00:36:23,290 --> 00:36:25,265 groen, dit is bankofamerica.com. 701 00:36:25,265 --> 00:36:27,997 En die Bank van Amerika betaal net 'n paar honderd dollar vir daardie of 'n paar 702 00:36:27,997 --> 00:36:30,800 duisend eerder as 'n paar dekades van dollars. 703 00:36:30,800 --> 00:36:34,940 >> Maar ook hier, hoeveel van julle het al ooit Gedra hulle enige verskillend omdat 704 00:36:34,940 --> 00:36:38,576 die URL in jou leser is groen in plaas van swart? 705 00:36:38,576 --> 00:36:39,900 Reg? 706 00:36:39,900 --> 00:36:40,600 So 'n paar van ons. 707 00:36:40,600 --> 00:36:42,115 En dit is goed om te wees paranoïes. 708 00:36:42,115 --> 00:36:45,910 Maar selfs dan, dié van julle wat nog sien hierdie dinge, het jy eintlik 709 00:36:45,910 --> 00:36:50,720 stop te meld by 'n andersins veilige webwerf as die URL is nie groen nie? 710 00:36:50,720 --> 00:36:53,380 Alle reg, so seker nie, reg? 711 00:36:53,380 --> 00:36:56,740 Ten minste die meeste van ons, as dit is nie groen nie, waarskynlik jy net gaan 712 00:36:56,740 --> 00:36:57,440 te wees, wat ook al. 713 00:36:57,440 --> 00:36:58,950 Wil, ek wil aan te meld in hierdie webwerf. 714 00:36:58,950 --> 00:37:00,200 Dit is waarom ek hier is. 715 00:37:00,200 --> 00:37:02,390 Ek gaan om aan te meld in nietemin. 716 00:37:02,390 --> 00:37:04,500 >> As 'n eenkant, Chrome is 'n bietjie beter hieroor. 717 00:37:04,500 --> 00:37:07,990 Maar daar is 'n baie blaaiers soos Firefox byvoorbeeld, ten minste vir 718 00:37:07,990 --> 00:37:12,190 'n geruime tyd, waar die slot-ikoon is, kan jy eintlik sit enige 719 00:37:12,190 --> 00:37:13,250 ikoon van jou eie. 720 00:37:13,250 --> 00:37:17,480 Laat my sien wat die nuutste weergawe van Firefox lyk. 721 00:37:17,480 --> 00:37:20,040 So as ons na CS50.net. 722 00:37:20,040 --> 00:37:21,580 >> OK, so hulle gekry het beter as well. 723 00:37:21,580 --> 00:37:24,970 Wat die gebruik implementeer om te doen, is hou nie, hier is byvoorbeeld [? SAAS is?] 724 00:37:24,970 --> 00:37:25,790 Crest hier. 725 00:37:25,790 --> 00:37:29,240 Dit is die sogenaamde gunsteling ikoon vir 'n webwerf. 726 00:37:29,240 --> 00:37:30,190 Jaar gelede - 727 00:37:30,190 --> 00:37:34,720 eintlik nie so lank gelede nie - dat daar min skild sou reg gewees het 728 00:37:34,720 --> 00:37:36,560 hier langs die URL. 729 00:37:36,560 --> 00:37:40,300 Omdat sommige genie besluit dat dit sou net mooi kyk aantreklike te hê 730 00:37:40,300 --> 00:37:43,150 jou grafiese logo reg langs jou URL. 731 00:37:43,150 --> 00:37:45,310 En ontwerp wys, wat eintlik is redelik oortuigend. 732 00:37:45,310 --> 00:37:47,240 >> So wat het slegte man begin doen? 733 00:37:47,240 --> 00:37:50,500 Hulle het begin om hul gunsteling ikone, of hul standaard ikoon vir 'n 734 00:37:50,500 --> 00:37:55,250 tuisblad om nie 'n wapen wees maar 'n slot, wat ' 735 00:37:55,250 --> 00:37:56,600 absoluut geen betekenis nie. 736 00:37:56,600 --> 00:37:59,760 Anders as hul gunsteling ikoon is 'n slot dit het geen 737 00:37:59,760 --> 00:38:01,250 aanduidings van sekuriteit. 738 00:38:01,250 --> 00:38:04,040 >> So het die lesse wat hier 'n paartjie wat ek dink. 739 00:38:04,040 --> 00:38:07,820 Een daarvan is dat daar eintlik 'n paar welmenende meganismes vir 740 00:38:07,820 --> 00:38:12,850 leer ons gebruikers oor die veiligheid selfs As jy was nie eens bewus wat groen 741 00:38:12,850 --> 00:38:15,110 bedoel of wat selfs HTTPS bedoel. 742 00:38:15,110 --> 00:38:19,130 Maar as daardie meganismes kry ons in die slegte gewoonte om te vertrou webwerwe 743 00:38:19,130 --> 00:38:23,390 wanneer ons sien die positiewe seine, Hulle is baie maklik misbruik soos ons gesien het 744 00:38:23,390 --> 00:38:26,480 net 'n oomblik gelede met iets dom soos hierdie. 745 00:38:26,480 --> 00:38:29,100 >> So sessie kaping kom in speel, as ons vantevore gesê het, 746 00:38:29,100 --> 00:38:30,510 met koekies byvoorbeeld. 747 00:38:30,510 --> 00:38:32,130 En wat dit eintlik beteken? 748 00:38:32,130 --> 00:38:35,930 Goed met sessie kaping dit is al oor die steel van iemand se koekies. 749 00:38:35,930 --> 00:38:39,860 So as ek oop Chrome hier vir byvoorbeeld, en ek maak die Inspekteur 750 00:38:39,860 --> 00:38:41,550 hier en ek gaan na die Netwerk Tab - 751 00:38:41,550 --> 00:38:42,830 en ons het dit gedoen voor - 752 00:38:42,830 --> 00:38:48,900 en ek gaan iets soos http://facebook.com betree, 'n hele 753 00:38:48,900 --> 00:38:52,280 n klomp van die dinge gaan oor die skerm as gevolg van al die beelde en CSS en 754 00:38:52,280 --> 00:38:53,490 JavaScript-lêers. 755 00:38:53,490 --> 00:38:59,420 >> Maar as ek kyk na hierdie een hier sien dat Facebook is inderdaad plant een 756 00:38:59,420 --> 00:39:02,310 of meer koekies op my leser hier. 757 00:39:02,310 --> 00:39:05,610 So dit is in wese die hand seëls wat my verteenwoordig. 758 00:39:05,610 --> 00:39:08,580 En nou hopelik my leser sal bied dit weer en weer wanneer 759 00:39:08,580 --> 00:39:10,560 herbesoek die webwerf. 760 00:39:10,560 --> 00:39:15,810 Maar dit is net veilig, ons het 'n n paar weke gelede, as jy met SSL. 761 00:39:15,810 --> 00:39:18,860 >> Maar selfs SSL self kan word die gedrang kom. 762 00:39:18,860 --> 00:39:21,800 Oorweeg nadat al die pad SSL werke. 763 00:39:21,800 --> 00:39:28,860 Wanneer jou leser verbind tot 'n afgeleë bediener via https://, 'n lang storie kort te maak, 764 00:39:28,860 --> 00:39:30,110 kriptografie is betrokke. 765 00:39:30,110 --> 00:39:34,750 Dit is nie so eenvoudig soos Caesar of Visionaire of selfs DES, DES van 'n 766 00:39:34,750 --> 00:39:36,110 rukkie terug in pset2. 767 00:39:36,110 --> 00:39:37,410 Dit is meer gesofistikeerd as dit. 768 00:39:37,410 --> 00:39:39,110 Dit is bekend as publieke sleutel kriptografie. 769 00:39:39,110 --> 00:39:42,845 Maar regtig groot en regtig ewekansige getalle word gebruik om te klouter 770 00:39:42,845 --> 00:39:47,125 inligting tussen punt A, jy, en punt B, soos facebook.com. 771 00:39:47,125 --> 00:39:52,570 >> Maar die probleem is, hoe baie van ons weer ooit soort in https:// te begin 772 00:39:52,570 --> 00:39:55,790 ons webwerf verbinding in die veilige modus? 773 00:39:55,790 --> 00:40:00,900 Ek bedoel, hoeveel van julle tipe http://facebook.com? 774 00:40:00,900 --> 00:40:02,290 Alle reg, as jy dit doen, wil, hallo. 775 00:40:02,290 --> 00:40:03,510 Jy hoef nie om dit te doen nie, reg? 776 00:40:03,510 --> 00:40:05,190 Die leser sal dit uitwerk. 777 00:40:05,190 --> 00:40:08,070 >> Maar die meeste van ons doen inderdaad tik net facebook.com. 778 00:40:08,070 --> 00:40:10,960 Want as ons 'n leser gebruik, word die bruisers gekry het slim genoeg om deur 779 00:40:10,960 --> 00:40:14,920 2013 aan te neem as jy met 'n leser, jy tik in 'n adres, moet jy 780 00:40:14,920 --> 00:40:18,550 waarskynlik wil hê om dit te bekom nie via e-pos of direkte boodskap. 781 00:40:18,550 --> 00:40:21,250 Jy bedoel HTTP en Port 80. 782 00:40:21,250 --> 00:40:22,970 Diegene ooreenkomste aangeneem. 783 00:40:22,970 --> 00:40:24,830 >> Maar hoe herleiding werk? 784 00:40:24,830 --> 00:40:26,170 Wel, let op wat hier gebeur. 785 00:40:26,170 --> 00:40:27,590 As ek gaan terug na Chrome - 786 00:40:27,590 --> 00:40:31,920 en laat ons doen dit in incognito af sodat almal van my 787 00:40:31,920 --> 00:40:33,620 koekies is weggegooi. 788 00:40:33,620 --> 00:40:38,130 En laat my hier gaan, weer, facebook.com. 789 00:40:38,130 --> 00:40:39,490 En laat ons sien wat gebeur. 790 00:40:39,490 --> 00:40:43,372 >> Onthou dat die eerste versoek was inderdaad net vir facebook.com. 791 00:40:43,372 --> 00:40:46,580 Maar wat was die reaksie wat ek gekry het? 792 00:40:46,580 --> 00:40:48,520 Dit was nie 'n 200 OK. 793 00:40:48,520 --> 00:40:53,550 Dit was 300, of 301, wat 'n lei my vertel om te gaan na 794 00:40:53,550 --> 00:40:59,050 http://www.facebook.com, wat waar Facebook wil my om te gaan. 795 00:40:59,050 --> 00:41:01,900 Maar dan as ons kyk na die volgende versoek, en ons het dit gesien nie, 796 00:41:01,900 --> 00:41:04,370 sien wat hul tweede reaksie is. 797 00:41:04,370 --> 00:41:10,280 Spesifiek wat hulle wil my nou te gaan na die SSL weergawe van Facebook. 798 00:41:10,280 --> 00:41:11,800 >> So hier is 'n geleentheid. 799 00:41:11,800 --> 00:41:15,440 Dit is 'n wonderlike en nuttige funksie van net die web en HTTP. 800 00:41:15,440 --> 00:41:19,570 As die eindgebruiker soos Facebook wil my om te bly op die veilige weergawe van hul 801 00:41:19,570 --> 00:41:20,850 webwerf, groot. 802 00:41:20,850 --> 00:41:23,130 Hulle sal lei my vir myself. 803 00:41:23,130 --> 00:41:25,250 En so ek het nie eens dink. 804 00:41:25,250 --> 00:41:29,200 >> Maar wat as tussen punt A en B, tussen jou en Facebook, daar is 'n paar 805 00:41:29,200 --> 00:41:32,220 slegte ou, daar is 'n paar stelsel administrateur by Harvard wat is nuuskierig 806 00:41:32,220 --> 00:41:34,240 om te sien wat jou vriende is. 807 00:41:34,240 --> 00:41:36,760 Of is daar 'n paar - 808 00:41:36,760 --> 00:41:38,340 jaar gelede, is hierdie gebruik te klink mal - 809 00:41:38,340 --> 00:41:41,950 maar daar is 'n paar regering entiteit soos die NSA wat eintlik belangstel 810 00:41:41,950 --> 00:41:44,390 in wie jy skeer op Facebook. 811 00:41:44,390 --> 00:41:45,910 Waar is die geleentheid daar? 812 00:41:45,910 --> 00:41:49,305 Wel, so lank as wat iemand het genoeg tegniese vaardig en hulle toegang 813 00:41:49,305 --> 00:41:53,350 om jou werklike netwerk oor Wi-Fi of 'n fisiese draad, 814 00:41:53,350 --> 00:41:54,570 Wat kan hulle doen? 815 00:41:54,570 --> 00:41:57,520 >> Wel, as hulle op dieselfde netwerk as jy en hulle weet iets oor 816 00:41:57,520 --> 00:42:02,050 TCP / IP en IP adresse en DNS en hoe al wat werk, wat as dit 817 00:42:02,050 --> 00:42:05,970 man in die middel, wat as dit Nasionale Security Agency, wat dit ook al 818 00:42:05,970 --> 00:42:11,480 mag wees, maar wat as daardie entiteit eenvoudig reageer vinniger as Facebook te 819 00:42:11,480 --> 00:42:15,820 jou HTTP versoek en sê: O ja, ek is Facebook. 820 00:42:15,820 --> 00:42:19,300 Gaan voort, en hier is die HTML vir facebook.com. 821 00:42:19,300 --> 00:42:20,720 >> Rekenaars is pretty darn vinnig. 822 00:42:20,720 --> 00:42:25,990 So kan jy 'n program skryf wat op 'n bediener soos nsa.gov dat wanneer dit 823 00:42:25,990 --> 00:42:29,790 hoor 'n versoek van u vir facebook.com, baie vinnig agter die 824 00:42:29,790 --> 00:42:34,000 tonele kry die werklike facebook.com maak 'n perfek [? esque?] veilige 825 00:42:34,000 --> 00:42:38,290 SSL-verbinding tussen die NSA en tussen Facebook, om daardie HTML baie 826 00:42:38,290 --> 00:42:42,670 veilig vir die aanteken bladsy, en dan die NSA bediener reageer net vir jou 827 00:42:42,670 --> 00:42:44,942 met 'n login bladsy vir facebook.com. 828 00:42:44,942 --> 00:42:49,120 >> Nou hoeveel van julle sou selfs kennisgewing dat jy met behulp van Facebook oor HTTP 829 00:42:49,120 --> 00:42:53,375 nog steeds op daardie punt, want jy het per ongeluk gekoppel aan nsa.gov en 830 00:42:53,375 --> 00:42:53,870 nie Facebook? 831 00:42:53,870 --> 00:42:54,980 Die URL's nie verander. 832 00:42:54,980 --> 00:42:57,040 Al hierdie dinge word gedoen agter die skerms. 833 00:42:57,040 --> 00:42:59,470 Maar die meeste van ons, myself ingesluit, sou waarskynlik nie agterkom 834 00:42:59,470 --> 00:43:00,800 so 'n klein detail. 835 00:43:00,800 --> 00:43:05,510 >> So kan jy dalk 'n volkome werkbare verband tussen jou en wat jy 836 00:43:05,510 --> 00:43:08,660 dink is Facebook, maar daar is 'n sogenaamde man in die middel. 837 00:43:08,660 --> 00:43:12,480 En dit is 'n algemene term vir die mens in die middel aanval waar jy 'n paar 838 00:43:12,480 --> 00:43:17,670 entiteit tussen jou en punt B wat een of ander manier te manipuleer, steel, of 839 00:43:17,670 --> 00:43:18,960 kyk na jou data. 840 00:43:18,960 --> 00:43:22,750 So selfs SSL is nie betroubaar nie, veral as jy is om die bos gelei in 841 00:43:22,750 --> 00:43:26,790 nie draai dit op as gevolg van hoe hierdie onderliggende meganismes eintlik werk. 842 00:43:26,790 --> 00:43:30,670 >> So 'n les vandag is dan ook as jy regtig wil wees paranoïes - 843 00:43:30,670 --> 00:43:32,110 en selfs hier is daar dreigemente - 844 00:43:32,110 --> 00:43:37,112 jy moet regtig begin om in die gewoonte om te tik in https://www 845 00:43:37,112 --> 00:43:39,850 watter domein naam wat jy eintlik omgee. 846 00:43:39,850 --> 00:43:41,820 >> En as 'n ter syde te daar is nog 'n bedreiging met 847 00:43:41,820 --> 00:43:43,410 betrekking tot sessie kaping. 848 00:43:43,410 --> 00:43:47,440 Baie dikwels wanneer jy die eerste keer na 'n webwerf soos facebook.com, tensy die 849 00:43:47,440 --> 00:43:51,050 bediener is ingestel om te sê dat dat die hand stempel sit dit op jou 850 00:43:51,050 --> 00:43:56,140 gister moet verseker word self, jou leser kan baie goed, op 851 00:43:56,140 --> 00:44:00,620 besoek dinge soos facebook.com google.com, twitter.com, die leser 852 00:44:00,620 --> 00:44:04,280 dalk word die aanbieding van die hand stempel net word geklap af en sê, nee. 853 00:44:04,280 --> 00:44:05,660 Gebruik SSL. 854 00:44:05,660 --> 00:44:07,030 >> Maar dit is te laat om by daardie punt. 855 00:44:07,030 --> 00:44:10,940 As jy reeds gestuur om jou hand stempel, jou koekie, in die helder met 856 00:44:10,940 --> 00:44:15,180 geen SSL, jy het 'n split sekonde kwesbaarheid waar iemand snuif 857 00:44:15,180 --> 00:44:19,530 jou verkeer, of kamermaat of NSA, kan gebruik dan dieselfde koekie, en 858 00:44:19,530 --> 00:44:23,860 met 'n bietjie van die tegniese vaardig, bied dit as sy of haar eie. 859 00:44:23,860 --> 00:44:25,930 >> Nog 'n aanval mag nie gedink het oor. 860 00:44:25,930 --> 00:44:30,120 Dit is regtig op jou as jy skroef hierdie up in die skryf van 'n webwerf wat 861 00:44:30,120 --> 00:44:31,580 een of ander manier gebruik SQL. 862 00:44:31,580 --> 00:44:34,610 So hier is, byvoorbeeld, is 'n skerm geskiet van Harvard se aanteken. 863 00:44:34,610 --> 00:44:36,380 En dit is 'n algemene voorbeeld van iets met 'n 864 00:44:36,380 --> 00:44:37,480 gebruikersnaam en wagwoord. 865 00:44:37,480 --> 00:44:38,440 Super algemeen. 866 00:44:38,440 --> 00:44:41,310 So laat ons aanvaar dat SSL bestaan ​​en daar is geen man in die middel-of 867 00:44:41,310 --> 00:44:41,920 iets soos dit. 868 00:44:41,920 --> 00:44:45,660 Nou is ons fokus op die bediener se kode wat jy kan skryf. 869 00:44:45,660 --> 00:44:49,830 >> Wel, as ek tik in 'n gebruikersnaam en wagwoord, veronderstel dat die PIN-diens 870 00:44:49,830 --> 00:44:51,740 geïmplementeer word in PHP. 871 00:44:51,740 --> 00:44:53,990 En jy kan 'n paar kode op die bediener soos hierdie. 872 00:44:53,990 --> 00:44:57,740 Kry die gebruiker naam van die post super globale en kry die wagwoord, en dan 873 00:44:57,740 --> 00:45:01,130 as hulle met behulp van 'n paar pset7 soos kode is daar 'n navraag funksie 874 00:45:01,130 --> 00:45:01,820 wat kan dit doen. 875 00:45:01,820 --> 00:45:06,320 Kies Star van die gebruikers waar gebruikersnaam gelyk dat wagwoord gelyk nie. 876 00:45:06,320 --> 00:45:08,120 >> Dit lyk met die eerste oogopslag, heeltemal redelike. 877 00:45:08,120 --> 00:45:11,090 Dit is sintakties geldige PHP-kode. 878 00:45:11,090 --> 00:45:13,160 Logies daar is niks verkeerd met hierdie. 879 00:45:13,160 --> 00:45:15,710 Vermoedelik is daar 'n paar meer lyne wat eintlik iets te doen met die 880 00:45:15,710 --> 00:45:18,150 gevolg dat kom terug uit die databasis. 881 00:45:18,150 --> 00:45:20,580 Maar dit is kwesbaar vir die volgende rede. 882 00:45:20,580 --> 00:45:23,760 >> Let daarop dat, soos 'n goeie burger, Ek het in aanhalings, enkele 883 00:45:23,760 --> 00:45:25,380 aanhalings, die gebruiker se naam. 884 00:45:25,380 --> 00:45:26,980 En ek het in 'n enkele aanhalings die wagwoord. 885 00:45:26,980 --> 00:45:28,830 En dit is 'n goeie ding, want hulle is nie veronderstel is om te wees nommers. 886 00:45:28,830 --> 00:45:30,660 Tipies hulle gaan wees teks. 887 00:45:30,660 --> 00:45:32,290 So ek haal hulle soos snare. 888 00:45:32,290 --> 00:45:37,470 >> En as ek nou verder wat as bevorder - en ek verwyder, die koeëls van die 889 00:45:37,470 --> 00:45:38,870 PIN-diens tydelik - 890 00:45:38,870 --> 00:45:41,650 Wat as ek probeer om aan te meld as President [? Scroob?] 891 00:45:41,650 --> 00:45:52,540 maar ek sê dat my wagwoord 12345 'OR '1' = '1, en kennis 892 00:45:52,540 --> 00:45:53,830 wat ek nie gedoen het nie. 893 00:45:53,830 --> 00:45:56,140 Ek het nie die ander enkele aanhaling. 894 00:45:56,140 --> 00:45:58,500 Want ek is mooi skerp hier as die slegte ou. 895 00:45:58,500 --> 00:46:01,870 En ek neem aan hulle is jy nie baie goed met jou 896 00:46:01,870 --> 00:46:03,450 PHP en MySQL-kode. 897 00:46:03,450 --> 00:46:06,740 Ek vermoed dat jy nie die kontrolering vir die teenwoordigheid van aanhalings. 898 00:46:06,740 --> 00:46:11,190 >> So, wat nou net gebeur het, is dat wanneer jou gebruiker getik het in daardie string, 899 00:46:11,190 --> 00:46:15,060 die navraag jy oor om te skep lyk. 900 00:46:15,060 --> 00:46:18,180 En 'n lang storie kort te maak, as jy en saam iets vir jou of iets 901 00:46:18,180 --> 00:46:21,740 saam dit gaan om terug te keer 'n ry van die databasis. 902 00:46:21,740 --> 00:46:26,570 Want dit is altyd die geval dat 1 is gelyk aan 1. 903 00:46:26,570 --> 00:46:30,400 >> En net omdat jy nie verwag dat jou gebruikers, goed of sleg, mag 904 00:46:30,400 --> 00:46:35,340 het 'n toespraak in hul naam wat jy het 'n SQL navraag wat nog 905 00:46:35,340 --> 00:46:39,040 geldig is, sal terugkeer en nou meer resultate as jy dalk bedoel het. 906 00:46:39,040 --> 00:46:42,340 En so het hierdie slegte man het nou potensieel aangemeld is jou bediener 907 00:46:42,340 --> 00:46:47,060 omdat jou databasis terugkeer 'n ry selfs al is hy of sy het geen idee wat 908 00:46:47,060 --> 00:46:49,410 [? Scroob se] werklike? Wagwoord is. 909 00:46:49,410 --> 00:46:50,640 >> Ag, het ek besef 'n tikfout hier. 910 00:46:50,640 --> 00:46:53,260 Ek moet sê het gelyk wagwoord 12345 soos die vorige 911 00:46:53,260 --> 00:46:54,990 voorbeeld of 1 is gelyk aan 1. 912 00:46:54,990 --> 00:46:56,400 Ek sal regmaak wat aanlyn. 913 00:46:56,400 --> 00:46:59,960 >> So hoekom het ons gebruik jy die navraag funksie met vraagtekens? 914 00:46:59,960 --> 00:47:04,000 Een van die dinge wat die navraag funksie nie vir jou is dit seker maak dat 915 00:47:04,000 --> 00:47:07,660 as jy slaag in argumente na die kommas hier soos hierdie dat die navraag 916 00:47:07,660 --> 00:47:10,330 dit is eintlik gestuur word aan die databasis lyk. 917 00:47:10,330 --> 00:47:13,830 Daar is baie minder mooi om na te kyk nie, maar terug houe is outomaties 918 00:47:13,830 --> 00:47:19,030 ingevoeg om presies dit te vermy inspuiting aanval dat ek het 'n 919 00:47:19,030 --> 00:47:20,270 oomblik gelede. 920 00:47:20,270 --> 00:47:24,930 >> Nou 'n prettige Kletskerk dat ek gedink ek wil trek hier wat hopelik behoort nou 'n 921 00:47:24,930 --> 00:47:28,546 bietjie meer verstaanbaar is hierdie een hier. 922 00:47:28,546 --> 00:47:39,460 923 00:47:39,460 --> 00:47:40,265 >> 'N bietjie? 924 00:47:40,265 --> 00:47:42,370 Miskien moet ons 'n bietjie meer bespreking op daardie. 925 00:47:42,370 --> 00:47:47,810 So dit verwys na 'n klein kind die naam Bobby wat een of ander manier geneem 926 00:47:47,810 --> 00:47:52,250 voordeel van 'n webwerf wat net vertrou dat dit wat die gebruiker getik 927 00:47:52,250 --> 00:47:55,100 in is nie, in werklikheid, SQL-kode, maar is in werklikheid 'n string. 928 00:47:55,100 --> 00:47:56,830 >> Nou kan jy onthou dat drop - 929 00:47:56,830 --> 00:48:00,190 Jy kan gesien het hierdie - drop middel verwyder 'n tafel, verwyder 'n databasis. 930 00:48:00,190 --> 00:48:02,235 So as jy in wese daarop aanspraak maak dat jou naam is Robert "; droptabl 931 00:48:02,235 --> 00:48:03,485 estudentsomething,] 932 00:48:03,485 --> 00:48:06,340 933 00:48:06,340 --> 00:48:09,370 jy kan baie goed mislei die databasis nie net in seker te maak dat jy 934 00:48:09,370 --> 00:48:13,530 inderdaad Robert, maar ook kommapunt voortgaan om die tafel te laat val. 935 00:48:13,530 --> 00:48:17,560 >> En so SQL-inspuiting aanvalle kan eintlik as 'n bedreiging, aangesien dit 936 00:48:17,560 --> 00:48:20,740 waardeur jy kan verwyder iemand se data, jy kan kies meer data wat as 937 00:48:20,740 --> 00:48:23,440 bedoel is, kan jy voeg of te verander data. 938 00:48:23,440 --> 00:48:26,520 En jy kan eintlik sien dit op te huis oefening, nie vir kwaadwillige 939 00:48:26,520 --> 00:48:29,730 doeleindes, maar net vir die onderrig, is enige tyd wat jy gevra om aan te meld 940 00:48:29,730 --> 00:48:35,180 in die webwerf, veral 'n soort van nie baie openbare, baie gewild webwerf, 941 00:48:35,180 --> 00:48:38,630 probeer om aan te meld as John O'Reilly of iemand met 'n 942 00:48:38,630 --> 00:48:39,740 afkappingsteken in hul naam. 943 00:48:39,740 --> 00:48:42,990 Of letterlik net tik toespraak, getref Gee, en kyk wat gebeur. 944 00:48:42,990 --> 00:48:47,990 >> En al te dikwels is tragies, mense het nie gesteriliseer hul insette en 945 00:48:47,990 --> 00:48:51,690 het seker gemaak dat dinge soos aanhalings of kommapunte oorgebly het. 946 00:48:51,690 --> 00:48:54,430 Wat is die rede waarom in pset7 ons gee jy hierdie navraag funksie. 947 00:48:54,430 --> 00:48:59,510 Maar nie onder waardeer presies wat dit vir jou doen. 948 00:48:59,510 --> 00:49:01,800 >> So met wat gesê het, geniet die gebruik van die web hierdie week. 949 00:49:01,800 --> 00:49:04,660 En ons sal sien dat jy op Maandag. 950 00:49:04,660 --> 00:49:06,180 >> By die volgende CD50. 951 00:49:06,180 --> 00:49:18,614 >> [MUSIEK]