1 00:00:00,000 --> 00:00:11,214 >> [MÚSICA] 2 00:00:11,214 --> 00:00:11,661 >> DAVID J. MALAN: Muy bien. 3 00:00:11,661 --> 00:00:15,400 Así que esto es CS50 y esto es el final de la semana 10. 4 00:00:15,400 --> 00:00:20,420 Así que algunos de ustedes han visto este ya, pero se distribuye en los últimos tiempos 5 00:00:20,420 --> 00:00:25,800 es un artículo que me pareció que había leído un extracto de y luego una muestra 6 00:00:25,800 --> 00:00:27,800 tres minutos de vídeo que las pinturas la misma imagen. 7 00:00:27,800 --> 00:00:30,950 Fue realmente una historia conmovedora, que pensamiento, de esta intersección de la 8 00:00:30,950 --> 00:00:35,210 mundo real con genuinamente convincente los usos de la tecnología. 9 00:00:35,210 --> 00:00:39,785 >> Así que el artículo se titulaba: "Un niño oversleeps en tren, utiliza Google Maps 10 00:00:39,785 --> 00:00:44,930 encontrar a la familia 25 años después. "Y el primeros dos párrafos eran, 11 00:00:44,930 --> 00:00:48,820 "Cuando Saroo tenía cinco años fue con su hermano mayor que mendigar para 12 00:00:48,820 --> 00:00:51,830 cambiar a un tren de pasajeros en un pueblo cerca de dos horas 13 00:00:51,830 --> 00:00:53,510 de su pequeña ciudad natal. 14 00:00:53,510 --> 00:00:56,790 Saroo se cansó y se metió en un tren cercana donde él pensaba que su 15 00:00:56,790 --> 00:00:58,880 hermano, se quedó dormido. 16 00:00:58,880 --> 00:01:03,360 Cuando despertó estaba en Calcuta, cerca de 900 kilómetros de distancia. 17 00:01:03,360 --> 00:01:05,770 Saroo trató de encontrar su camino atrás, pero que no sabía 18 00:01:05,770 --> 00:01:07,260 el nombre de su ciudad natal. 19 00:01:07,260 --> 00:01:11,430 Y como un pequeño muchacho analfabeto en un vasto ciudad llena de niños olvidados que tenía 20 00:01:11,430 --> 00:01:13,520 prácticamente ninguna posibilidad de llegar a casa. 21 00:01:13,520 --> 00:01:16,760 >> Él era un niño de la calle por un tiempo hasta una agencia de adopción a nivel local conectado 22 00:01:16,760 --> 00:01:18,840 él con una pareja australiana que lo llevó a 23 00:01:18,840 --> 00:01:20,600 vivir en Hobart, Tasmania. 24 00:01:20,600 --> 00:01:23,130 Saroo se trasladó allí, se enteró Inglés, y creció. 25 00:01:23,130 --> 00:01:27,450 Pero nunca dejó de buscar su familia y su ciudad natal. 26 00:01:27,450 --> 00:01:32,380 >> Décadas más tarde, descubrió Google Tierra y siguió las vías del tren. 27 00:01:32,380 --> 00:01:36,140 Y dándose un radio determinado basado en el tiempo que él pensaba que era 28 00:01:36,140 --> 00:01:40,020 dormido y la rapidez con que pensaba que el tren que estaba pasando, él sabía que había crecido 29 00:01:40,020 --> 00:01:43,930 en un clima cálido, sabía que hablaba Hindi como un niño, y él le habían dicho 30 00:01:43,930 --> 00:01:46,160 que parecía que era de las Indias Orientales. 31 00:01:46,160 --> 00:01:49,650 >> Finalmente, después de años de fregar las fotos satelitales, él 32 00:01:49,650 --> 00:01:51,340 reconocido algunos hitos. 33 00:01:51,340 --> 00:01:54,180 Y después de charlar con un administrador de un pueblo cercano de 34 00:01:54,180 --> 00:01:57,740 Página de Facebook, se dio cuenta que había encontrado en casa ". 35 00:01:57,740 --> 00:02:03,770 >> Así que aquí es, entonces, la narración de vídeo esa historia desde su perspectiva. 36 00:02:03,770 --> 00:02:04,025 >> [REPRODUCCIÓN DE VÍDEO] 37 00:02:04,025 --> 00:02:07,480 >> -Fue hace 26 años y yo estaba a punto de cumplir cinco años. 38 00:02:07,480 --> 00:02:10,539 Llegamos a la estación de tren y abordamos un tren juntos. 39 00:02:10,539 --> 00:02:13,390 Mi hermano acaba de decir me quedo aquí y voy a volver. 40 00:02:13,390 --> 00:02:16,363 Y pensé, bueno, ya sabes, puede ser que también acaba de ir a dormir y 41 00:02:16,363 --> 00:02:17,950 entonces él me va a despertar. 42 00:02:17,950 --> 00:02:21,740 Y cuando me despierto al día siguiente, el conjunto de carro estaba vacío el fugitivo 43 00:02:21,740 --> 00:02:24,305 tren, un tren fantasma toma yo no sé dónde. 44 00:02:24,305 --> 00:02:27,120 45 00:02:27,120 --> 00:02:31,660 >> Yo fui adoptado a Australia a una familia australiana. 46 00:02:31,660 --> 00:02:35,360 Y mamá había decorado mi habitación con el mapa de la India, que se 47 00:02:35,360 --> 00:02:37,090 poner al lado de mi cama. 48 00:02:37,090 --> 00:02:42,170 Me despertaba cada mañana viendo ese mapa, y por lo tanto, de alguna manera mantuvo la 49 00:02:42,170 --> 00:02:43,740 recuerdos vivos. 50 00:02:43,740 --> 00:02:46,475 >> La gente diría, que está tratando de encontrar una aguja en un pajar. 51 00:02:46,475 --> 00:02:49,060 Saroo, nunca lo encontrarás. 52 00:02:49,060 --> 00:02:52,510 Tendría destellos de los lugares que Yo solía ir, los flashes 53 00:02:52,510 --> 00:02:55,050 de las caras de mi familia. 54 00:02:55,050 --> 00:02:59,200 Allí estaba la imagen de mi madre sentada abajo con las piernas cruzadas 55 00:02:59,200 --> 00:03:00,610 sólo viendo llorar. 56 00:03:00,610 --> 00:03:03,340 La vida es tan difícil. 57 00:03:03,340 --> 00:03:06,002 Ese era mi tesoro. 58 00:03:06,002 --> 00:03:09,390 >> Y yo estaba buscando en Google Map y dado cuenta de que hay Google Earth. 59 00:03:09,390 --> 00:03:13,560 En un mundo donde se puede hacer zoom en I comenzó a tener todos estos pensamientos y 60 00:03:13,560 --> 00:03:16,650 qué posibilidades de que esto podría hacer por mí. 61 00:03:16,650 --> 00:03:19,520 Me dije, bueno, ya sabes, tienes toda la fotográfico 62 00:03:19,520 --> 00:03:22,340 recuerdos y lugares donde usted está desde y usted sabe lo que 63 00:03:22,340 --> 00:03:23,460 la ciudad se parece. 64 00:03:23,460 --> 00:03:27,910 Esto podría ser una aplicación que puede utilizar para encontrar el camino de vuelta. 65 00:03:27,910 --> 00:03:32,750 >> Pensé, bueno, voy a poner un punto en La estación de tren de Calcuta en un radio de 66 00:03:32,750 --> 00:03:36,350 línea que debe ser la búsqueda alrededor de esta área. 67 00:03:36,350 --> 00:03:38,850 Me encontré con estas vías del tren. 68 00:03:38,850 --> 00:03:44,490 Y empecé a seguir y me vine a una estación de tren, lo que refleja la 69 00:03:44,490 --> 00:03:48,260 misma imagen que había en mis recuerdos. 70 00:03:48,260 --> 00:03:49,730 >> Todo igualado. 71 00:03:49,730 --> 00:03:50,800 Sólo pensé, sí. 72 00:03:50,800 --> 00:03:51,545 Yo sé a dónde voy. 73 00:03:51,545 --> 00:03:55,387 Yo sólo voy a dejar el mapa que tener en mi cabeza que me guíe y me lleve 74 00:03:55,387 --> 00:03:58,230 De vuelta a mi ciudad natal. 75 00:03:58,230 --> 00:04:02,290 >> Llegué a la puerta de la casa que yo nací y caminé alrededor 76 00:04:02,290 --> 00:04:04,270 unos quince metros vuelta de la esquina. 77 00:04:04,270 --> 00:04:08,140 Había tres mujeres de pie fuera adyacentes entre sí. 78 00:04:08,140 --> 00:04:10,230 Y el del medio se adelantó. 79 00:04:10,230 --> 00:04:12,910 Y pensé, esto es su madre. 80 00:04:12,910 --> 00:04:18,590 Ella se acercó, me abrazó, y nos Estuvimos allí por unos cinco minutos. 81 00:04:18,590 --> 00:04:21,670 82 00:04:21,670 --> 00:04:25,787 >> Ella me agarró la mano y me llevó a la casa y se puso al teléfono y ella 83 00:04:25,787 --> 00:04:31,110 llamó a mi hermana ya mi hermano para decir que tu hermano tiene sólo toda la 84 00:04:31,110 --> 00:04:34,480 repente apareció como un fantasma. 85 00:04:34,480 --> 00:04:37,590 >> Y entonces la familia era reunirse de nuevo. 86 00:04:37,590 --> 00:04:38,570 Todo está bien. 87 00:04:38,570 --> 00:04:40,250 Ayudo a mi madre. 88 00:04:40,250 --> 00:04:42,240 Ella no tiene que estar trabajando como un burro. 89 00:04:42,240 --> 00:04:45,040 Ella puede llevar el resto de su vida en paz. 90 00:04:45,040 --> 00:04:48,590 >> Era una aguja en un pajar, pero la aguja estaba allí. 91 00:04:48,590 --> 00:04:49,530 Todo está ahí. 92 00:04:49,530 --> 00:04:53,410 Todo lo que tenemos en el mundo es el toque de un botón. 93 00:04:53,410 --> 00:04:57,375 Pero usted tiene que tener la voluntad y la la determinación de quererlo. 94 00:04:57,375 --> 00:05:02,310 95 00:05:02,310 --> 00:05:02,780 >> [VIDEO PLAYBACK FIN] 96 00:05:02,780 --> 00:05:04,220 >> Así que una historia muy dulce. 97 00:05:04,220 --> 00:05:08,430 Y lo que realmente me recuerda a un buen tema que ha estado recibiendo un poco 98 00:05:08,430 --> 00:05:11,200 de atención en los últimos tiempos en The Crimson, más a nivel nacional en general. 99 00:05:11,200 --> 00:05:13,620 Sobre todo porque MOOCs están tomando la etapa de la tarde. 100 00:05:13,620 --> 00:05:17,370 MOOCs siendo estos masiva y abierta cursos en línea de los cuales CS50 es uno. 101 00:05:17,370 --> 00:05:20,680 >> Y la gente habla de cómo, por ejemplo, las humanidades no son realmente 102 00:05:20,680 --> 00:05:23,900 ponerse al día o no lo sean tan en boga como lo eran antes. 103 00:05:23,900 --> 00:05:26,680 Y les animo chicos, mucho como Jonathan hizo el lunes para pensar 104 00:05:26,680 --> 00:05:29,900 acerca al salir 50, y sabemos ya cerca del 50% de los que no lo harás 105 00:05:29,900 --> 00:05:32,480 continuar hasta tomar otro equipo curso de ciencia, y eso es totalmente 106 00:05:32,480 --> 00:05:33,770 fina y esperado. 107 00:05:33,770 --> 00:05:36,620 Debido a que uno de los objetivos generales de una clase como esta es realmente 108 00:05:36,620 --> 00:05:39,790 empoderar a ustedes con sólo una comprensión de cómo todas estas cosas 109 00:05:39,790 --> 00:05:41,760 obras y cómo este mundo del funcionamiento de la tecnología. 110 00:05:41,760 --> 00:05:45,400 >> Así que cuando usted está de vuelta en su propio mundos, ya sea de pre-medicina o 111 00:05:45,400 --> 00:05:48,270 si se trata de las humanidades o la ciencias sociales o algún otro campo 112 00:05:48,270 --> 00:05:51,830 en total, que ustedes están trayendo algunos conocimientos técnicos a la mesa y 113 00:05:51,830 --> 00:05:54,770 ayudando a tomar decisiones inteligentes cuando se trata de la utilización de y 114 00:05:54,770 --> 00:05:57,530 introducción de la tecnología en su mundo. 115 00:05:57,530 --> 00:06:00,410 >> Por ejemplo me acordé de tarde también de dos de la licenciatura 116 00:06:00,410 --> 00:06:04,410 clases que tomé hace dos años, que eran tales usos simples de tecnología 117 00:06:04,410 --> 00:06:06,180 pero nunca tan convincente. 118 00:06:06,180 --> 00:06:08,845 Las primeras noches con el profesor Tom Kelly si usted ha tomado la clase. 119 00:06:08,845 --> 00:06:11,640 Es una clase de música clásica en esta etapa aquí, donde se aprende 120 00:06:11,640 --> 00:06:13,190 algo acerca de la música. 121 00:06:13,190 --> 00:06:17,770 En realidad primeras noches que CS50 prestada la idea de pistas para los 122 00:06:17,770 --> 00:06:20,630 menos cómodo en entre y más cómodo. 123 00:06:20,630 --> 00:06:24,410 >> En mi tiempo tenían diferentes pistas para los niños con absolutamente ninguna música 124 00:06:24,410 --> 00:06:27,300 experimentar como yo, y entonces los niños que había estado llevando a cabo desde que eran 125 00:06:27,300 --> 00:06:28,240 cinco años de edad. 126 00:06:28,240 --> 00:06:31,200 Y esa clase, por ejemplo, sólo tenía un sitio web como la mayoría de cualquier otro, pero 127 00:06:31,200 --> 00:06:34,210 era un sitio web que permite a los explorar la música en él y reproducir 128 00:06:34,210 --> 00:06:39,120 clips musicales de clase, desde la web, y sólo tiene que utilizar la tecnología de una manera muy 129 00:06:39,120 --> 00:06:40,210 forma perfecta. 130 00:06:40,210 --> 00:06:44,460 >> Otro año de clases después que me auditado, esencialmente, en la escuela de posgrado, 131 00:06:44,460 --> 00:06:47,430 Anthro 1010, Introducción a la Arqueología aquí. 132 00:06:47,430 --> 00:06:48,190 Fue increíble. 133 00:06:48,190 --> 00:06:52,715 Y uno de los súper más convincente hasta ahora obvio, en retrospectiva, los usos de los 134 00:06:52,715 --> 00:06:56,000 software es que los profesores en esa clase utiliza Google Earth. 135 00:06:56,000 --> 00:06:58,250 Estábamos sentados en la calle en alguna sala de conferencias. 136 00:06:58,250 --> 00:07:01,240 Y usted no puede viajar, por ejemplo, a Oriente Medio a la excavación que uno 137 00:07:01,240 --> 00:07:04,530 de los profesores sólo habían venido de nuevo, pero podríamos hacerlo prácticamente por 138 00:07:04,530 --> 00:07:07,870 volando en Google Earth y busca a ver a vista de pájaro en el 139 00:07:07,870 --> 00:07:10,360 excavar el sitio que acababa de regresar desde hace una semana. 140 00:07:10,360 --> 00:07:12,630 >> Así que les animo chicos, especialmente en las humanidades, para ir 141 00:07:12,630 --> 00:07:16,260 respaldar a los citados departamentos después de esta clase con lo que sus proyectos finales 142 00:07:16,260 --> 00:07:19,960 con usted o con sus propias ideas, y ver justo lo que usted puede hacer para infundir su 143 00:07:19,960 --> 00:07:23,570 propios campos de las humanidades o más allá con un poco de este tipo de 144 00:07:23,570 --> 00:07:26,770 cosa que hemos explorado aquí en CS50. 145 00:07:26,770 --> 00:07:31,790 >> Así que con ese cuadro pintado, pensamiento nos gustaría probar para hacer frente a dos cosas hoy. 146 00:07:31,790 --> 00:07:35,040 Uno de ellos, tratar de darle un sentido de donde se puede ir después de los 50. 147 00:07:35,040 --> 00:07:37,950 Y, en particular, si decide abordar un proyecto basado en la web como es 148 00:07:37,950 --> 00:07:42,580 muy común, ¿cómo se puede ir en quitarse todas CS50 de 149 00:07:42,580 --> 00:07:45,810 ruedas de entrenamiento e ir por ahí en su propio y no tener que depender de un 150 00:07:45,810 --> 00:07:48,000 PDF o una especificación de un conjunto de procesadores? 151 00:07:48,000 --> 00:07:50,510 No tener que depender de un CS50 electrodoméstico más. 152 00:07:50,510 --> 00:07:52,780 Pero realmente puede tirarse por sus propios esfuerzos. 153 00:07:52,780 --> 00:07:55,790 >> Con eso dicho, final basada-C proyectos son bienvenidos. 154 00:07:55,790 --> 00:07:58,020 Cosas que utilizan el soporte para una biblioteca portátil en 155 00:07:58,020 --> 00:07:59,510 los gráficos son bienvenidos. 156 00:07:59,510 --> 00:08:03,240 Sólo sabemos que estadísticamente mucho personas muerden proyectos en PHP y 157 00:08:03,240 --> 00:08:07,860 Python y Ruby y MySQL y otros ambientes, por lo que vamos sesgo algunos de 158 00:08:07,860 --> 00:08:09,570 nuestras observaciones en esa dirección. 159 00:08:09,570 --> 00:08:10,650 >> Pero una mirada rápida hacia atrás. 160 00:08:10,650 --> 00:08:15,940 Así que tomamos por sentado en la pset7 hecho de que existía $ _SESSION. 161 00:08:15,940 --> 00:08:19,400 Esta era una superpotencia mundial, a escala mundial, matriz asociativa. 162 00:08:19,400 --> 00:08:23,040 ¿Y qué tiene esto te deja hacer? 163 00:08:23,040 --> 00:08:27,130 Funcionalmente, ¿cuál es el protagoniza esta nos da? 164 00:08:27,130 --> 00:08:28,590 ¿Sí? 165 00:08:28,590 --> 00:08:30,270 Para realizar un seguimiento de ID del usuario. 166 00:08:30,270 --> 00:08:31,660 ¿Y por qué es esto útil? 167 00:08:31,660 --> 00:08:36,059 Para ser capaz de almacenar en el interior de este super mundial JHarvard o [? Scroobs?] 168 00:08:36,059 --> 00:08:41,880 o ID de usuario de Malan cuando o ella visita un sitio. 169 00:08:41,880 --> 00:08:42,380 >> Exactamente. 170 00:08:42,380 --> 00:08:44,049 Así que usted no tiene que iniciar sesión en una y otra vez. 171 00:08:44,049 --> 00:08:47,170 Sería un muy escaso World Wide Web si cada vez que ha hecho clic en un enlace 172 00:08:47,170 --> 00:08:50,780 en un sitio como Facebook o cada vez ha hecho clic en un correo electrónico en Gmail que 173 00:08:50,780 --> 00:08:54,060 tuvo que volver a autenticarse para demostrar que aún así es usted y no su compañero de cuarto 174 00:08:54,060 --> 00:08:56,700 que podría haber caminado hasta su computadora en su ausencia. 175 00:08:56,700 --> 00:08:59,640 >> Así que usamos SESIÓN sólo Recuerda quién eres. 176 00:08:59,640 --> 00:09:01,830 ¿Y cómo se implementa debajo de la capucha? 177 00:09:01,830 --> 00:09:07,720 ¿Cómo funciona un sitio web que utiliza, el protocolo que los navegadores web y servidores 178 00:09:07,720 --> 00:09:12,060 hablar, ¿cómo no HTTP, que es un protocolo sin estado, digamos. 179 00:09:12,060 --> 00:09:15,510 >> Y por apátridas que quiero decir, una vez que conectarse a una página web, descargar algunos 180 00:09:15,510 --> 00:09:19,650 HTMLs, algo de JavaScript, un poco de CSS, su el icono del navegador deja de girar. 181 00:09:19,650 --> 00:09:23,420 Usted no tiene una conexión constante al servidor normalmente. 182 00:09:23,420 --> 00:09:24,170 Eso es todo. 183 00:09:24,170 --> 00:09:26,290 No hay estado mantenido constantemente. 184 00:09:26,290 --> 00:09:30,510 Entonces, ¿cómo se aplica en tales SESIÓN de manera que cada vez que usted visita un 185 00:09:30,510 --> 00:09:32,860 nueva página, el sitio recuerda quién es usted? 186 00:09:32,860 --> 00:09:36,150 187 00:09:36,150 --> 00:09:38,195 ¿Cuál es la implementación subyacente detalle? 188 00:09:38,195 --> 00:09:40,810 189 00:09:40,810 --> 00:09:41,490 Grito hacia fuera. 190 00:09:41,490 --> 00:09:43,270 Es una palabra. 191 00:09:43,270 --> 00:09:43,640 >> Cookies. 192 00:09:43,640 --> 00:09:44,190 Está bien. 193 00:09:44,190 --> 00:09:44,800 Así cookies. 194 00:09:44,800 --> 00:09:45,900 Bueno, ¿cómo se utilizan las cookies? 195 00:09:45,900 --> 00:09:48,870 Vamos a recordar que una cookie es generalmente sólo un pedazo de información. 196 00:09:48,870 --> 00:09:51,590 Y a menudo es un gran azar número, pero no siempre. 197 00:09:51,590 --> 00:09:55,420 Y una cookie se planta en su disco conducir o en la memoria RAM de su computadora para 198 00:09:55,420 --> 00:09:59,070 que cada vez que vuelva a visitar ese mismo sitio web, su navegador recuerda al 199 00:09:59,070 --> 00:10:01,650 servidor, yo soy usuario de 1.234.567. 200 00:10:01,650 --> 00:10:03,570 Soy usuario 1234567. 201 00:10:03,570 --> 00:10:07,590 >> Y mientras el servidor se ha acordado ese usuario es 1234567 202 00:10:07,590 --> 00:10:11,300 JHarvard, el sitio será simplemente asumir que usted es quien dice ser. 203 00:10:11,300 --> 00:10:14,230 Y recordamos que presentamos estas cookies especie de en la forma de un 204 00:10:14,230 --> 00:10:15,510 soporte de la mano virtual. 205 00:10:15,510 --> 00:10:20,530 Se envía en los encabezados HTTP sólo para recordar al servidor que usted es quién 206 00:10:20,530 --> 00:10:21,620 piensa que usted es. 207 00:10:21,620 --> 00:10:23,320 >> Por supuesto, no es una amenaza. 208 00:10:23,320 --> 00:10:27,530 ¿Qué amenaza Qué nos abra a si esencialmente estamos usando una especie de club de 209 00:10:27,530 --> 00:10:30,110 o un mecanismo de parque de atracciones para recordar lo que somos? 210 00:10:30,110 --> 00:10:32,630 211 00:10:32,630 --> 00:10:36,170 >> Si copia de galletas de alguien y secuestrar su sesión, por así decirlo, que 212 00:10:36,170 --> 00:10:39,670 puede pretender ser otra persona y la sitio más probable es sólo va a 213 00:10:39,670 --> 00:10:40,150 Puedes creer. 214 00:10:40,150 --> 00:10:41,030 Así que vamos a volver a eso. 215 00:10:41,030 --> 00:10:44,240 Porque el otro tema para hoy más allá de empoderamiento también está hablando 216 00:10:44,240 --> 00:10:48,170 sobre el mundo mucho miedo en el que vivimos y cuánto de lo que haces en 217 00:10:48,170 --> 00:10:51,480 la web, ¿cuánto de lo que haces, incluso en sus teléfonos celulares puede ser hoy 218 00:10:51,480 --> 00:10:55,170 seguido realmente por nadie entre usted y el punto B. 219 00:10:55,170 --> 00:10:56,240 >> Y Ajax, recuerda. 220 00:10:56,240 --> 00:10:58,740 Nos miramos brevemente en este, aunque usted ha estado usando 221 00:10:58,740 --> 00:11:02,660 indirectamente en pset8 porque usted está utilizando Google Maps y porque eres 222 00:11:02,660 --> 00:11:03,830 utilizando Google Earth. 223 00:11:03,830 --> 00:11:07,780 Google Maps y Google Earth no lo hacen descargar todo el mundo a su 224 00:11:07,780 --> 00:11:10,490 escritorio, obviamente, la momento de cargar pset8. 225 00:11:10,490 --> 00:11:15,020 Sólo se descarga un cuadrado del mundo o un cuadrado más grande de la tierra. 226 00:11:15,020 --> 00:11:18,910 Y luego, cada vez que una especie de dirigir fuera de rango es posible que note - 227 00:11:18,910 --> 00:11:21,790 especialmente si en una conexión lenta - que podría ver algo de gris por un momento 228 00:11:21,790 --> 00:11:26,440 o un poco de las imágenes borrosas como el equipo descarga más este tipo de azulejos, 229 00:11:26,440 --> 00:11:29,190 más esas imágenes de la mundo o la tierra. 230 00:11:29,190 --> 00:11:34,620 >> Y Ajax es generalmente la técnica por que los sitios web están haciendo eso. 231 00:11:34,620 --> 00:11:39,250 Una vez que necesita más del mapa, su navegador va a utilizar Ajax, que es 232 00:11:39,250 --> 00:11:42,240 no es en sí un lenguaje o tecnología, es sólo una técnica. 233 00:11:42,240 --> 00:11:47,390 Es el uso de JavaScript para ir a buscar más información desde un servidor que 234 00:11:47,390 --> 00:11:52,320 permite a su navegador para ir a buscar lo que está por el este o lo que está por el oeste de 235 00:11:52,320 --> 00:11:55,110 lo que es otra manera en la actualidad se muestra en el mapa. 236 00:11:55,110 --> 00:11:58,520 Así que este es un tema que muchos de ustedes se encontrará ya sea directamente o 237 00:11:58,520 --> 00:12:01,180 indirectamente a través de proyectos fin de carrera si optar por hacer algo que es 238 00:12:01,180 --> 00:12:05,020 similar dinámica que está tirando de los datos de algún sitio web de terceros. 239 00:12:05,020 --> 00:12:07,390 >> Así que tenemos un muy emocionante el próximo miércoles por delante. 240 00:12:07,390 --> 00:12:12,280 Prueba uno, la información para la cual está en CS50.net ya. 241 00:12:12,280 --> 00:12:17,530 Sepan que habrá una sesión de revisión el próximo lunes a las 5:30. 242 00:12:17,530 --> 00:12:21,010 La fecha y la hora se publica en CS50.net en esa hoja About. 243 00:12:21,010 --> 00:12:22,940 Y déjenos le conocen tiene alguna pregunta. 244 00:12:22,940 --> 00:12:25,230 Pset8 mientras tanto ya está en sus manos. 245 00:12:25,230 --> 00:12:29,210 >> Y permítanme dirigirme a un FAQ para salvar a la gente un poco de estrés. 246 00:12:29,210 --> 00:12:32,530 En su mayor parte, una gran parte de la charla vemos en horas de oficina y una gran cantidad de 247 00:12:32,530 --> 00:12:36,950 los insectos que vemos informó sobre Discuta son de hecho, los errores en el código de un estudiante. 248 00:12:36,950 --> 00:12:41,360 Pero cuando usted ha encontrado algo al igual que el complemento de Google Earth en estrellarse 249 00:12:41,360 --> 00:12:44,310 o ni siquiera trabajando y que son seguro de que no es usted, que no es un 250 00:12:44,310 --> 00:12:48,530 [? chamad?] cuestión, no es un error que introduce en el 251 00:12:48,530 --> 00:12:49,820 código de distribución. 252 00:12:49,820 --> 00:12:51,250 >> Darse cuenta de lo digo - 253 00:12:51,250 --> 00:12:53,130 esto es una especie de plan de Z - 254 00:12:53,130 --> 00:12:57,100 que la última vez que se utilizó este problema establecemos y nos encontramos con similares 255 00:12:57,100 --> 00:13:01,520 cuestiones, hay una línea de código en service.js que, básicamente, es la siguiente, 256 00:13:01,520 --> 00:13:03,580 que dice que, a su vez en los edificios. 257 00:13:03,580 --> 00:13:07,100 Y trabajan en torno a la última vez que hizo en, otra vez, casos de esquina donde 258 00:13:07,100 --> 00:13:11,660 los estudiantes no podían conseguir el maldito cosa que trabajar es el cambio verdadero a falso 259 00:13:11,660 --> 00:13:12,940 en que una línea de código. 260 00:13:12,940 --> 00:13:15,520 Y usted encontrará que si usted busca través service.js. 261 00:13:15,520 --> 00:13:19,990 >> Yo no recomiendo esto porque se quiere crear el paisaje más árido 262 00:13:19,990 --> 00:13:21,720 de Cambridge, Massachusetts. 263 00:13:21,720 --> 00:13:24,930 Esto, literalmente, aplanar el mundo de modo que todo lo que ves son las enseñanzas 264 00:13:24,930 --> 00:13:28,610 becarios y asistentes del curso en el horizonte y no hay edificios. 265 00:13:28,610 --> 00:13:31,980 Pero darse cuenta por cualquier razón el Google Earth plug-in parece todavía ser 266 00:13:31,980 --> 00:13:35,290 cochecillo un año más tarde, por lo que este Podría ser tu fallan guardar. 267 00:13:35,290 --> 00:13:38,915 Así que en lugar de recurrir a las lágrimas, el recurso a convertir los edificios fuera de si usted sabe 268 00:13:38,915 --> 00:13:41,980 que es el complemento que no está cooperando en tu Mac o PC. 269 00:13:41,980 --> 00:13:46,060 Pero, esto es otra vez el último recurso si usted puede estar seguro que no es un error. 270 00:13:46,060 --> 00:13:46,890 >> Así que el hackathon. 271 00:13:46,890 --> 00:13:48,950 Un par de teasers sólo que te entusiasma. 272 00:13:48,950 --> 00:13:50,640 Tuvimos un buen número de confirmaciones de asistencia. 273 00:13:50,640 --> 00:13:54,230 Y sólo para pintar un cuadro de lo que aguarda, pensé que te daría unos cuantos 274 00:13:54,230 --> 00:13:56,858 segundo retiro de estas imágenes respecto al año pasado. 275 00:13:56,858 --> 00:14:00,850 >> [MÚSICA] 276 00:14:00,850 --> 00:14:02,240 >> DAVID J. MALAN: Espera, oh. 277 00:14:02,240 --> 00:14:05,410 Incluso tenemos nuestras lanzaderas CS50 literales. 278 00:14:05,410 --> 00:14:17,920 >> [MÚSICA] 279 00:14:17,920 --> 00:14:20,620 >> DAVID J. MALAN: Así que eso es lo que le espera que en términos de la hackathon. 280 00:14:20,620 --> 00:14:24,180 Y esta será una oportunidad para ser claro, no para iniciar su última 281 00:14:24,180 --> 00:14:27,730 proyectos, sino para seguir trabajando en sus proyectos finales, junto 282 00:14:27,730 --> 00:14:30,210 compañeros de clase y el personal y mucha comida. 283 00:14:30,210 --> 00:14:34,340 Y de nuevo, si estás despierto at 5:00 AM lo llevaremos por el camino a IHOP. 284 00:14:34,340 --> 00:14:37,075 >> La feria CS50, por su parte, es el clímax para toda la clase en la que 285 00:14:37,075 --> 00:14:41,160 que va a traer sus ordenadores portátiles y amigos, tal vez incluso de la familia a una habitación en el campus 286 00:14:41,160 --> 00:14:44,530 por la calle exponer sus proyectos en las computadoras portátiles, en las mesas de altas 287 00:14:44,530 --> 00:14:47,570 así con un montón de comida y amigos y la música en el fondo, 288 00:14:47,570 --> 00:14:49,250 así como a nuestros amigos de la industria. 289 00:14:49,250 --> 00:14:52,760 Empresas como Facebook y Microsoft y Google y Amazon y racimos de 290 00:14:52,760 --> 00:14:55,750 otros de modo que si está interesado en tan sólo escuchar sobre el mundo real o 291 00:14:55,750 --> 00:14:59,570 charlando con la gente acerca del mundo real prácticas o las oportunidades a tiempo completo, 292 00:14:59,570 --> 00:15:01,950 Sabemos que algunos de nuestros amigos de la industria estará allí. 293 00:15:01,950 --> 00:15:04,970 Y un par de fotos que podemos pintar aquí son los siguientes. 294 00:15:04,970 --> 00:15:24,400 >> [MÚSICA] 295 00:15:24,400 --> 00:15:24,920 >> DAVID J. MALAN: Muy bien. 296 00:15:24,920 --> 00:15:27,060 Así que a continuación es la feria CS50. 297 00:15:27,060 --> 00:15:31,780 Así que ahora vamos a proceder a contar una historia que realmente le ayuden con suerte 298 00:15:31,780 --> 00:15:33,230 para cosas como proyectos finales. 299 00:15:33,230 --> 00:15:36,940 Así que una de las pocas cosas poco a las semillas de su mente, ya sea para proyectos fin de carrera 300 00:15:36,940 --> 00:15:40,470 o simplemente de manera más general para los proyectos que es posible que decida abordar después 301 00:15:40,470 --> 00:15:45,720 el curso, estos son todos documentado en manual.cs50.net donde el CS50 302 00:15:45,720 --> 00:15:48,010 Manual en el que tenemos una gran cantidad de técnicas documentados. 303 00:15:48,010 --> 00:15:51,080 >> Y esto es sólo la notación abreviada de diciendo que existe en el 304 00:15:51,080 --> 00:15:55,190 cosas del mundo llamados SMS a correo electrónico gateways, que es una forma elegante de 305 00:15:55,190 --> 00:15:58,180 diciendo, no hay servidores en el mundo que saben cómo convertir mensajes de correo electrónico a 306 00:15:58,180 --> 00:15:59,230 mensajes de texto. 307 00:15:59,230 --> 00:16:02,450 Así que si para su proyecto final que desea para crear algún tipo de temática móvil 308 00:16:02,450 --> 00:16:06,650 servicio que le permite alertar amigos o los usuarios a los eventos en el campus 309 00:16:06,650 --> 00:16:10,290 o lo que se sirve en el Salón D esa noche ni ninguna función de alerta, 310 00:16:10,290 --> 00:16:15,150 sé que es simple como el envío de un correo electrónico como con PHPMailer que 311 00:16:15,150 --> 00:16:18,735 podrían haber utilizado para pset7 o vimos brevemente una semana más o menos, a 312 00:16:18,735 --> 00:16:20,440 direcciones como ésta. 313 00:16:20,440 --> 00:16:26,040 >> Y de hecho, usted puede texto esta asumiendo tu amigo tiene un mensajes de texto ilimitados 314 00:16:26,040 --> 00:16:28,310 planificar y usted no quiere cobrarles $ 0.10. 315 00:16:28,310 --> 00:16:31,920 Pero si usted envía un correo electrónico a tu amigo que usted sabe que tiene Verizon o 316 00:16:31,920 --> 00:16:35,870 AT & T utilizando Gmail y simplemente enviarlo a su número de teléfono en cualquiera que sea el 317 00:16:35,870 --> 00:16:38,980 sub dominio existe, darse cuenta de que enviará un mensaje de texto. 318 00:16:38,980 --> 00:16:41,570 >> Pero esta es una de esas cosas tener cuidado de. 319 00:16:41,570 --> 00:16:47,430 Si troll a través CS50 del año pasado vídeos, creo que era, un horrible, 320 00:16:47,430 --> 00:16:51,660 horrible, horrible error que escribí en el código terminó de enviar cerca de 20.000 textos 321 00:16:51,660 --> 00:16:55,410 mensajes viven en nuestro estudiantes en la clase. 322 00:16:55,410 --> 00:16:57,970 Y sólo porque alguien se dio cuenta de que que estaban recibiendo el texto múltiple 323 00:16:57,970 --> 00:17:01,860 mensajes de mí tenía yo la medios para golpear control C rápidamente 324 00:17:01,860 --> 00:17:03,210 y detener ese proceso. 325 00:17:03,210 --> 00:17:06,200 Control C, usted recuerda, es tu amigo en los casos de bucle infinito. 326 00:17:06,200 --> 00:17:10,900 Así que ten cuidado con el poder que acabamos de dar a usted en lugar de manera irresponsable, la mayoría 327 00:17:10,900 --> 00:17:12,950 probable, basado en mi propia experiencia. 328 00:17:12,950 --> 00:17:15,400 Pero eso es en la web y tiene estado allí durante algún tiempo. 329 00:17:15,400 --> 00:17:15,810 >> Está bien. 330 00:17:15,810 --> 00:17:17,064 Así textmarks.com. 331 00:17:17,064 --> 00:17:18,040 Así que este es un sitio web. 332 00:17:18,040 --> 00:17:20,829 Y hay racimos de otros por ahí así que hemos utilizado en realidad 333 00:17:20,829 --> 00:17:24,050 como una clase durante años para poder recibir mensajes de texto. 334 00:17:24,050 --> 00:17:27,869 Desafortunadamente, el envío de mensajes de texto es fácil como enviar mensajes de correo electrónico por el estilo. 335 00:17:27,869 --> 00:17:30,730 Recibir un poco más difícil, sobre todo si usted quiere tener una de 336 00:17:30,730 --> 00:17:34,610 esos códigos cortos atractivos eso es sólo cinco o seis dígitos. 337 00:17:34,610 --> 00:17:37,720 >> Así, por ejemplo, para el año que ha estado capaz de enviar un mensaje de texto - y usted 338 00:17:37,720 --> 00:17:39,200 puede probar esto, así - 339 00:17:39,200 --> 00:17:41,900 a 41.411. 340 00:17:41,900 --> 00:17:44,300 Y ese es el número de teléfono para este arranque particular. 341 00:17:44,300 --> 00:17:48,130 Y si usted envía un mensaje al 41411 - 342 00:17:48,130 --> 00:17:51,190 Voy a escribirlo aquí, así 41411 - 343 00:17:51,190 --> 00:17:54,290 y luego enviar un mensaje como SBOY para Shuttle Boy. 344 00:17:54,290 --> 00:17:56,370 Y a continuación, escriba en algo como mather quad. 345 00:17:56,370 --> 00:17:59,360 Así que usted envíe ese mensaje de texto a ese número de teléfono. 346 00:17:59,360 --> 00:18:02,630 En pocos segundos usted debe volver una respuesta del traslado CS50 347 00:18:02,630 --> 00:18:06,210 Servicio Boy, que es el servicio de transporte software de programación que hemos tenido, 348 00:18:06,210 --> 00:18:07,290 ahí en la web desde hace algún tiempo. 349 00:18:07,290 --> 00:18:09,450 Y es capaz de responder a que a través de mensaje de texto. 350 00:18:09,450 --> 00:18:13,410 >> Porque lo que hemos hecho como clase, como un programador, es escribir software, 351 00:18:13,410 --> 00:18:18,760 configurada nuestra cuenta gratuita con el texto marcas para escuchar los mensajes de texto enviados 352 00:18:18,760 --> 00:18:20,770 a SBOY en ese número. 353 00:18:20,770 --> 00:18:25,210 Y lo que hacen es con interés los textos mensajes a nuestro sitio web basado en PHP como 354 00:18:25,210 --> 00:18:27,420 Parámetros HTTP diciendo aquí. 355 00:18:27,420 --> 00:18:30,380 Este usuario con este número de teléfono te ha enviado este mensaje de texto. 356 00:18:30,380 --> 00:18:31,850 Hacer con ella lo que quieras. 357 00:18:31,850 --> 00:18:35,180 >> Así que escribió algunos programas que al recibir una cadena como SBOY mather 358 00:18:35,180 --> 00:18:38,420 quad, que analizarlo. 359 00:18:38,420 --> 00:18:41,210 Nos damos cuenta de dónde están los espacios son entre las palabras. 360 00:18:41,210 --> 00:18:44,220 Y nosotros, como clase decidamos cómo responder a eso. 361 00:18:44,220 --> 00:18:47,335 Y si tratas de que ahora, por ejemplo, usted debe ver, a través de la respuesta dentro de un 362 00:18:47,335 --> 00:18:51,470 pocos segundos, los próximos lanzaderas ir del mather con el quad si los hubiere. 363 00:18:51,470 --> 00:18:52,260 Y hay otras paradas. 364 00:18:52,260 --> 00:18:56,060 Puede escribir en Boylston u otro paradas en el campus, y que debería 365 00:18:56,060 --> 00:18:57,760 reconocer aquellas palabras. 366 00:18:57,760 --> 00:18:58,590 >> Así parse.com. 367 00:18:58,590 --> 00:19:01,630 Este es otro servicio que hemos estado señalando algunos estudiantes por un 368 00:19:01,630 --> 00:19:04,390 proyectos finales eso es maravilloso en que es gratis para un 369 00:19:04,390 --> 00:19:05,660 cantidad razonable de uso. 370 00:19:05,660 --> 00:19:08,820 Y si me voy a parse.com verás que se trata de una alternativa a 371 00:19:08,820 --> 00:19:13,230 realmente tener algo como su propia base de datos MySQL. 372 00:19:13,230 --> 00:19:14,490 Y, francamente, es sólo especie de fascinante. 373 00:19:14,490 --> 00:19:17,450 Esto es lo que hay dentro de la nublar incluso en un día nublado. 374 00:19:17,450 --> 00:19:21,580 >> Así parse.com le permite hacer una montón de cosas interesantes. 375 00:19:21,580 --> 00:19:23,610 Y hay otras alternativas a esta por ahí. 376 00:19:23,610 --> 00:19:26,870 Por ejemplo, puede utilizar los como base de datos back-end. 377 00:19:26,870 --> 00:19:28,980 Así que usted no necesita tener una empresa de alojamiento web. 378 00:19:28,980 --> 00:19:31,180 Usted no necesita tener una base de datos MySQL. 379 00:19:31,180 --> 00:19:32,850 En su lugar, puede utilizar su extremo posterior. 380 00:19:32,850 --> 00:19:36,350 >> Si usted está haciendo un proyecto móvil para Android o iOS o similar, sabemos que 381 00:19:36,350 --> 00:19:39,776 existe cosas como los servicios de inserción para que pueda empujar alertas de tus amigos 382 00:19:39,776 --> 00:19:41,390 o pantallas de inicio de los usuarios. 383 00:19:41,390 --> 00:19:43,600 Y luego un montón de otras características también. 384 00:19:43,600 --> 00:19:47,200 >> Así que si usted tiene interés, echa un vistazo a estos sitios web y sitios web como ellos 385 00:19:47,200 --> 00:19:50,720 para ver cómo muchos otros pueblos "sólo hombros puede valerse por hacer 386 00:19:50,720 --> 00:19:53,350 software realmente bueno de los tuyos. 387 00:19:53,350 --> 00:19:56,690 >> Ahora, en términos de autenticación, un FAQ, es cómo se puede realmente garantiza 388 00:19:56,690 --> 00:20:01,220 que sus usuarios son personas en el campus, Los estudiantes de Harvard o facultad o personal? 389 00:20:01,220 --> 00:20:05,350 Así CS50 tiene su propia autenticación servicio de llamada ID CS50. 390 00:20:05,350 --> 00:20:09,940 Ir a la URL y puede restringir su sitio web para cualquier persona con un Harvard 391 00:20:09,940 --> 00:20:11,340 Identificación, por ejemplo. 392 00:20:11,340 --> 00:20:12,550 Así que sabemos que podemos manejar eso. 393 00:20:12,550 --> 00:20:15,280 Ustedes no deberían estar en el negocio de decir, ¿cuál es su ID de Harvard? 394 00:20:15,280 --> 00:20:16,160 ¿Cuál es su PIN de Harvard? 395 00:20:16,160 --> 00:20:17,550 Permítanme ahora hacer algo con él. 396 00:20:17,550 --> 00:20:18,740 Vamos a hacer todo eso. 397 00:20:18,740 --> 00:20:21,710 Y lo que le daremos la espalda es el nombre y dirección de correo electrónico a alguien, pero 398 00:20:21,710 --> 00:20:23,010 no nada delicada. 399 00:20:23,010 --> 00:20:26,240 400 00:20:26,240 --> 00:20:30,380 >> Una aplicación en un dispositivo móvil, puede ser hecho de trabajar en un dispositivo móvil, pero 401 00:20:30,380 --> 00:20:32,630 No es exactamente diseñado para eso. 402 00:20:32,630 --> 00:20:35,640 Así que va a terminar gastando un no trivial cantidad de tiempo para hacerlo. 403 00:20:35,640 --> 00:20:38,040 Así que me gustaría desalentar esa ruta por ahora. 404 00:20:38,040 --> 00:20:41,570 Esto es realmente diseñado para aplicaciones basadas en web. 405 00:20:41,570 --> 00:20:42,650 >> Así alojamiento web. 406 00:20:42,650 --> 00:20:44,450 Así que si usted no ha visto en página de inicio del curso - 407 00:20:44,450 --> 00:20:46,610 y aquí es donde vamos a empezar una historia - 408 00:20:46,610 --> 00:20:50,900 alojamiento web es todo sobre el pago de por lo general un servicio, anfitrión de un servidor propiedad 409 00:20:50,900 --> 00:20:54,800 por otra persona en la web que tiene un Dirección IP y, a continuación, poner el 410 00:20:54,800 --> 00:20:55,880 sitio web sobre el mismo. 411 00:20:55,880 --> 00:20:58,620 Y por lo general le dan de correo electrónico cuentas y bases de datos 412 00:20:58,620 --> 00:21:00,160 y otras características. 413 00:21:00,160 --> 00:21:02,930 >> Sepa que si usted no quiere a la realidad pagar por tal, vaya a la URL 414 00:21:02,930 --> 00:21:06,280 allí y CS50 en realidad tiene una sin fines de lucro cuenta que puede utilizar para 415 00:21:06,280 --> 00:21:11,490 En realidad no tiene http://proyecto interior del aparato 416 00:21:11,490 --> 00:21:12,470 para su proyecto final. 417 00:21:12,470 --> 00:21:16,465 Si usted realmente quiere que sea algo como, isawyouharvard.com, 418 00:21:16,465 --> 00:21:19,730 usted puede comprar ese nombre de dominio - aunque no esa en particular - y 419 00:21:19,730 --> 00:21:24,070 entonces usted puede ir sobre lo hospeda en un servidor web público que podemos ofrecer 420 00:21:24,070 --> 00:21:25,170 ustedes a través de aquí. 421 00:21:25,170 --> 00:21:27,240 >> Y de hecho, si no familiar, si usted nunca ha estado en 422 00:21:27,240 --> 00:21:30,590 isawyouharvard.com, uno, ir allí. 423 00:21:30,590 --> 00:21:37,310 Pero dos, saben que eso era un joven El nombre de la mujer por Tej Para Toor Demasiado dos 424 00:21:37,310 --> 00:21:41,550 Hace años, hace tres años, que era un Ex alumnos CS50 que pasaron uno o dos días 425 00:21:41,550 --> 00:21:46,280 antes de la feria CS50 envió un correo electrónico a su casa lista de correo y voila. 426 00:21:46,280 --> 00:21:49,770 Dos días más tarde por la feria CS50, tenía cientos de usuarios de todo reptil de 427 00:21:49,770 --> 00:21:53,240 entre sí en su sitio web y diciendo lo que habían visto 428 00:21:53,240 --> 00:21:55,250 él o ella en el campus. 429 00:21:55,250 --> 00:21:57,600 Así que esa es una de las favorita de CS50 historias de éxito de 430 00:21:57,600 --> 00:21:59,650 un proyecto final CS50. 431 00:21:59,650 --> 00:22:04,090 >> Entonces, ¿cómo hace usted para poner un sitio web así en el Internet? 432 00:22:04,090 --> 00:22:07,140 Bueno, hay unos pocos, ingredientes aquí. 433 00:22:07,140 --> 00:22:09,310 Así que uno, usted tiene que comprar un nombre de dominio. 434 00:22:09,310 --> 00:22:12,440 Hay montones de lugares en el mundo desde el que puede 435 00:22:12,440 --> 00:22:13,940 comprar un nombre de dominio. 436 00:22:13,940 --> 00:22:16,660 Y por ejemplo, uno que se recomienda sólo porque es popular 437 00:22:16,660 --> 00:22:18,855 y es barato se llama namecheap.com. 438 00:22:18,855 --> 00:22:22,860 Pero puedes ir godaddy.com y docenas de otros por ahí. 439 00:22:22,860 --> 00:22:24,420 Usted puede leer en los comentarios. 440 00:22:24,420 --> 00:22:26,250 >> Pero en su mayor parte no lo hace asunto al que le 441 00:22:26,250 --> 00:22:27,720 comprar un nombre de dominio. 442 00:22:27,720 --> 00:22:30,780 Y ellos varían en precio y que varían en el sufijo. 443 00:22:30,780 --> 00:22:37,140 Los sufijos como. Com,. Net, . Org,. Io,. Televisión, los 444 00:22:37,140 --> 00:22:38,650 de hecho variar en precio. 445 00:22:38,650 --> 00:22:43,630 Pero si lo que queríamos hacer algo como cats.com podemos ir a este sitio web, 446 00:22:43,630 --> 00:22:44,280 haga clic en Buscar. 447 00:22:44,280 --> 00:22:46,370 Es de suponer que se toma esta. 448 00:22:46,370 --> 00:22:50,170 Pero, al parecer, catsagainst.com está disponible. 449 00:22:50,170 --> 00:22:52,100 pluscats.com está disponible. 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 Todo esto es de esperar seudo generado aleatoriamente. 453 00:22:59,135 --> 00:23:04,670 Si quieres cats.pw, $ 1,500 solamente, que es un poco loco. 454 00:23:04,670 --> 00:23:08,100 Así que alguien realmente ha arrebatado todo los nombres de dominio relacionados con gato aquí para los 455 00:23:08,100 --> 00:23:09,840 variando los precios. 456 00:23:09,840 --> 00:23:12,360 >> Como acotación al margen, vamos a ver. 457 00:23:12,360 --> 00:23:13,710 ¿Quién tiene cats.com? 458 00:23:13,710 --> 00:23:16,290 Sepan que ustedes tienen en su disposición bastante 459 00:23:16,290 --> 00:23:17,540 comandos sofisticados ahora. 460 00:23:17,540 --> 00:23:20,592 Como puedo escribir, literalmente, que es cats.com? 461 00:23:20,592 --> 00:23:23,730 Y debido a la forma en que el Internet es estructurado en realidad se puede ver quién 462 00:23:23,730 --> 00:23:25,440 ha registrado este. 463 00:23:25,440 --> 00:23:30,240 Al parecer, esta persona es [inaudible] utilizando un servicio de proxy. 464 00:23:30,240 --> 00:23:33,900 Así que quien posee cats.com no quiere que el mundo sepa quiénes son. 465 00:23:33,900 --> 00:23:36,610 Así que han registrado si a través de algún servicio de privacidad azar. 466 00:23:36,610 --> 00:23:39,100 Pero a veces en realidad que los propietarios reales. 467 00:23:39,100 --> 00:23:41,420 >> Y esto quiere decir, sobre todo si eres perseguir algún arranque y usted 468 00:23:41,420 --> 00:23:44,640 realmente quiere un nombre de dominio y que está dispuestos a pagar a alguien para 469 00:23:44,640 --> 00:23:48,050 él, usted puede averiguar contacto información de esa manera. 470 00:23:48,050 --> 00:23:49,940 >> Pero también es interesante es esto. 471 00:23:49,940 --> 00:23:53,380 Permítanme desplazo hasta esta parte. 472 00:23:53,380 --> 00:23:55,330 Así que este es el mismo de salida. 473 00:23:55,330 --> 00:23:56,990 Y esto es sólo de mal gusto. 474 00:23:56,990 --> 00:24:00,740 Así que al parecer cats.com puede haber el tuyo por el precio correcto. 475 00:24:00,740 --> 00:24:03,170 Pero lo que es interesante aquí es que los servidores de nombres - 476 00:24:03,170 --> 00:24:06,040 esto es un abuso total de lo que un nombre servidor se supone que es - su nombre 477 00:24:06,040 --> 00:24:08,876 servidor no se supone que es thisdomainforsale.com. 478 00:24:08,876 --> 00:24:11,050 Si en realidad elegimos algo así como - 479 00:24:11,050 --> 00:24:15,181 vamos a elegir algo un poco más legítima como, que está google.com, 480 00:24:15,181 --> 00:24:17,030 y desplácese hasta aquí. 481 00:24:17,030 --> 00:24:18,280 Así que aquí - 482 00:24:18,280 --> 00:24:20,600 483 00:24:20,600 --> 00:24:21,740 lo que pasó allí? 484 00:24:21,740 --> 00:24:22,480 Interesante. 485 00:24:22,480 --> 00:24:25,290 Más allá de quién es - 486 00:24:25,290 --> 00:24:26,610 vamos a mantenerlo más bajo llave. 487 00:24:26,610 --> 00:24:28,370 >> Quién es mit.edu? 488 00:24:28,370 --> 00:24:28,810 Aceptar. 489 00:24:28,810 --> 00:24:29,900 Esto es de gran ayuda. 490 00:24:29,900 --> 00:24:31,400 Así que esto es lo que yo esperaba. 491 00:24:31,400 --> 00:24:33,930 Uso legítimo del servicio DNS. 492 00:24:33,930 --> 00:24:36,750 Nombre servidores aquí indican el siguiente. 493 00:24:36,750 --> 00:24:40,880 Esta es la manera de decir, cada vez que el MIT alguien en el mundo, dondequiera que 494 00:24:40,880 --> 00:24:46,950 son, tipos de mit.edu y éxitos Enter, su computadora portátil, ya sea Mac o PC, se 495 00:24:46,950 --> 00:24:51,830 de alguna manera con el tiempo darse cuenta de que la personas en el mundo que saben lo que el 496 00:24:51,830 --> 00:24:58,130 La dirección IP es para mit.edu o cualquiera de los subdominios en mit.edu o cualquiera de 497 00:24:58,130 --> 00:25:01,660 estos servidores aquí - y lo que realmente parece que la infraestructura es MITs 498 00:25:01,660 --> 00:25:03,370 bastante robusto como es de esperar. 499 00:25:03,370 --> 00:25:07,050 Tienen varios servidores de nombres lo cual es bueno para la redundancia. 500 00:25:07,050 --> 00:25:09,840 Y, de hecho, que parecen ser globalmente distribuido en todo el mundo. 501 00:25:09,840 --> 00:25:13,250 Un montón de los que parecen estar en los EE.UU., una pareja en Asia, uno en Europa, dos 502 00:25:13,250 --> 00:25:14,540 en otro lugar. 503 00:25:14,540 --> 00:25:18,000 >> Pero el punto aquí es que el DNS que hemos estado dando por sentado y 504 00:25:18,000 --> 00:25:21,990 generalmente se describe como una gran mesa de Excel que tiene las direcciones IP y dominios 505 00:25:21,990 --> 00:25:25,890 nombres es en realidad bastante sofisticado servicio jerárquica de manera que en el 506 00:25:25,890 --> 00:25:29,170 mundo en realidad hay un número finito de servidores que esencialmente saben dónde 507 00:25:29,170 --> 00:25:32,880 todos los COMS. son o todos las redes. son, todos los 508 00:25:32,880 --> 00:25:34,650 . Orgs son, y así sucesivamente. 509 00:25:34,650 --> 00:25:37,820 >> Así que cuando usted seguir adelante y comprar un dominio nombre de un lugar como Nombre barato o 510 00:25:37,820 --> 00:25:41,450 Go Daddy o cualquier otro sitio web, una de los pasos clave que usted tendrá que hacer 511 00:25:41,450 --> 00:25:45,180 usted, si usted hace esto, incluso para su definitiva proyecto, es decir al registrador 512 00:25:45,180 --> 00:25:49,020 de quien va a comprar el dominio nombre, que en el mundo sabe su 513 00:25:49,020 --> 00:25:52,310 las direcciones IP del sitio web, que sus servidores de nombres son. 514 00:25:52,310 --> 00:25:55,750 >> Así que si usted usa, por ejemplo, de CS50 cuenta de alojamiento - que sucede que tiene 515 00:25:55,750 --> 00:25:57,760 esta cuenta a través dreamhost.com que es un 516 00:25:57,760 --> 00:25:59,560 empresa de alojamiento web más populares - 517 00:25:59,560 --> 00:26:03,530 ellos le dirán que usted debe comprar su dominio y decirle al mundo que 518 00:26:03,530 --> 00:26:09,410 servidor de nombres de dominio es ns1.dreamhost.com, ns2.dreamhost.com, 519 00:26:09,410 --> 00:26:11,470 y ns3.dreamhost.com. 520 00:26:11,470 --> 00:26:12,600 >> Pero eso es todo. 521 00:26:12,600 --> 00:26:15,480 La compra de un nombre de dominio significa darles el dinero y obtener la propiedad de la 522 00:26:15,480 --> 00:26:17,190 dominio, pero es más como un alquiler de embargo. 523 00:26:17,190 --> 00:26:20,060 ¿Te das cuenta por un año y luego se factura que recurrentemente para el resto de 524 00:26:20,060 --> 00:26:22,130 su vida hasta que cancele el nombre de dominio. 525 00:26:22,130 --> 00:26:24,510 Y luego usted les dice que los servidores de nombres son. 526 00:26:24,510 --> 00:26:26,190 Pero después que haya terminado con su registrador. 527 00:26:26,190 --> 00:26:30,130 Y a partir de ahí podrás interactuar sólo con su empresa de alojamiento web, que 528 00:26:30,130 --> 00:26:32,030 en el caso de CS50 será DreamHost. 529 00:26:32,030 --> 00:26:36,080 Pero, de nuevo, más documentación será proporcionado a usted si usted decide ir a 530 00:26:36,080 --> 00:26:37,170 esa ruta. 531 00:26:37,170 --> 00:26:40,750 >> Así que si usted hace esto después del curso final, simplemente buscando en Google alojamiento web 532 00:26:40,750 --> 00:26:42,830 empresa a su vez a miles de opciones. 533 00:26:42,830 --> 00:26:45,720 Y yo generalmente le animaría a pedir a los amigos que podrían haber utilizado un 534 00:26:45,720 --> 00:26:49,350 empresa antes si recomiendan ellos y tenían una buena experiencia. 535 00:26:49,350 --> 00:26:52,680 >> Porque hay un montón de mosca por la noche empresas de alojamiento web, como un hombre en 536 00:26:52,680 --> 00:26:55,220 su sótano con un servidor que tiene una dirección IP. 537 00:26:55,220 --> 00:26:58,980 Él tiene algo extra RAM y el disco duro espacio y sólo vende alojamiento web 538 00:26:58,980 --> 00:27:02,380 las cuentas a pesar de que no hay manera de que servidor puede manejar cientos de 539 00:27:02,380 --> 00:27:04,050 usuarios o miles de usuarios. 540 00:27:04,050 --> 00:27:06,260 Entonces se da cuenta que usted conseguirá lo que se paga. 541 00:27:06,260 --> 00:27:09,510 >> Desde hace un tiempo para mi casa personal página - y esto era totalmente aceptable 542 00:27:09,510 --> 00:27:11,830 porque tenía, como, dos visitantes al mes - 543 00:27:11,830 --> 00:27:14,990 Yo estaba pagando, como, $ 2.95 al mes. 544 00:27:14,990 --> 00:27:17,230 Y estoy bastante seguro de que era en el sótano de alguien. 545 00:27:17,230 --> 00:27:20,800 Pero, de nuevo, usted no consigue necesariamente ninguna garantía de tiempo de actividad o 546 00:27:20,800 --> 00:27:21,840 escalabilidad. 547 00:27:21,840 --> 00:27:24,560 Así que de nuevo, que está normalmente en busca a algo más que eso. 548 00:27:24,560 --> 00:27:26,220 >> Bueno, ¿qué pasa con SSL? 549 00:27:26,220 --> 00:27:27,690 Entonces, ¿qué es SSL utiliza? 550 00:27:27,690 --> 00:27:30,320 Ahora vamos a empezar a dirigirlo en la instrucciones de seguridad y las cosas que 551 00:27:30,320 --> 00:27:32,330 nos puede hacer daño. 552 00:27:32,330 --> 00:27:36,890 Especialmente en lo que se aventura a cabo por su cuenta. 553 00:27:36,890 --> 00:27:41,650 >> ¿Qué es SSL, o lo que SSL se utiliza? 554 00:27:41,650 --> 00:27:42,660 Seguridad, OK. 555 00:27:42,660 --> 00:27:44,000 Así que ha utilizado para la seguridad. 556 00:27:44,000 --> 00:27:44,640 ¿Qué significa eso? 557 00:27:44,640 --> 00:27:47,170 Así que es lógico para Secure Sockets Layer. 558 00:27:47,170 --> 00:27:52,330 Y se indica por una dirección URL que comienza con https://. 559 00:27:52,330 --> 00:27:58,410 Muchos de nosotros probablemente nunca han escrito https://, pero a menudo se dará cuenta de que 560 00:27:58,410 --> 00:28:03,000 el navegador es redirigido de HTTP a HTTPS para que todo esté allí 561 00:28:03,000 --> 00:28:04,260 después de cifrado. 562 00:28:04,260 --> 00:28:10,810 >> Para tu información, el uso de SSL requiere típicamente que usted tiene una dirección IP única. 563 00:28:10,810 --> 00:28:13,940 Y por lo general para obtener una dirección IP única que necesita para pagar un alojamiento web 564 00:28:13,940 --> 00:28:15,850 compañía de unos pocos dólares más por mes. 565 00:28:15,850 --> 00:28:19,850 Entonces se da cuenta que esto es muy fácil implementado en estos días por la compra de un IP 566 00:28:19,850 --> 00:28:22,930 abordar y mediante la compra de lo que es llamado un certificado SSL. 567 00:28:22,930 --> 00:28:26,520 Pero se da cuenta de que no venga en algún costo adicional. 568 00:28:26,520 --> 00:28:30,880 Y, como vamos a tratar de asustar en tan sólo un poco, ni siquiera es necesariamente 100% 569 00:28:30,880 --> 00:28:34,040 protección de lo que sea usted está tratando de proteger. 570 00:28:34,040 --> 00:28:38,620 >> Así que para la seguridad, había pensado que había hacer una especie de segue al azar aquí. 571 00:28:38,620 --> 00:28:42,820 Como se puede saber a partir de la conferencia de CS50 vídeos, nuestro equipo de producción ha sido un 572 00:28:42,820 --> 00:28:46,770 fan como yo de tomar realmente agradable fotografía de la escuela, y de la antena 573 00:28:46,770 --> 00:28:48,370 fotografía más reciente. 574 00:28:48,370 --> 00:28:51,450 Si alguna vez miras hacia arriba y ves algo volando con una pequeña cámara, 575 00:28:51,450 --> 00:28:53,410 que en realidad puede ser CS50. 576 00:28:53,410 --> 00:28:55,830 Y yo sólo pensé en compartir minutos de algunas de las imágenes que el equipo tiene 577 00:28:55,830 --> 00:28:59,450 reunidos, sobre todo ya que buscamos el semestre de la primavera y el otoño siguiente. 578 00:28:59,450 --> 00:29:03,320 Si alguno de ustedes tiene una habilidad especial para fotografía, videografía, lo haríamos 579 00:29:03,320 --> 00:29:05,570 amas involucrarte detrás de las escenas. 580 00:29:05,570 --> 00:29:07,595 Pero más en esos detalles en una semana. 581 00:29:07,595 --> 00:29:18,560 >> [MÚSICA] 582 00:29:18,560 --> 00:29:20,750 >> DAVID J. MALAN: Resulta que hay una campo de golf en miniatura en la parte superior de 583 00:29:20,750 --> 00:29:22,754 el estadio que nunca supimos acerca. 584 00:29:22,754 --> 00:30:06,150 >> [MÚSICA] 585 00:30:06,150 --> 00:30:08,440 >> DAVID J. MALAN: Usted puede ver el contorno del drone allí. 586 00:30:08,440 --> 00:30:24,160 >> [MÚSICA] 587 00:30:24,160 --> 00:30:26,280 >> DAVID J. MALAN: La mejor parte aquí se, ver el basculador de la izquierda. 588 00:30:26,280 --> 00:30:52,900 >> [MÚSICA] 589 00:30:52,900 --> 00:30:56,920 >> DAVID J. MALAN: Otro ejemplo de lo que puede hacer con la tecnología que es 590 00:30:56,920 --> 00:30:58,900 sólo tangencialmente, francamente, relacionados con la seguridad. 591 00:30:58,900 --> 00:31:01,710 Pero pensé que sería una más manera divertida de decir simplemente, la seguridad. 592 00:31:01,710 --> 00:31:07,780 Así que veamos si no podemos asustar ustedes Ahora, no sólo con un poco de unos pocos 593 00:31:07,780 --> 00:31:10,590 amenazas, sino también un activo subyacente comprensión de lo que estas amenazas 594 00:31:10,590 --> 00:31:13,830 son para que avance puede decidir cómo y si para defender 595 00:31:13,830 --> 00:31:17,290 a ti mismo contra estas cosas y, al menos ser conscientes de ellos a medida que 596 00:31:17,290 --> 00:31:20,530 tomar decisiones en cuanto a si o no enviar ese correo electrónico, si desea o no iniciar 597 00:31:20,530 --> 00:31:24,920 en ese sitio web, si desea o no utilizar ese cyber cafés Wi-Fi 598 00:31:24,920 --> 00:31:28,210 punto, así que usted sabe lo que el las amenazas son de hecho a tu alrededor. 599 00:31:28,210 --> 00:31:30,990 >> Así que Jonathan se refirió a algo como este lunes. 600 00:31:30,990 --> 00:31:32,220 Tenía una captura de pantalla de la ventana. 601 00:31:32,220 --> 00:31:33,630 Éste es de un Mac. 602 00:31:33,630 --> 00:31:36,850 ¿Cuántos de ustedes han instalado software en su PC o Mac? 603 00:31:36,850 --> 00:31:38,420 Obviamente todo el mundo. 604 00:31:38,420 --> 00:31:41,590 ¿Cuántos de ustedes han pensado mucho a escribir su contraseña 605 00:31:41,590 --> 00:31:43,030 cuando se le pida? 606 00:31:43,030 --> 00:31:44,740 Quiero decir, yo no, francamente. 607 00:31:44,740 --> 00:31:48,730 Así que un par de nosotros son buenos a ser paranoico. 608 00:31:48,730 --> 00:31:50,490 Pero piense en lo que está haciendo realmente aquí. 609 00:31:50,490 --> 00:31:53,280 >> En una típica PC Mac o tiene una cuenta de administrador. 610 00:31:53,280 --> 00:31:56,450 Y por lo general usted es el único que utiliza un ordenador portátil por lo menos en estos días. 611 00:31:56,450 --> 00:31:59,780 Así su cuenta, Malan o JHarvard o lo que sea, es la 612 00:31:59,780 --> 00:32:00,830 cuenta de administrador. 613 00:32:00,830 --> 00:32:03,530 Y lo que eso significa es que tienes acceso root a la computadora. 614 00:32:03,530 --> 00:32:06,180 Puede instalar cualquier cosa que desee, eliminar todo lo que quieras. 615 00:32:06,180 --> 00:32:10,800 >> Y por lo general en estos días, a causa de fecha las decisiones de diseño de hace años, 616 00:32:10,800 --> 00:32:14,560 la forma en que la mayoría del software se instala es como un administrador. 617 00:32:14,560 --> 00:32:18,180 E incluso si tu Mac o PC tiene al menos conseguido lo suficientemente inteligente como el 618 00:32:18,180 --> 00:32:22,010 año con las últimas encarnaciones de Mac OS y Windows no se ejecuten su 619 00:32:22,010 --> 00:32:26,130 nombre de usuario por defecto como el administrador, al descargar algunos 620 00:32:26,130 --> 00:32:29,160 nuevo programa de la Internet y tratar de instalarlo, usted está probablemente va 621 00:32:29,160 --> 00:32:30,880 que se le solicite la contraseña. 622 00:32:30,880 --> 00:32:34,790 Pero el problema es en ese punto, usted está entregando literalmente las llaves de su 623 00:32:34,790 --> 00:32:38,620 ordenador a través de lo que sea al azar programa que acaba de descargar y 624 00:32:38,620 --> 00:32:41,590 lo que le permite instalar lo que quiera. 625 00:32:41,590 --> 00:32:45,050 >> Y como Jonathan aludido, se dan cuenta que podría decir que se quiere 626 00:32:45,050 --> 00:32:49,350 instalar el software que usted se preocupa aproximadamente, Spotify o iTunes o lo que sea 627 00:32:49,350 --> 00:32:50,900 que es lo que está tratando de instalar. 628 00:32:50,900 --> 00:32:54,710 Pero estás literalmente confiando el autor o autores del software a 629 00:32:54,710 --> 00:32:57,570 sólo hacer lo que el programa de se supone que debe hacer. 630 00:32:57,570 --> 00:33:02,320 >> Pero no hay absolutamente nada detener la mayoría de los programas en la mayoría 631 00:33:02,320 --> 00:33:06,910 sistemas operativos de eliminación de archivos, de subirlos a alguna compañía de 632 00:33:06,910 --> 00:33:10,040 sitio web, desde curricán alrededor, para cifrar cosas. 633 00:33:10,040 --> 00:33:12,970 Y una vez más, hemos construido una especie de toda una infraestructura en 634 00:33:12,970 --> 00:33:14,930 los años en la confianza. 635 00:33:14,930 --> 00:33:18,690 Y así se da cuenta que sólo has sido confiar en la gente al azar y al azar 636 00:33:18,690 --> 00:33:20,050 empresas para la mayor parte. 637 00:33:20,050 --> 00:33:24,860 >> Y Jonathan aludido también, a veces esas mismas empresas son una especie de 638 00:33:24,860 --> 00:33:26,410 a sabiendas, maliciosa, ¿de acuerdo? 639 00:33:26,410 --> 00:33:30,200 Sony capturado muchas críticas de algunos años hace para instalar lo que se llama un 640 00:33:30,200 --> 00:33:33,220 kit rootkit en los ordenadores de las personas sin su conocimiento. 641 00:33:33,220 --> 00:33:36,570 Y la esencia de esto es que cuando se comprado un CD, por ejemplo, que 642 00:33:36,570 --> 00:33:40,050 no quiere que usted sea capaz de copiar o extraer la música fuera de, el CD haría 643 00:33:40,050 --> 00:33:42,600 instalar, sin su conocimiento, un rootkit en su ordenador. 644 00:33:42,600 --> 00:33:46,020 Rootkit sólo significa software que se ejecuta como administrador que potencialmente 645 00:33:46,020 --> 00:33:47,260 hace cosas malas. 646 00:33:47,260 --> 00:33:50,780 >> Pero entre las cosas que esta cosa hizo fue que se escondió. 647 00:33:50,780 --> 00:33:53,660 Así que algunos de ustedes podrían estar bastante lista con su equipo y conocimientos, bueno, 648 00:33:53,660 --> 00:33:57,310 puede simplemente abrir el Administrador de tareas o el Monitor de actividad y puedo mirar a todos 649 00:33:57,310 --> 00:33:59,150 de los programas arcanely nombre que se están ejecutando. 650 00:33:59,150 --> 00:34:01,760 Y si algo parece sospechoso Voy a matar a él o eliminarlo. 651 00:34:01,760 --> 00:34:02,980 Pero eso es lo que hizo el rootkit. 652 00:34:02,980 --> 00:34:07,070 En esencia, dijo, si se ejecuta de tareas Manager, no muestran a ti mismo. 653 00:34:07,070 --> 00:34:08,500 >> Así que el software estaba allí. 654 00:34:08,500 --> 00:34:12,710 Y sólo si realmente, realmente veías duro podría incluso encontrar. 655 00:34:12,710 --> 00:34:15,670 Y esto se hace en nombre de protección de copia. 656 00:34:15,670 --> 00:34:18,230 Pero imagínese lo que podría se han hecho lo contrario. 657 00:34:18,230 --> 00:34:19,699 >> Ahora, en términos de protección de ti mismo. 658 00:34:19,699 --> 00:34:22,190 Un montón de sitios web son maravillosamente cortés en la que se ponen estos 659 00:34:22,190 --> 00:34:26,480 iconos de candado en su página de inicio que significa que el sitio es seguro. 660 00:34:26,480 --> 00:34:28,870 Esto es de bankofamerica.com esta mañana. 661 00:34:28,870 --> 00:34:32,239 Entonces, ¿qué hace ese pequeño icono de candado no quiere decir junto al botón Iniciar sesión? 662 00:34:32,239 --> 00:34:35,699 663 00:34:35,699 --> 00:34:36,790 >> Absolutamente nada. 664 00:34:36,790 --> 00:34:39,560 Significa que alguien sepa cómo usarlo Photoshop para hacer una imagen de un 665 00:34:39,560 --> 00:34:40,590 icono de candado. 666 00:34:40,590 --> 00:34:44,449 Al igual que, literalmente, el hecho de que es no está destinado a ser un positivo 667 00:34:44,449 --> 00:34:46,880 indicar al usuario, como, ooh, sitio web seguro. 668 00:34:46,880 --> 00:34:50,449 Debo confiar en este sitio web y ahora escribir mi nombre de usuario y contraseña. 669 00:34:50,449 --> 00:34:53,870 Y esto ha sido convencional para año, en fecha tan reciente como esta mañana. 670 00:34:53,870 --> 00:34:56,949 >> Pero tenga en cuenta los hábitos que esto nos está metiendo. 671 00:34:56,949 --> 00:35:00,600 Considere el mensaje implícito de que todo de estos bancos en este caso han sido 672 00:35:00,600 --> 00:35:01,830 enviando durante años. 673 00:35:01,830 --> 00:35:05,160 Si usted ve un candado, luego asegure. 674 00:35:05,160 --> 00:35:05,340 ¿De acuerdo? 675 00:35:05,340 --> 00:35:10,520 >> Así que ¿cómo se puede abusar de ese sistema de confianza si usted es el malo de la película? 676 00:35:10,520 --> 00:35:14,100 Ponga un candado en su sitio web, y lógicamente, los usuarios no han sido 677 00:35:14,100 --> 00:35:17,260 condicionado por años para asumir candado significa seguro. 678 00:35:17,260 --> 00:35:19,310 Y en realidad podría ser seguro. 679 00:35:19,310 --> 00:35:24,810 Puede ser que tengas un maravilloso y seguro Conexión HTTPS SSL a un 680 00:35:24,810 --> 00:35:26,452 sitio web falso. com. 681 00:35:26,452 --> 00:35:30,150 Y nadie más en el mundo puede ver que usted está a punto de que él o ella a mano 682 00:35:30,150 --> 00:35:32,790 su nombre de usuario y contraseña a su cuenta. 683 00:35:32,790 --> 00:35:35,110 >> Esto, sin embargo, tal vez, es un poco más tranquilizador. 684 00:35:35,110 --> 00:35:38,600 Así que esta es una captura de pantalla de la parte superior de mi navegador esta mañana en 685 00:35:38,600 --> 00:35:39,910 bankofamerica.com. 686 00:35:39,910 --> 00:35:43,270 Y note también aquí tener un icono de candado. 687 00:35:43,270 --> 00:35:48,040 ¿Qué significa en este contexto en Chrome, al menos? 688 00:35:48,040 --> 00:35:49,520 >> Así que esto está utilizando SSL. 689 00:35:49,520 --> 00:35:51,220 Así que esto es realmente una cosa mejor. 690 00:35:51,220 --> 00:35:54,250 Y el hecho de que Chrome está haciendo verde tiene la intención de llamar nuestra atención 691 00:35:54,250 --> 00:35:56,750 al hecho de que este es no sólo a través de SSL. 692 00:35:56,750 --> 00:36:01,400 Esta es una empresa que alguien por no ha verificado es en realidad 693 00:36:01,400 --> 00:36:02,520 bankofamerica.com. 694 00:36:02,520 --> 00:36:05,970 Y eso significa que el Bank of America, en la compra de su llamada SSL 695 00:36:05,970 --> 00:36:09,680 certificado, esencialmente grande al azar, números aleatorios algo que implementan 696 00:36:09,680 --> 00:36:14,710 seguridad para ellos, han sido verificada por algún tercero independiente 697 00:36:14,710 --> 00:36:15,570 partido que dice, sí. 698 00:36:15,570 --> 00:36:19,240 Esto es en realidad el director general de Banco de Latina tratando de comprar el certificado. 699 00:36:19,240 --> 00:36:23,290 Por lo tanto, Chrome confiar en que autoridad de certificación y decir en 700 00:36:23,290 --> 00:36:25,265 verde, esto es bankofamerica.com. 701 00:36:25,265 --> 00:36:27,997 Y Bank of America sólo paga unos pocos cientos de dólares para que o unos pocos 702 00:36:27,997 --> 00:36:30,800 mil en contraposición a un pocas decenas de dólares. 703 00:36:30,800 --> 00:36:34,940 >> Pero también en este caso, ¿cuántos de ustedes tienen alguna comportado de manera diferente porque 704 00:36:34,940 --> 00:36:38,576 la dirección URL en su navegador es verde en lugar de negro? 705 00:36:38,576 --> 00:36:39,900 ¿Cierto? 706 00:36:39,900 --> 00:36:40,600 Así que un par de nosotros. 707 00:36:40,600 --> 00:36:42,115 Y eso es bueno para ser paranoico. 708 00:36:42,115 --> 00:36:45,910 Pero incluso entonces, aquellos de ustedes que aún percibir estas cosas, ¿realmente 709 00:36:45,910 --> 00:36:50,720 detener el registro en una de otra manera segura sitio web si la URL no es verde? 710 00:36:50,720 --> 00:36:53,380 Muy bien, así que probablemente no, ¿verdad? 711 00:36:53,380 --> 00:36:56,740 Al menos la mayoría de nosotros, si no es verde, más probable es que te vas 712 00:36:56,740 --> 00:36:57,440 a ser, lo que sea. 713 00:36:57,440 --> 00:36:58,950 Al igual, quiero ingresar a este sitio web. 714 00:36:58,950 --> 00:37:00,200 Es por eso que estoy aquí. 715 00:37:00,200 --> 00:37:02,390 Voy a iniciar la sesión, no obstante. 716 00:37:02,390 --> 00:37:04,500 >> Como acotación al margen, Chrome es un poco mejor acerca de esto. 717 00:37:04,500 --> 00:37:07,990 Pero hay una gran cantidad de navegadores como Firefox, por ejemplo, al menos por 718 00:37:07,990 --> 00:37:12,190 algún tiempo, en ese icono del candado Es decir, en realidad se puede poner cualquier 719 00:37:12,190 --> 00:37:13,250 icono de los tuyos. 720 00:37:13,250 --> 00:37:17,480 Déjame ver cuál es la última versión de Firefox parece. 721 00:37:17,480 --> 00:37:20,040 Así que si vamos a CS50.net. 722 00:37:20,040 --> 00:37:21,580 >> Aceptar, por lo que han conseguido mejor así. 723 00:37:21,580 --> 00:37:24,970 Lo que los exploradores solían hacer es como, esto es, por ejemplo, [? De SAAS?] 724 00:37:24,970 --> 00:37:25,790 cresta hasta aquí. 725 00:37:25,790 --> 00:37:29,240 Ese es el llamado favorita icono para un sitio web. 726 00:37:29,240 --> 00:37:30,190 Hace años - 727 00:37:30,190 --> 00:37:34,720 Hace realidad no es tan larga - que poco escudo habría sido justo 728 00:37:34,720 --> 00:37:36,560 aquí al lado de la URL. 729 00:37:36,560 --> 00:37:40,300 Debido a algún genio decidió que le basta con ver bastante con clase para tener 730 00:37:40,300 --> 00:37:43,150 el logotipo de su derecho gráfica al lado de su URL. 731 00:37:43,150 --> 00:37:45,310 Y el diseño inteligente, que realmente es bastante convincente. 732 00:37:45,310 --> 00:37:47,240 >> Entonces, ¿qué tipo malo empezar a hacer? 733 00:37:47,240 --> 00:37:50,500 Ellos empezaron a cambiar sus favoritos iconos, o su icono por defecto para una 734 00:37:50,500 --> 00:37:55,250 Página principal de no ser una cresta pero un candado, que tenía 735 00:37:55,250 --> 00:37:56,600 absolutamente ningún sentido. 736 00:37:56,600 --> 00:37:59,760 Aparte de su icono favorito era un candado no tenía 737 00:37:59,760 --> 00:38:01,250 indicaciones de seguridad. 738 00:38:01,250 --> 00:38:04,040 >> Así que las lecciones aquí son una pareja que pienso. 739 00:38:04,040 --> 00:38:07,820 Una de ellas es que en realidad hay algunos mecanismos bien intencionados para 740 00:38:07,820 --> 00:38:12,850 enseñándonos a los usuarios acerca de la seguridad, incluso si ni siquiera eran conscientes de lo verde 741 00:38:12,850 --> 00:38:15,110 significado o lo que incluso HTTPS significado. 742 00:38:15,110 --> 00:38:19,130 Pero si esos mecanismos nos meten en la mala costumbre de sitios web de confianza 743 00:38:19,130 --> 00:38:23,390 cuando vemos esas señales positivas, Son muy fácil abusar como vimos 744 00:38:23,390 --> 00:38:26,480 hace un momento con algo tonto como esto. 745 00:38:26,480 --> 00:38:29,100 >> Así que el secuestro de sesiones entra en jugar, como hemos dicho antes, 746 00:38:29,100 --> 00:38:30,510 con las galletas, por ejemplo. 747 00:38:30,510 --> 00:38:32,130 ¿Y qué significa esto realmente? 748 00:38:32,130 --> 00:38:35,930 Bien con el secuestro de sesión se trata todo sobre el robo de las cookies de alguien. 749 00:38:35,930 --> 00:38:39,860 Así que si abro Chrome aquí, por ejemplo, y abro el Inspector 750 00:38:39,860 --> 00:38:41,550 aquí y voy a La ficha Red - 751 00:38:41,550 --> 00:38:42,830 y nosotros hemos hecho esto antes - 752 00:38:42,830 --> 00:38:48,900 y me voy a algo así como http://facebook.com Enter, en su conjunto 753 00:38:48,900 --> 00:38:52,280 montón de cosas va a través de la pantalla porque de todas las imágenes y CSS y 754 00:38:52,280 --> 00:38:53,490 JavaScript archivos. 755 00:38:53,490 --> 00:38:59,420 >> Pero si miro a este de aquí noto que Facebook está hecho plantando uno 756 00:38:59,420 --> 00:39:02,310 o más cookies en mi navegador aquí. 757 00:39:02,310 --> 00:39:05,610 Así que estos son esencialmente la mano sellos que me representan. 758 00:39:05,610 --> 00:39:08,580 Y ahora espero que mi navegador se presentar una y otra vez cuando 759 00:39:08,580 --> 00:39:10,560 revisitar ese sitio web. 760 00:39:10,560 --> 00:39:15,810 Pero eso sólo es seguro, nos dijo un hace un par de semanas, si está usando SSL. 761 00:39:15,810 --> 00:39:18,860 >> Pero incluso SSL en sí puede verse comprometida. 762 00:39:18,860 --> 00:39:21,800 Considere la posibilidad de, después de todo el camino SSL funciona. 763 00:39:21,800 --> 00:39:28,860 Cuando su navegador se conecta a una distancia servidor a través de https://, cuento largo, 764 00:39:28,860 --> 00:39:30,110 criptografía está involucrado. 765 00:39:30,110 --> 00:39:34,750 No es tan simple como César o Visionaire o incluso DES, DES de un 766 00:39:34,750 --> 00:39:36,110 tiempo atrás en PSet2. 767 00:39:36,110 --> 00:39:37,410 Es más sofisticado que eso. 768 00:39:37,410 --> 00:39:39,110 Se llama la criptografía de clave pública. 769 00:39:39,110 --> 00:39:42,845 Pero realmente grande y realmente aleatoria números se utilizan para scramble 770 00:39:42,845 --> 00:39:47,125 información entre el punto A, usted, y el punto B, como facebook.com. 771 00:39:47,125 --> 00:39:52,570 >> Pero el problema es, ¿cuántos de nosotros otra vez nunca escriba https:// para empezar 772 00:39:52,570 --> 00:39:55,790 nuestra conexión con sitios Web en ese modo seguro? 773 00:39:55,790 --> 00:40:00,900 Quiero decir, ¿cuántos de ustedes incluso escriba http://facebook.com? 774 00:40:00,900 --> 00:40:02,290 Muy bien, si lo hace, como, hola. 775 00:40:02,290 --> 00:40:03,510 Usted no necesita hacer eso nunca más, ¿verdad? 776 00:40:03,510 --> 00:40:05,190 El navegador averiguarlo. 777 00:40:05,190 --> 00:40:08,070 >> Pero la mayoría de nosotros de hecho sólo tienes que escribir facebook.com. 778 00:40:08,070 --> 00:40:10,960 Porque si estamos usando un navegador, el los navegadores se han vuelto lo suficientemente inteligente como por 779 00:40:10,960 --> 00:40:14,920 2013 para asumir, si usted está usando un navegador, se escribe en una dirección, 780 00:40:14,920 --> 00:40:18,550 probablemente desee acceder a ella no a través de correo electrónico o mensaje instantáneo. 781 00:40:18,550 --> 00:40:21,250 ¿Te refieres a HTTP y el puerto 80. 782 00:40:21,250 --> 00:40:22,970 Esos convenios han sido adoptados. 783 00:40:22,970 --> 00:40:24,830 >> Pero, ¿cómo funciona la redirección? 784 00:40:24,830 --> 00:40:26,170 Bueno, fíjate en lo que pasa aquí. 785 00:40:26,170 --> 00:40:27,590 Si vuelvo a Chrome - 786 00:40:27,590 --> 00:40:31,920 y vamos a hacer esto en incognito el modo de manera que todos los de mi 787 00:40:31,920 --> 00:40:33,620 las cookies son desechados. 788 00:40:33,620 --> 00:40:38,130 Y déjame ir aquí para, de nuevo, facebook.com. 789 00:40:38,130 --> 00:40:39,490 Y vamos a ver qué pasa. 790 00:40:39,490 --> 00:40:43,372 >> Recordemos que la primera solicitud fue de hecho sólo por facebook.com. 791 00:40:43,372 --> 00:40:46,580 Pero ¿cuál fue la respuesta que me dieron? 792 00:40:46,580 --> 00:40:48,520 No fue un 200 OK. 793 00:40:48,520 --> 00:40:53,550 Fue 300, o 301, que es un redirigir diciéndome que vaya a 794 00:40:53,550 --> 00:40:59,050 http://www.facebook.com, que es donde Facebook quiere que vaya. 795 00:40:59,050 --> 00:41:01,900 Pero entonces, si nos fijamos en la siguiente solicitud, y hemos visto esto antes, 796 00:41:01,900 --> 00:41:04,370 note lo que su segunda respuesta es. 797 00:41:04,370 --> 00:41:10,280 Específicamente que me quieren ahora ir a la versión SSL de Facebook. 798 00:41:10,280 --> 00:41:11,800 >> Así que aquí está la oportunidad. 799 00:41:11,800 --> 00:41:15,440 Esta es una característica maravillosamente útil apenas del Web y HTTP. 800 00:41:15,440 --> 00:41:19,570 Si el usuario final como Facebook me quiere para permanecer en la versión segura de su 801 00:41:19,570 --> 00:41:20,850 página web, perfecto. 802 00:41:20,850 --> 00:41:23,130 Me redirigirán por mí mismo. 803 00:41:23,130 --> 00:41:25,250 Y por lo que no tengo que igualar pensar en eso. 804 00:41:25,250 --> 00:41:29,200 >> Pero lo que si entre los puntos A y B, entre usted y Facebook, hay un poco de 805 00:41:29,200 --> 00:41:32,220 malo de la película, hay algún sistema administrador de Harvard que es curioso 806 00:41:32,220 --> 00:41:34,240 para ver quiénes son tus amigos. 807 00:41:34,240 --> 00:41:36,760 ¿O hay alguna - 808 00:41:36,760 --> 00:41:38,340 Hace años, esto solía sonar loco - 809 00:41:38,340 --> 00:41:41,950 pero hay alguna entidad gubernamental como la NSA que está realmente interesado 810 00:41:41,950 --> 00:41:44,390 en quién estás metiendo en Facebook. 811 00:41:44,390 --> 00:41:45,910 ¿Dónde está la oportunidad allí? 812 00:41:45,910 --> 00:41:49,305 Bueno, siempre y cuando alguien tiene suficiente acceso técnico inteligente y que tienen 813 00:41:49,305 --> 00:41:53,350 a su propia red a través de Wi-Fi o algún cable físico, 814 00:41:53,350 --> 00:41:54,570 ¿qué podían hacer? 815 00:41:54,570 --> 00:41:57,520 >> Bueno, si están en la misma red que usted y ellos saben algo acerca de 816 00:41:57,520 --> 00:42:02,050 Direcciones TCP / IP e IP y DNS y cómo todo eso funciona, lo que si que 817 00:42:02,050 --> 00:42:05,970 hombre en el medio, lo que si que Nacional Agencia de Seguridad, lo que sea 818 00:42:05,970 --> 00:42:11,480 Puede ser, pero ¿qué pasa si esa entidad simplemente responde más rápidamente que Facebook para 819 00:42:11,480 --> 00:42:15,820 su solicitud HTTP y dice: oh, estoy Facebook. 820 00:42:15,820 --> 00:42:19,300 Adelante, y aquí está el HTML para facebook.com. 821 00:42:19,300 --> 00:42:20,720 >> Las computadoras son bastante maldito rápido. 822 00:42:20,720 --> 00:42:25,990 Así que se podría escribir un programa que se ejecuta en un servidor como nsa.gov que cuando se 823 00:42:25,990 --> 00:42:29,790 oye una solicitud suya para facebook.com, muy rápidamente detrás de la 824 00:42:29,790 --> 00:42:34,000 escenas consigue la realización facebook.com reales perfectamente [? esque?] asegurar 825 00:42:34,000 --> 00:42:38,290 Conexión SSL entre NSA y entre Facebook, consiguiendo que el HTML muy 826 00:42:38,290 --> 00:42:42,670 seguridad de la página de inicio de sesión, y luego el servidor NSA sólo te responde 827 00:42:42,670 --> 00:42:44,942 con una página de inicio de sesión para facebook.com. 828 00:42:44,942 --> 00:42:49,120 >> Ahora, ¿cuántos de ustedes se daría cuenta que está utilizando Facebook a través de HTTP 829 00:42:49,120 --> 00:42:53,375 todavía en ese punto porque has conectada accidentalmente a nsa.gov y 830 00:42:53,375 --> 00:42:53,870 no Facebook? 831 00:42:53,870 --> 00:42:54,980 Las direcciones URL no cambia. 832 00:42:54,980 --> 00:42:57,040 Todo esto se está haciendo detrás de las escenas. 833 00:42:57,040 --> 00:42:59,470 Pero la mayoría de nosotros, incluido yo mismo, probablemente no se daría cuenta 834 00:42:59,470 --> 00:43:00,800 un detalle tan insignificante. 835 00:43:00,800 --> 00:43:05,510 >> Así que usted podría tener un perfectamente viable conexión entre usted y lo que 836 00:43:05,510 --> 00:43:08,660 pensar es Facebook, pero hay una llamado hombre en el medio. 837 00:43:08,660 --> 00:43:12,480 Y este es un término general para el hombre en el plan de ataque en el que tiene un poco de 838 00:43:12,480 --> 00:43:17,670 entidad entre usted y el punto B que es de alguna manera manipular, robar, o 839 00:43:17,670 --> 00:43:18,960 ver sus datos. 840 00:43:18,960 --> 00:43:22,750 Así que incluso SSL no es segura, sobre todo si usted ha sido infectado por 841 00:43:22,750 --> 00:43:26,790 no encenderlo debido a cómo éstos mecanismos subyacentes trabajan realmente. 842 00:43:26,790 --> 00:43:30,670 >> Así que una lección de hoy, entonces también lo es si Realmente quiero ser paranoico - 843 00:43:30,670 --> 00:43:32,110 e incluso aquí hay amenazas - 844 00:43:32,110 --> 00:43:37,112 realmente debería empezar a recibir en el hábito de escribir en https://www 845 00:43:37,112 --> 00:43:39,850 cualquier nombre de dominio que realmente se preocupan. 846 00:43:39,850 --> 00:43:41,820 >> Y en un aparte también hay otra amenaza con 847 00:43:41,820 --> 00:43:43,410 respecto al secuestro de sesión. 848 00:43:43,410 --> 00:43:47,440 Muy a menudo la primera vez que visita un sitio web como facebook.com, a menos que el 849 00:43:47,440 --> 00:43:51,050 servidor se ha configurado para decir que que sello en la mano se puso sobre ti 850 00:43:51,050 --> 00:43:56,140 ayer se debe garantizar su propia seguridad, su navegador podría muy bien, sobre 851 00:43:56,140 --> 00:44:00,620 visitan cosas como facebook.com google.com, twitter.com, su navegador 852 00:44:00,620 --> 00:44:04,280 podría presentar ese sello en la mano sólo ser abofeteado abajo y dijo que no. 853 00:44:04,280 --> 00:44:05,660 Usar SSL. 854 00:44:05,660 --> 00:44:07,030 >> Pero es demasiado tarde en ese punto. 855 00:44:07,030 --> 00:44:10,940 Si ya ha enviado la mano estampar, su cookie, en el claro con 856 00:44:10,940 --> 00:44:15,180 sin SSL, usted tiene una fracción de segundo vulnerabilidad en la que alguien husmeando 857 00:44:15,180 --> 00:44:19,530 su tráfico, ya sea compañero de cuarto o de la NSA, a continuación, puede utilizar esa misma cookie, y 858 00:44:19,530 --> 00:44:23,860 con un poco de conocimiento técnico, presentarlo como su propio. 859 00:44:23,860 --> 00:44:25,930 >> Otro ataque que podría no han pensado. 860 00:44:25,930 --> 00:44:30,120 Este es realmente el que si te equivocas esto por escrito algún sitio web que 861 00:44:30,120 --> 00:44:31,580 utiliza alguna manera de SQL. 862 00:44:31,580 --> 00:44:34,610 Así que aquí, por ejemplo, es una pantalla disparo de inicio de sesión de Harvard. 863 00:44:34,610 --> 00:44:36,380 Y este es un ejemplo general de algo con un 864 00:44:36,380 --> 00:44:37,480 nombre de usuario y contraseña. 865 00:44:37,480 --> 00:44:38,440 Súper común. 866 00:44:38,440 --> 00:44:41,310 Así que vamos a suponer que existe y SSL no hay hombre en el medio o 867 00:44:41,310 --> 00:44:41,920 nada de eso. 868 00:44:41,920 --> 00:44:45,660 Ahora nos estamos enfocando en el servidor de código que puede escribir. 869 00:44:45,660 --> 00:44:49,830 >> Bueno, cuando escribo en un nombre de usuario y contraseña, supongamos que el servicio de PIN 870 00:44:49,830 --> 00:44:51,740 se implementa en PHP. 871 00:44:51,740 --> 00:44:53,990 Y es posible que tenga algo de código en ese servidor así. 872 00:44:53,990 --> 00:44:57,740 Obtener el nombre de usuario del mensaje súper global y obtener la contraseña, y luego 873 00:44:57,740 --> 00:45:01,130 si están utilizando algún pset7 como código hay una función de consulta 874 00:45:01,130 --> 00:45:01,820 eso podría hacer esto. 875 00:45:01,820 --> 00:45:06,320 Selecciona estrella de usuarios donde nombre de usuario es igual que y la contraseña es igual que. 876 00:45:06,320 --> 00:45:08,120 >> Eso parece, a primera vista, totalmente razonable. 877 00:45:08,120 --> 00:45:11,090 Esto es código PHP válido sintácticamente. 878 00:45:11,090 --> 00:45:13,160 Lógicamente no hay nada mal con esto. 879 00:45:13,160 --> 00:45:15,710 Es de suponer que hay algunas líneas más que realmente hacer algo con la 880 00:45:15,710 --> 00:45:18,150 resultado que vuelve de la base de datos. 881 00:45:18,150 --> 00:45:20,580 Pero esto es vulnerable para la siguiente razón. 882 00:45:20,580 --> 00:45:23,760 >> Tenga en cuenta que, al igual que un buen ciudadano, He puesto entre comillas, solo 883 00:45:23,760 --> 00:45:25,380 citas, el nombre de usuario. 884 00:45:25,380 --> 00:45:26,980 Y lo pongo entre comillas simples la contraseña. 885 00:45:26,980 --> 00:45:28,830 Y eso es una buena cosa porque son No se supone que los números. 886 00:45:28,830 --> 00:45:30,660 Por lo general van a ser texto. 887 00:45:30,660 --> 00:45:32,290 Así que estoy citándolos como cuerdas. 888 00:45:32,290 --> 00:45:37,470 >> Y si ahora avanzando en lo que si - y me he quitado las balas de la 889 00:45:37,470 --> 00:45:38,870 Servicio de PIN temporal - 890 00:45:38,870 --> 00:45:41,650 lo que si trato de iniciar la sesión como Presidente [? Scroob?] 891 00:45:41,650 --> 00:45:52,540 pero afirmo que mi contraseña es 12345 'OR '1' = '1, y el aviso 892 00:45:52,540 --> 00:45:53,830 lo que no he hecho. 893 00:45:53,830 --> 00:45:56,140 Yo no cierro el otro comilla simple. 894 00:45:56,140 --> 00:45:58,500 Porque soy bastante fuerte aquí como el malo de la película. 895 00:45:58,500 --> 00:46:01,870 Y estoy asumiendo que son estás no es muy bueno con su 896 00:46:01,870 --> 00:46:03,450 PHP y el código de MySQL. 897 00:46:03,450 --> 00:46:06,740 Supongo que usted no está comprobando para la presencia de citas. 898 00:46:06,740 --> 00:46:11,190 >> Así que lo que acaba de suceder es que cuando su usuario ha escrito en esa cadena, 899 00:46:11,190 --> 00:46:15,060 la consulta que está a punto de crear un aspecto como este. 900 00:46:15,060 --> 00:46:18,180 Y cuento largo, si usted y algo juntos o usted o algo 901 00:46:18,180 --> 00:46:21,740 juntos esto va a volver una fila de la base de datos. 902 00:46:21,740 --> 00:46:26,570 Debido a que es siempre el caso de que 1 es igual a 1. 903 00:46:26,570 --> 00:46:30,400 >> Y sólo porque usted no anticipó que sus usuarios, bueno o malo, podría 904 00:46:30,400 --> 00:46:35,340 tener un apóstrofo en su nombre que han creado una consulta SQL que sigue siendo 905 00:46:35,340 --> 00:46:39,040 válida, y volverá ahora más resultados lo que podría haber previsto. 906 00:46:39,040 --> 00:46:42,340 Y por lo que este chico malo ahora tiene potencialmente conectado a su servidor 907 00:46:42,340 --> 00:46:47,060 debido a que su base de datos se vuelve una fila incluso si él o ella no tiene idea de lo que 908 00:46:47,060 --> 00:46:49,410 [? De Scroob?] Contraseña real es. 909 00:46:49,410 --> 00:46:50,640 >> Oh, me di cuenta de un error aquí. 910 00:46:50,640 --> 00:46:53,260 Debería haber dicho contraseña es igual 12345 como el anterior 911 00:46:53,260 --> 00:46:54,990 ejemplo o 1 es igual a 1. 912 00:46:54,990 --> 00:46:56,400 Lo arreglaré en línea. 913 00:46:56,400 --> 00:46:59,960 >> Entonces, ¿por qué nos hemos usted utilizando la consulta funcionar con signos de interrogación? 914 00:46:59,960 --> 00:47:04,000 Una de las cosas la función de consulta lo hace para usted es que se asegura de que 915 00:47:04,000 --> 00:47:07,660 cuando se pasa de argumentos después de la comas aquí de esta manera que la consulta 916 00:47:07,660 --> 00:47:10,330 que se envía a la realidad base de datos se parece a esto. 917 00:47:10,330 --> 00:47:13,830 Mucho más feo a la vista, pero de vuelta barras han sido automáticamente 918 00:47:13,830 --> 00:47:19,030 insertada para evitar que precisamente ataque de inyección que mostré un 919 00:47:19,030 --> 00:47:20,270 Hace momento. 920 00:47:20,270 --> 00:47:24,930 >> Ahora, un XKCD divertido que pensé en tirar aquí que espero que ahora debe ser una 921 00:47:24,930 --> 00:47:28,546 poco más comprensible es este de aquí. 922 00:47:28,546 --> 00:47:39,460 923 00:47:39,460 --> 00:47:40,265 >> ¿Un poco? 924 00:47:40,265 --> 00:47:42,370 Tal vez necesitamos un poco más discusión sobre eso. 925 00:47:42,370 --> 00:47:47,810 Así que esto está aludiendo a un niño pequeño llamado Bobby quien ha tomado alguna manera 926 00:47:47,810 --> 00:47:52,250 ventaja de un sitio web que es sólo confiando en que lo que el usuario ha escrito 927 00:47:52,250 --> 00:47:55,100 en que no es, de hecho, el código SQL, pero es de hecho una cadena. 928 00:47:55,100 --> 00:47:56,830 >> Ahora usted puede recordar que la caída - 929 00:47:56,830 --> 00:48:00,190 que podría haber visto esto - medios de caída eliminar una tabla, eliminar una base de datos. 930 00:48:00,190 --> 00:48:02,235 Así que si usted afirma, esencialmente, que su nombre es 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 muy bien podría engañar a la base de datos no sólo en la comprobación de que estás 934 00:48:09,370 --> 00:48:13,530 de hecho Robert, pero también punto y coma procederá a eliminar la tabla. 935 00:48:13,530 --> 00:48:17,560 >> Y así los ataques de inyección SQL puede realmente ser tan amenazador como este 936 00:48:17,560 --> 00:48:20,740 en donde se puede eliminar datos de alguien, Puede seleccionar más de datas 937 00:48:20,740 --> 00:48:23,440 previsto, puede insertar o actualizar datos. 938 00:48:23,440 --> 00:48:26,520 Y en realidad se puede ver esto en ella en ejercicio en el hogar, no para malicioso 939 00:48:26,520 --> 00:48:29,730 propósitos, pero sólo para la instrucción, alguna vez se le pide que ingrese 940 00:48:29,730 --> 00:48:35,180 en el sitio web, especialmente algún tipo de no muy público, sitio web muy popular, 941 00:48:35,180 --> 00:48:38,630 intentar iniciar sesión como John O'Reilly o alguien con un 942 00:48:38,630 --> 00:48:39,740 apóstrofo en su nombre. 943 00:48:39,740 --> 00:48:42,990 O, literalmente, sólo tienes que escribir el apóstrofe, presione Enter, y ver qué pasa. 944 00:48:42,990 --> 00:48:47,990 >> Y con demasiada frecuencia, por desgracia, la gente no han saneado sus insumos y 945 00:48:47,990 --> 00:48:51,690 se aseguró de que las cosas como las cotizaciones o puntos y comas son escapados. 946 00:48:51,690 --> 00:48:54,430 Es por eso que en pset7 damos que esta función de consulta. 947 00:48:54,430 --> 00:48:59,510 Pero no en virtud de apreciar exactamente lo que está haciendo por usted. 948 00:48:59,510 --> 00:49:01,800 >> Así que dicho esto, disfrutar de su uso la web esta semana. 949 00:49:01,800 --> 00:49:04,660 Y nos vemos el lunes. 950 00:49:04,660 --> 00:49:06,180 >> En la siguiente CD50. 951 00:49:06,180 --> 00:49:18,614 >> [MÚSICA]