>> [MUSIC]
>> DAVID J. MALAN: Alles klar.
Das ist also CS50 und dies ist das Ende der 10. Woche.
So einige von euch vielleicht gesehen haben bereits, ist aber in der letzten Zeit in Umlauf
ist ein Artikel, dass ich dachte, ich hätte gelesen ein Auszug aus und dann zeigen Sie ein
3 Minuten Video, das malt das gleiche Bild.
Es war wirklich eine rührende Geschichte, ich dachte, dieser Schnittpunkt der
reale Welt mit wirklich überzeugenden nutzt der Technik.
>> So wurde der Artikel mit dem Titel "Ein Junge verschläft am Zug, nutzt Google Maps
Familie 25 Jahre später zu finden. "Und die ersten paar Absätze waren,
"Wenn Saroo fünf Jahre alt war ging er mit seinem älteren Bruder für schnorren
ändern auf einem Personenzug in einer Stadt, etwa zwei Stunden
aus seiner kleinen Heimatstadt.
Saroo müde wurde und hüpfte auf ein Nähe Bahnhof, wo er dachte, seine
Bruder war, dann schlief ein.
Als er aufwachte, war er in Kalkutta, fast 900 Meilen entfernt.
Saroo versucht, seinen Weg zu finden zurück, aber er wusste nicht,
der Name seiner Heimatstadt.
Und als kleiner Junge Analphabeten in einem riesigen Stadt voller vergessenen Kinder hatte er
praktisch keine Chance, nach Hause.
>> Er war ein Straßenkind für eine Weile, bis eine lokale Adoptionsvermittlungsstelle süchtig
ihn mit einem australischen Paar die brachte ihn nach
leben in Hobart, Tasmanien.
Saroo bewegt dort gelernt Englisch, und wuchs.
Aber er hörte nie auf der Suche nach seine Familie und seine Heimatstadt.
>> Jahrzehnte später entdeckte er Google Erde und folgte Schienen.
Und indem er sich einen vorgeschriebenen Radius je nachdem, wie lange er dachte, er sei
Einschlafen und wie schnell er dachte, der Zug ging, wusste er, er hatte aufgewachsen
in einem warmen Klima, wusste er, er sprach Hindi als Kind, und er hatte gesagt,
, dass er sah, wie er war von East India.
>> Endlich, nach Jahren der Scheuer die Satelliten-Fotos, er
erkannte ein paar Sehenswürdigkeiten.
Und nachdem im Chat mit einem Administrator- von einem nahe gelegenen Stadt
Facebook-Seite, erkannte er, er würde nach Hause gefunden. "
>> So, hier ist dann das Video erzählen diese Geschichte aus seiner Perspektive.
>> [VIDEO PLAYBACK]
>> -Es war vor 26 Jahren, und ich war nur um zu drehen fünf.
Wir kamen zum Bahnhof und bestiegen wir einen Zug zusammen.
Mein Bruder sagte nur: Ich bleibe hier und ich werde wiederkommen.
Und ich dachte nur, na ja, wissen Sie, ich Genauso gut könnte nur schlafen gehen und
dann wird er nur mich aufwecken.
Und wenn ich aufwache, am nächsten Tag, die ganze Wagen war auf einem außer Kontrolle geratenen leer
Zug, eine Geisterbahn unter mir, ich weiß nicht, wo.
>> Ich wurde nach Australien verabschiedet einer australischen Familie.
Und Mom hatte mein Zimmer dekoriert mit die Karte von Indien, die sie
setzen neben meinem Bett.
Ich wachte jeden Morgen zu sehen, dass Karte, und damit es irgendwie hielt die
Erinnerungen lebendig.
>> Die Leute würden sagen, du bist zu versuchen finden Sie eine Nadel im Heuhaufen.
Saroo, wirst du nie finden.
Ich hätte blinkt der Orte, die Früher habe ich zu gehen, die Blitze
von meiner Familie Gesichter.
Es war das Bild meiner Mutter sitzt sich mit gekreuzten Beinen
nur gerade ihren Schrei.
Das Leben ist nur so schwer.
Das war mein Schatz.
>> Und ich war in Google Map suchen und klar, es ist Google Earth als gut.
In einer Welt, wo man in I vergrößern begann, all diese Gedanken zu haben und
welche Möglichkeiten die könnte dies für mich tun.
Ich sagte mir, na ja, Sie wissen, Sie haben alle die fotografische
Erinnerungen und Sehenswürdigkeiten, wo du bist aus, und Sie wissen, was
die Stadt aussieht.
Dies könnte eine Anwendung sein, dass Sie verwenden können, um Ihren Weg zurück zu finden.
>> Ich dachte, na ja, ich werde einen Punkt setzen auf Calcutta Bahnhof in einem Radius
Linie, dass Sie sollten suchen in dieser Gegend.
Ich stieß auf diesen Gleisen.
Und ich begann nach und ich kam zu ein Bahnhof, der das reflektierte
gleiche Bild, die in meiner Erinnerung war.
>> Alles abgestimmt.
Ich dachte nur, yep.
Ich weiß, wohin ich gehe.
Ich werde einfach die Karte lassen, dass ich habe in meinem Kopf zu mir führen und mich
Zurück zu meiner Heimatstadt.
>> Ich kam zu der Haustür des Hauses dass ich geboren wurde, und ging um
etwa fünfzehn Meter um die Ecke.
Es wurde drei Damen draußen benachbart zueinander.
Und die mittlere trat vor.
Und ich dachte, das ist deine Mutter.
Sie kam nach vorne, umarmte sie mich, und wir waren dort für etwa fünf Minuten.
>> Sie packte meine Hand und nahm sie mich an das Haus und bekam am Telefon und sie
klingelte meine Schwester und meinen Bruder zu sagen dass dein Bruder hat gerade alle die
Plötzlich erschien wie ein Gespenst.
>> Und dann war die Familie wieder vereint.
Alles ist gut.
Ich helfe meiner Mutter aus.
Sie muss nicht entfernt werden schuften.
Sie kann dazu führen, den Rest ihr Leben in Frieden.
>> Es war eine Nadel im Heuhaufen, aber die Nadel war da.
Alles ist da.
Alles, was wir in der Welt haben ist der Hahn eines Knopfes.
Aber du musst den Willen haben und die Entschlossenheit, es zu wollen.
>> [END VIDEO PLAYBACK]
>> Also eine wirklich süße Geschichte.
Und es tatsächlich erinnert mich an eine ganz Thema, das immer ist schon ein bisschen
der Aufmerksamkeit spät in The Crimson, mehr national im Allgemeinen.
Zumal MOOCs nehmen das Stadium der spät.
MOOCs wobei diese massive und offen Online-Kurse, von denen CS50 ist eins.
>> Und die Leute darüber reden, wie zum So sind die Geisteswissenschaften nicht wirklich
Nachholbedarf oder sind nicht annähernd so in der Mode, wie sie einmal waren.
Und ich möchte Sie ermutigen, Jungs, viel wie Jonathan hat am Montag, zu denken,
über, wie Sie Ausfahrt 50, und wir wissen, bereits etwa 50% von euch nicht
weiter auf einen anderen Computer zu übernehmen Wissenschaft natürlich, und das ist völlig
fein und erwartet.
Denn eines der übergeordneten Ziele einer Klasse wie dieser ist wirklich
Sie befähigen Jungs mit nur ein Verständnis davon, wie all dieses Zeug
funktioniert und wie diese Welt von Technologie funktioniert.
>> So dass, wenn Sie sich wieder in Ihrem eigenen Welten, ob es sich pre-med oder
ob es sich um die Geisteswissenschaften oder die Sozialwissenschaften oder einem anderen Bereich
insgesamt, dass euch bringen einige technische Kenntnisse an den Tisch und
helfen, kluge Entscheidungen zu treffen, wenn es kommt auf die Verwendung von und
Einführung der Technologie in die Welt.
>> Zum Beispiel war ich in der letzten Zeit erinnert Auch zwei der Bachelor-
Klassen, die ich vor zwei Jahren, das waren solche einfachen Einsatz von Technologien
aber immer so überzeugend.
Erste Nächte mit Professor Tom Kelly wenn du die Klasse gemacht.
Es ist eine Klasse für klassische Musik diese Phase hier, wo Sie lernen ein
wenig etwas über Musik.
Es ist eigentlich Erste Nights dass CS50 lieh die Idee der Titel für die
weniger komfortabel zwischen und komfortabler.
>> In meiner Zeit hatten sie verschiedene Strecken für Kinder mit absolut keine Musik
erleben wie ich, und dann Kinder, die worden waren, da sie die Durchführung
fünf Jahre sind.
Und die Klasse, zum Beispiel, hatte gerade eine Website wie die meisten anderen, aber es
war eine Website, die Sie erlaubt erforschen Musik drauf und wiedergeben
musikalische Clips aus der Klasse, aus dem Web, und verwenden Sie nur Technologie in einem sehr
nahtlose Weise.
>> Eine andere Klasse, dass ich Jahre später geprüft, im wesentlichen, grad school,
Anthro 1010, Einleitung zu Archäologie hier.
Es war erstaunlich.
Und eines der spannendsten dennoch super offensichtlich im Nachhinein, verwendet der
Software war, dass die Professoren in Diese Klasse verwendet Google Earth.
Wir waren auf der anderen Straßenseite sitzt in einigen Hörsaal.
Und man konnte nicht reisen, zum Beispiel, in den Nahen Osten in den dig, dass man
der Professoren hatte gerade wieder kommen, aber wir konnten, dass praktisch tun, indem
herumfliegen in Google Earth und Mit Blick auf eine Vogelperspektive auf die
Ausgrabungsstätte er gerade zurückgekehrt war von vor einer Woche.
>> Also ich möchte Sie ermutigen, Jungs, vor allem in den Geisteswissenschaften, zu gehen
zurück zu den Abteilungen nach diesem Klasse bringen Sie Ihre letzten Projekte
mit Ihnen oder eigene Ideen, und sehen genau das, was Sie tun können, um Ihre einflößen
eigenen Feldern in geistes-oder jenseits mit ein wenig von dieser Art von
Sache, die wir erforscht hier in CS50.
>> Also mit diesem Bild gemalt, dachte wir würden versuchen, zwei Dinge anzugehen heute.
One, versuchen, Ihnen ein Gefühl der wo Sie sich nach 50 gehen.
Und vor allem, wenn Sie sich für befasst sich mit einem Web-basierten Projekt wie
unglaublich weit verbreitet, wie man gehen kann über Ausziehen alle CS50 die
Stützräder und gehen draußen auf Ihre eigene und nicht mehr auf eine verlassen
PDF oder eine Spezifikation eines pset?
Nicht mit auf eine CS50 verlassen Gerät nicht mehr.
Aber kann wirklich ziehen sich von Ihrem Schopf aus dem Sumpf.
>> Mit dieser sagte, C-Basis endgültige Projekte sind willkommen.
Dinge, die den Ständer verwenden für ein tragbares Bibliothek
Grafiken sind willkommen.
Wir wissen nur, dass statistisch eine Menge Menschen abbeißen Projekte in PHP und
Python und Ruby und MySQL und andere Umgebungen, so dass wir einige der Bias
unsere Ausführungen zu, dass.
>> Aber ein kurzer Blick zurück.
Also nahmen wir in der pset7 gewährt Tatsache, dass $ _SESSION existierte.
Das war ein super global, ein globales, assoziatives Array.
Und was bedeutet das können Sie tun?
Funktionell, was ist das verfügen das gibt uns?
Ja?
Um die ID des Benutzers zu verfolgen.
Und warum ist das nützlich?
Um der Lage sein, innerhalb dieses Super speichern globalen JHarvard oder [? Scroobs?]
Malan oder die Benutzer-ID, wenn er oder sie eine Website besucht.
>> Genau.
So müssen Sie sich nicht anmelden in wieder und wieder.
Es wäre eine wirklich lahme World Wide Web sein wenn jedes Mal, wenn Sie auf einen Link klickt
auf einer Website wie Facebook oder jedes Mal Sie klickte auf einer E-Mail in Gmail Sie
musste erneut authentifizieren zu beweisen, dass es ist immer noch Sie und nicht Ihre Mitbewohner
wer könnte bis zu Ihrem gegangen sind Computer in Ihrer Abwesenheit.
>> So verwenden wir nur SESSION daran erinnern, wer Sie sind.
Und wie wird dies umgesetzt unter der Haube?
Wie funktioniert eine Website, die verwendet, die Protokoll, dass Web-Browsern und Servern
sprechen, wie funktioniert HTTP, die eine ist Staatenlose Protokoll, sagen wir.
>> Und Staatenlose Ich meine, wenn Sie Verbindung zu einer Website, laden einige
HTMLs, einige JavaScript, einige CSS, Ihre Browser-Symbol aufhört zu drehen.
Sie haben noch eine ständige Verbindung der Server in der Regel.
Das war's.
Es gibt keinen Zustand gehalten ständig.
Also, wie ist SESSION so umgesetzt eine Möglichkeit, dass jedes Mal, wenn Sie einen Besuch
neue Seite, erinnert sich die Website wer du bist?
Was ist die zugrunde liegende Implementierung Detail?
Shout it out.
Es ist ein Wort.
>> Cookies.
In Ordnung.
So Cookies.
Nun, wie werden Cookies verwendet?
Wir erinnern daran, dass ein Cookie Allgemeinen nur ein Stück von Informationen.
Und es ist oft eine große zufällige Anzahl, aber nicht immer.
Und ein Cookie auf Ihrer Festplatte gepflanzt Laufwerk oder in den Arbeitsspeicher des Computers so
dass jedes Mal, wenn Sie erneut die gleiche Website, erinnert Ihrem Browser die
Server, ich bin user 1234567.
Ich bin Benutzer 1234567.
>> Und so lange der Server Erinnerung dass Benutzer ist 1234567
JHarvard, wird die Website einfach davon ausgehen, dass Sie, wer Sie sagen, Sie sind.
Und daran erinnern, dass wir diese Cookies präsentieren Art in Form eines
virtuelle Hand stehen.
Es ist in den HTTP-Header gesendet, nur um erinnern Sie den Server, die es gibt
denkt, dass Sie sind.
>> Natürlich, es gibt eine Bedrohung.
Welche Bedrohung geht diese öffnen uns für, wenn wir im Wesentlichen über eine Art Club
oder ein Vergnügungspark Mechanismus für das Erinnern, wer wir sind?
>> Wenn Sie kopieren jemand Cookie und die Entführung ihre Sitzung, so zu sprechen, Sie
können vorgeben, jemand anderes zu sein und die Website wahrscheinlich ist gerade dabei,
glauben.
So kommen wir darauf zurück.
Weil die andere Thema für heute über Empowerment ist auch im Gespräch
über die sehr beängstigend Welt in der wir leben und wie viel von dem, was Sie tun, auf
die Bahn, wie viel von dem, was Sie tun, auch auf Ihre Handys heute sein kann
von niemandem wirklich zwischen aufgespürt Sie und Punkt B.
>> Und Ajax, erinnern.
Wir sahen uns nur kurz auf diese, obwohl Sie schon mit ihm
indirekt in pset8 weil Sie sind Google Maps und weil du
mithilfe von Google Earth.
Google Maps und Google Earth nicht laden Sie die ganze Welt, um Ihre
Desktop, natürlich, die Moment, Sie laden pset8.
Es lädt nur einen Platz der Welt oder ein größerer Platz der Erde.
Und dann jedes Mal, wenn eine Art steuern außerhalb des Bereichs werden Sie vielleicht feststellen -
vor allem, wenn über eine langsame Verbindung - Sie vielleicht etwas grau für einen Moment zu sehen
oder ein bisschen von Fuzzy-Bilder als die Computer downloads mehr wie Fliesen,
mehr solche Bilder aus der Welt oder die Erde.
>> Und Ajax ist in der Regel der Technik durch welche Websites sind zu tun.
Wenn Sie mehr von der Karte, Ihre Browser wird Ajax, das ist zu verwenden
nicht selbst eine Sprache oder Technologie, es ist nur eine Technik.
Es ist die Verwendung von JavaScript zu holen Mehr Informationen von einem Server,
ermöglicht Ihrem Browser zu holen, was zu im Osten oder was im Westen von
Was ist sonst noch wobei in dieser Karte dargestellt.
Also das ist ein Thema, dass viele von Ihnen wird entweder direkt oder begegnen
indirekt über Abschlussarbeiten, wenn Sie wählen, um etwas, das ist zu machen
ähnlich dynamisch, dass das Abrufen von Daten von dritter Seite.
>> Also wir haben eine wirklich spannende am kommenden Mittwoch vor.
Quiz ein, die Informationen für die ist auf CS50.net bereits.
Wissen, dass es dann ein Review-Sitzung sein am kommenden Montag um 5:30.
Das Datum und die Uhrzeit wird bereits gebucht auf CS50.net, dass Über Blatt.
Und lassen Sie uns wissen Sie Fragen haben.
Pset8 mittlerweile bereits in Ihren Händen.
>> Und lassen Sie mich nur eine Adresse FAQ zu speichern Leute etwas Stress.
In den meisten Fällen ein Großteil der Chatter sehen wir bei der Bürozeiten und viel
die Fehler, die wir auf Discuss gemeldet sehe sind Bugs in der Tat eines Schülers Code.
Aber wenn Sie etwas gestoßen wie die Google Earth-Plug-in abstürzt
oder gar nicht arbeiten, und Sie sind zuversichtlich, es ist nicht wahr, es ist nicht ein
[? chamad?] Frage, ist es nicht ein Fehler, den Sie eingeführt in die
Verteilung Code.
>> Erkenne nur FYI -
Dies ist eine Art von Plan Z -
dass wir das letzte Mal verwendet, um dieses Problem gesetzt und wir rannten in ähnliche
Probleme gibt es eine Zeile Code in service.js Wesentlichen ist,
das sagt, schalten Gebäude auf.
Und sie arbeiten rund um die wir das letzte Mal tat dies in wieder Ecke Fällen, in denen
Studenten konnte einfach nicht das verflixte Sache zu arbeiten ist true in false ändern
daß eine Codezeile.
Und finden Sie es, wenn Sie suchen durch service.js.
>> Ich empfehle das nicht, weil Sie erstellen Sie die karge Landschaft
Cambridge, Massachusetts.
Dies wird buchstäblich platt Ihre Welt so dass alles, was Sie sehen, sind die Lehr-
Stipendiaten und natürlich Assistenten auf der Horizont und keine Gebäude.
Aber aus irgendeinem Grund erkennen, die Google Earth-Plug-in scheint immer noch zu sein,
Buggy ein Jahr später, so dass diese Eventuell ist Ihre Fail Save.
Also eher als Erholungsort zu Tränen, im Ferienort zu drehen Gebäude aus, wenn Sie wissen,
es ist das Plug-in, die nicht kooperierenden ist auf Ihrem Mac oder PC.
Aber dies ist wieder last resort, wenn Sie sind sicher, es ist nicht eine Wanze.
>> Also die Hackathon.
Ein paar Teaser nur Sie begeistern.
Wir hatten ein paar Absagen.
Und nur um ein Bild zu malen, was erwartet, dachte ich, ich würde Ihnen ein paar
Sekunden erinnern dieser Bildsprache vom letzten Jahr.
>> [MUSIC]
>> DAVID J. MALAN: Warten, oh.
Wir haben sogar unsere wörtlichen CS50 Shuttles.
>> [MUSIC]
>> DAVID J. MALAN: Also das ist, was sie erwartet Sie im Hinblick auf die Hackathon.
Und das wird eine Gelegenheit sein, klar sein, nicht zu Ihrem endgültigen starten
Projekte, sondern weiter arbeiten Ihre letzten Projekte neben
Klassenkameraden und Personal und viel Essen.
Und wieder, wenn du wach bist, um 5:00 Uhr nehmen wir Sie auf dem Weg zur IHOP.
>> Der CS50 fair, mittlerweile ist der Höhepunkt für die gesamte Klasse, wo
Sie bringen Ihre Laptops und Freunde, vielleicht sogar Familie in einem Zimmer auf dem Campus
auf der Straße zu zeigen Ihre Projekte auf Laptops, auf hohen Tischen
wie diese mit viel Essen und Freunde und Musik im Hintergrund,
sowie unsere Freunde aus der Industrie.
Firmen wie Facebook und Microsoft und Google und Amazon und Bündeln von
andere, so dass, wenn interessiert nur Anhörung über die reale Welt oder
Chat mit Leuten über reale Welt Praktikum oder Vollzeit Möglichkeiten,
wissen, dass einige unserer Freunde aus der Industrie wird da sein.
Und ein paar Bilder, die wir können Lack sind hier wie folgt.
>> [MUSIC]
>> DAVID J. MALAN: Alles klar.
Also das ist dann die CS50 fair.
So lasst uns nun daran gehen, eine Geschichte zu erzählen die wirklich helfen wir Ihnen hoffentlich
für Dinge wie Abschlussarbeiten.
So eine der wenigen Kleinigkeiten Samen Ihre Geist, entweder für Abschlussarbeiten
oder einfach nur allgemein für Projekte, die Sie können entscheiden, ob nach dem Angriff
der Kurs, werden diese alle dokumentiert auf manual.cs50.net wo die CS50
Handbuch, wo wir viele haben Techniken dokumentiert.
>> Und dies ist nur Kurzschrift für sagen, dass es existiert in der
Welt Dinge genannt SMS an E-Mail Gateways, die eine andere Art von ist
sagen, es gibt Servern in der ganzen Welt die wissen, wie man E-Mails zu konvertieren
Textnachrichten.
Also, wenn für Ihre Abschlussarbeit Sie wollen um irgendeine Art von mobilen Themen erstellen
Dienstleistung, die Sie an Freunde Benachrichtigung ermöglicht oder Benutzer, an Veranstaltungen auf dem Campus
oder was gerade in der D-Halle serviert in dieser Nacht oder eine solche Warnfunktion,
wissen, dass es einfach wie das Versenden ist ein E-Mail, die Sie mit PHPMailer
könnte für pset7 verwendet haben oder wir sahen kurz eine Woche oder so vor, um
Adressen wie diese.
>> Und in der Tat kann man Text diese Annahme Ihr Freund hat eine unbegrenzte SMS
Plan, und Sie wollen nicht zu berechnen ihnen $ 0,10.
Aber wenn Sie per E-Mail an Ihren Freund Sie wer den Verizon oder
AT & T mit Google Mail und nur dem Senden an ihre Telefonnummer an unabhängig von der
Sub-Domain ist, merkt man, wird eine Textnachricht zu senden.
>> Aber dies ist eines jener Dinge, vorsichtig sein.
Wenn Sie troll durch letztjährigen CS50 Videos, die ich glaube, es war eine schreckliche,
schrecklichen, schrecklichen Fehler, den ich in Code geschrieben endete das Senden über 20.000 SMS
Botschaften zu leben, unsere Schüler in der Klasse.
Und nur weil jemand bemerkt, dass sie waren immer mehrere Text
Nachrichten von mir hatte ich das nötige Kleingeld, um Kontrolle C schnell getroffen
und stoppen diesen Prozess.
Control-C, Sie sich erinnern, ist dein Freund in Fällen von Endlosschleife.
Also Vorsicht die Macht, die wir gerade gegeben haben Sie eher unverantwortlich, die meisten
wahrscheinlicher ist, auf meinen eigenen Erfahrungen basiert.
Aber das ist im Web und hat dort für einige Zeit gewesen.
>> In Ordnung.
So textmarks.com.
Also das ist eine Website.
Und es gibt Trauben von anderen da draußen wie gut, dass wir tatsächlich verwendet
Als eine Klasse für Jahre in der Lage sein zum Empfangen von Textnachrichten.
Leider ist das Senden von Kurzmitteilungen einfach wie E-Mails so.
Empfangen ist ein wenig härter, vor allem wenn Sie wollen, um eine haben
diese sexy Kurzwahlen das ist nur fünf oder sechs Ziffern lang sein.
>> So zum Beispiel, für die Jahre, die Sie waren in der Lage, eine Textnachricht zu senden - und Sie
Dies kann auch versuchen -
bis 41411.
Und das ist die Rufnummer für Dieses spezielle Start.
Und wenn Sie eine Nachricht an 41411 -
Ich werde einfach schreiben Sie es hier oben, so 41411 -
und dann schicken sie eine Nachricht mag SBOY für Shuttle Boy.
Und dann in etwas geben wie mather Quad.
So senden Sie diese SMS-Nachricht zu dieser Rufnummer.
Innerhalb von ein paar Sekunden sollten Sie zurück eine Antwort von dem CS50 Shuttle
Boy-Service, der das Shuttle Scheduling-Software, die wir hatten aus
draußen auf dem Netz für einige Zeit.
Und es wird zu reagieren Sie per SMS.
>> Denn was haben wir als Klasse getan, als ein Programmierer ist, Software zu schreiben,
konfiguriert unseren kostenlosen Account mit Text Noten für Textnachrichten gesendet hören
bei dieser Zahl SBOY.
Und was sie tun, ist vorne die Text Nachrichten an unsere PHP-basierte Website als
HTTP-Parameter sagen, hier.
Dieser Benutzer mit dieser Nummer Sie erhalten diese Textnachricht.
Mach damit, was du willst.
>> So schrieben wir eine Software, die auf Empfangen einer Zeichenfolge wie SBOY mather
Quad, analysieren wir es.
Wir herauszufinden, wo die Räume sind zwischen den Wörtern.
Und wir als Klasse entscheiden wie man darauf reagieren.
Und wenn Sie das jetzt versuchen, zum Beispiel, Sie sollten sehen, über eine Antwort innerhalb
einige Sekunden, gehen die nächsten Shuttles von mather dem Quad wenn überhaupt.
Und es gibt andere Haltestellen.
Sie können in Boylston oder andere geben stoppt auf dem Campus, und es sollte
erkennen diese Worte.
>> So parse.com.
Dies ist ein weiterer Service, den wir waren zeigt einige Studenten für
Abschlussarbeiten das ist wunderbar in, dass es kostenlos für ein
angemessenen Höhe der Nutzung.
Und wenn ich parse.com gehen du wirst sehen, dass dies ist eine Alternative zu
tatsächlich mit so etwas wie Ihren eigenen MySQL-Datenbank.
Und ehrlich gesagt, es ist nur Art faszinierend.
Dies ist, was drin ist der trüben auch an einem bewölkten Tag.
>> So parse.com ermöglicht es Ihnen, eine zu tun Haufen interessante Dinge.
Und es gibt andere Alternativen dazu gibt.
Zum Beispiel, können Sie sie als Back-End-Datenbank.
So brauchen Sie nicht zu haben ein Web-Hosting-Unternehmen.
Sie brauchen nicht zu haben, eine MySQL-Datenbank.
Sie können stattdessen ihre Back-End.
>> Wenn du tust ein mobiles Projekt für Android oder iOS oder dergleichen, wissen, dass
gibt es Dinge wie Push-Dienste so können Sie Benachrichtigungen an Ihre Freunde drücken
oder Ihrer Nutzer Bildschirmen zu Hause.
Und dann ein paar andere Funktionen.
>> Also, wenn Sie Interesse haben, lesen Sie diese Websites und Websites wie sie
zu sehen, wie viele andere Völker ' Schultern Sie stehen auf, um
wirklich coole Software der eigenen.
>> Jetzt in Bezug auf Authentifizierung, eine FAQ, ist, wie Sie tatsächlich garantieren
dass Ihre Anwender sind Menschen auf dem Campus, Harvard-Studenten oder Dozenten oder Mitarbeiter?
So CS50 verfügt über eine eigene Authentifizierung Dienst namens CS50 ID.
Gehen Sie zu dieser URL und Sie können Ihre beschränken Website zu jedermann mit einem Harvard
ID, zum Beispiel.
So wissen, dass wir damit umgehen.
Ihr solltet nicht im Geschäft sein zu sagen, was ist Ihre Harvard ID?
Was ist Ihr Harvard PIN?
Lassen Sie mich nun etwas zu tun mit ihm.
Wir tun alles.
Und was wir leiten Sie zurück zu geben ist jemand den Namen und die E-Mail-Adresse, aber
nichts empfindlich.
>> Eine App auf einem mobilen Gerät, kann es sein, , um auf einem mobilen Gerät zu arbeiten, aber
Es ist nicht ganz dafür konzipiert.
So werden Sie die Ausgaben bis Ende eine nicht triviale Höhe der Zeit zu tun.
Also ich würde entmutigen diesen Weg jetzt.
Das ist wirklich für gedacht Web-basierte Anwendungen.
>> So Web-Hosting.
Also, wenn Sie nicht auf zu sehen Homepage des Kurses -
und hier, wo wir eine Geschichte beginnen werde -
Web-Hosting ist alles über die Zahlung für in der Regel ein Service, Host einen Server im Besitz
von jemand anderem im Internet, die eine hat IP-Adresse, und Sie dann legen Sie Ihre
Website auf sie.
Und sie in der Regel geben Sie E-Mail- Konten und Datenbanken
und andere Funktionen.
>> Wisse, dass, wenn Sie nicht möchten, dass tatsächlich zahlen für solche, zu dieser URL gehen
dort und CS50 hat tatsächlich eine Non-Profit- Konto, das Sie verwenden können
eigentlich nicht http://projekt Innere des Gerätes
für Ihre Abschlussarbeit.
Wenn Sie tatsächlich wollen, dass es etwas sein wie, isawyouharvard.com,
Sie können kaufen, dass Domain-Namen - obwohl nicht, dass insbesondere ein - und
dann können Sie über Hosting auf eine gehen öffentlichen Web-Server wie können wir
euch hier durch.
>> Und in der Tat, wenn nicht vertraut, wenn Sie noch nie gewesen
isawyouharvard.com, ein, dorthin zu gehen.
Aber zwei, weiß, dass das ein jung war Frauennamen von Tej To Too zwei Toor
Jahren, vor drei Jahren, wer ein CS50 Alumni, die ein oder zwei Tage passiert
vor dem CS50 Messe schickte eine E-Mail zu ihrem Haus Mailingliste und voila.
Zwei Tage später von der CS50 fair, hatte sie Hunderte von Anwendern kriechend auf
einander auf ihrer Website und zu sagen, wie sie gesehen hatten
sie oder ihn auf dem Campus.
Also das ist eine der Lieblings-CS50 Erfolgsgeschichten aus
CS50 ein Abschlussprojekt.
>> So wie Sie darum, eine Website zu gehen mag, dass im Internet?
Nun, es gibt ein paar solcher Zutaten hier.
So einen haben Sie einen Domain-Namen zu kaufen.
Es gibt Orte in Bündeln von die Welt, von denen Sie
kaufen Sie einen Domain-Namen.
Und zum Beispiel eine, die wir empfehlen nur, weil es populär ist
und es ist billig heißt namecheap.com.
Aber man kann godaddy.com gehen und Dutzende andere da draußen.
Hier können Sie sich auf Bewertungen.
>> Aber zum größten Teil ist es nicht egal, von wem Sie
kaufen Sie einen Domain-Namen.
Und sie unterscheiden sich in Preis und sie variieren in Suffix.
Die Endungen wie. Com,. Net, . Org,. Io,. Tv, diejenigen
tatsächlich variieren im Preis.
Aber wenn wir wollten etwas tun cats.com können wir auf diese Website gehen,
klicken Sie auf Suchen.
Vermutlich ist dies eine wird angenommen.
Aber anscheinend catsagainst.com ist.
pluscats.com verfügbar ist.
Lovecats, catscorner, dampcats.net.
All diese hoffentlich pseudo zufällig erzeugt.
Wenn Sie möchten, cats.pw, $ 1500 nur, Das ist ein bisschen verrückt.
So jemand hat wirklich alle geschnappt die Katze ähnliche Domain-Namen hier für
unterschiedlichen Preisen.
>> Nebenbei, mal sehen.
Wer hat cats.com?
Wisst, dass ihr Jungs an haben Verfügung ziemlich
anspruchsvolle Befehle jetzt.
Wie kann ich buchstäblich geben wer ist cats.com?
Und wegen der Art, das Internet ist strukturiert man kann tatsächlich sehen, wer
registriert hat diese.
Offenbar ist diese Person [unverständlich] Verwendung eines Proxy-Dienst.
Wer also besitzt cats.com will nicht die Welt zu wissen, wer sie sind.
Also haben sie registriert werden, wenn durch einige zufällige Privacy Service.
Aber manchmal muss man eigentlich bekommen tatsächlichen Eigentümer.
>> Und das ist zu sagen, vor allem wenn Sie verfolgt eine Inbetriebnahme und Sie
wirklich wollen einige Domain-Namen und du bist bereit, jemand anderes bezahlen
Damit können Sie herausfinden, Kontakt Informationen auf diese Weise.
>> Aber auch interessant ist.
Lassen Sie mich scrollen bis zu diesem Teil.
Also das ist, dass gleiche Leistung.
Und dies ist nur klebrig.
So scheinbar cats.com kann Ihnen für den richtigen Preis.
Aber was ist interessant hier ist, dass die Name-Server -
Das ist die totale Missbrauch von was für ein Name Server sein soll - Ihren Namen
Server soll nicht sein thisdomainforsale.com.
Wenn wir tatsächlich so etwas wie wählen -
wählen wir etwas mehr legitim wie, wer ist google.com,
und blättern Sie hier.
Also hier -
was ist da passiert?
Interessante.
Darüber hinaus ist die -
wir halten es low key.
>> Wer ist mit.edu?
OK.
Dies ist hilfreich.
Also das ist, was ich mir erhofft hatte.
Legitime Verwendung des DNS-Dienstes.
Nameserver hier zeigen der folgende.
Dies ist MIT Art zu sagen, wenn jemand in der Welt, wo sie
sind, Typen in mit.edu und Hits Enter Ihren Laptop, ob Mac oder PC, werden
irgendwie schließlich herauszufinden, dass die Menschen in der Welt, was die wissen
IP-Adresse ist für mit.edu oder einen der Sub-Domains bei mit.edu oder irgendwelche
diese Server hier - und es tatsächlich sieht aus wie MITs Infrastruktur ist
ziemlich robust wie man es erwarten würde.
Sie haben mehrere Namen Servern Das ist gut für die Redundanz.
Und in der Tat, sie scheinen global sein verteilt auf der ganzen Welt.
Ein Bündel von denen scheint in den USA sein, ein paar in Asien, eine in Europa, zwei
in woanders.
>> Aber der Punkt hier ist, dass die DNS dass haben wir für selbstverständlich genommen und
allgemein als eine große Excel-Tabelle beschrieben das hat IP-Adressen und Domain-
Namen ist eigentlich ziemlich anspruchsvoll hierarchischen Service, so dass in der
Welt gibt es tatsächlich eine endliche Anzahl von Servern, die im Wesentlichen wissen, wo
alle. Coms sind oder alle die. Netze sind, die alle die
. Orgs sind, und so weiter.
>> Also, wenn Sie voran gehen und kaufen eine Domain Namen von einem Ort wie Name Günstige oder
Go Daddy oder jede andere Website, einer der die wichtigsten Schritte, die Sie tun müssen,
Sie, wenn Sie dies tun, auch für die endgültige Projekt ist zu sagen den Registrar
von wem Sie kaufen die Domain Namen, wer weiß, in der Welt Ihre
Website die IP-Adressen, die Ihre Nameserver sind.
>> Also, wenn Sie zum Beispiel die CS50 Hosting-Account - wir passieren zu müssen
dieses Konto durch dreamhost.com die eine
populären Web-Hosting-Unternehmen -
sie werden Ihnen sagen, dass Sie kaufen sollten Ihre Domain und der Welt sagen, dass
Ihrer Domain Name Server ns1.dreamhost.com, ns2.dreamhost.com,
und ns3.dreamhost.com.
>> Aber das ist es.
Der Kauf einer Domain Name bedeutet ihnen das Geld und immer Eigentum des
Domäne, aber es ist mehr wie Ein Mietobjekt though.
Man bekommt sie für ein Jahr und dann bill Sie wiederkehrend für den Rest der
Ihr Leben, bis Sie kündigen der Domain-Name.
Und dann sagen Sie ihnen, die Name-Server sind.
Aber dann bist du mit getan Ihr Registrar.
Und von dort werden Sie nur die Interaktion mit Ihre Web-Hosting-Unternehmen, das
in CS50 Fall wird DreamHost sein.
Aber noch einmal, mehr Dokumentation sein bereitgestellt, um Sie, wenn Sie sich entscheiden zu gehen
diesen Weg.
>> Also, wenn Sie dies tun, nach dem Kurs der Ende, einfach googeln Web-Hosting
Unternehmen wird wiederum Tausende von Optionen.
Und ich würde generell empfehlen Ihnen, fragen Sie Freunde, die einen benutzt haben könnte
Unternehmen vor, wenn sie empfehlen sie und hatte eine gute Erfahrung.
>> Da gibt es eine Menge von fly by night Web-Hosting-Unternehmen, wie ein Kerl in
seinem Keller mit einem Server das hat eine IP-Adresse.
Er hat etwas mehr RAM und Festplatte Raum und nur verkauft Webhosting
Konten, auch wenn es keine Möglichkeit gibt, dass Server umgehen konnte Hunderte von
Benutzer oder Tausende von Benutzern.
So erkennen Sie erhalten was man bezahlt.
>> Für eine ganze Weile für meine persönliche Hause Seite - und das war völlig akzeptabel
weil ich hatte dabei zwei Besucher pro Monat -
Ich zahlte, wie, $ 2,95 pro Monat.
Und ich bin mir ziemlich sicher, es war in einem Keller.
Aber noch einmal, müssen Sie nicht unbedingt bekommen keine Garantien oder uptime
Skalierbarkeit.
Also noch einmal, sind Sie in der Regel auf der Suche auf etwas mehr als das..
>> Nun, was ist SSL?
Also, was ist SSL verwendet?
Lassen Sie uns jetzt beginnen, in der Lenk Richtungen der Sicherheit und Dinge, die
kann uns schaden.
Zumal Sie wagen auf eigene Faust.
>> Was ist SSL, oder was SSL verwendet?
Sicherheit, OK.
So ist es für die Sicherheit verwendet.
Was bedeutet das?
So steht für Secure Sockets Layer.
Und es wird durch eine URL angegeben Das beginnt mit https://.
Viele von uns haben wahrscheinlich noch nie getippt https://, aber du wirst oft feststellen, dass
Ihr Browser wird von HTTP umgeleitet HTTPS, so dass alles, was da ist
nach verschlüsselt.
>> FYI, unter Verwendung von SSL erfordert in der Regel, dass Sie haben eine eindeutige IP-Adresse.
Und in der Regel, um eine eindeutige IP-Adresse Sie brauchen, um einen Web-Hosting zahlen
Unternehmen ein paar Dollar mehr pro Monat.
So weiß, das ist sehr leicht umgesetzt in diesen Tagen durch den Kauf einer IP
Adresse und durch Kauf, was ist rief ein SSL-Zertifikat.
Aber klar, dass es kommen wird irgendwann zusätzliche Kosten.
Und, wie wir versuchen, in nur erschrecken bit, es ist nicht einmal unbedingt 100%
Schutz von was auch immer es ist Sie versuchen, zu schützen.
>> Also für Sicherheit, ich dachte, ich würde tun Art von einem zufälligen segue hier.
Wie Sie vielleicht aus CS50 Vortrag wissen Videos, hat unser Produktionsteam ein
Fan wie ich von der Einnahme wirklich schön Fotografie von Campus und Antenne
photography zuletzt.
Wenn Sie schon einmal nach oben und Sie sehen etwas fliegen mit einer kleinen Kamera,
es kann tatsächlich sein CS50.
Und ich dachte, ich würde Minute teilen einige der Aufnahmen hat das Team
gesammelt, vor allem, da wir uns auf die das Sommersemester und im nächsten Herbst.
Wenn einer von euch haben ein Händchen für Fotografie, Videografie, würden wir
lieben, erhalten Sie beteiligt hinter den Kulissen.
Aber mehr auf diese Details in einer Woche.
>> [MUSIC]
>> DAVID J. MALAN: Stellt sich heraus, es gibt eine Minigolfanlage auf der Oberseite
das Stadion, dass wir nie wussten.
>> [MUSIC]
>> DAVID J. MALAN: Sie können die skizzieren der Drohne gibt.
>> [MUSIC]
>> DAVID J. MALAN: Der beste Teil hier ist, beobachten Sie die Jogger auf der linken Seite.
>> [MUSIC]
>> DAVID J. MALAN: Ein weiteres Beispiel dafür, was Sie können mit der Technologie zu tun, das ist
nur tangential, ehrlich gesagt, in Bezug auf Sicherheit.
Aber ich dachte, das wäre eine mehr sein unterhaltsame Art und Weise nur zu sagen, Sicherheit.
Also lasst uns sehen, ob wir nicht erschrecken euch jetzt nicht nur mit ein bisschen wie ein paar
Bedrohungen, sondern auch eine darunter liegende Verständnis von dem, was diese Bedrohungen
werden, so dass Sie kann vorwärts entscheiden, wie und ob zu verteidigen
sich gegen diese Dinge und zumindest darauf achten, ihnen, wie Sie
Entscheidungen darüber, ob oder nicht, senden Sie diese E-Mail, ob Sie
in diese Website, ob oder nicht zu verwenden, dass Cyber-Café Wi-Fi-Zugang
Punkt, so dass Sie wissen, was die Drohungen sind in der Tat um Sie herum.
>> So Jonathan nach etwas mag dies am Montag.
Er hatte ein Fenster Screenshot.
Dieser ist von einem Mac.
Wie viele von euch schon einmal installiert Software auf Ihrem Mac oder PC?
Offensichtlich jedermann.
Wie viele von euch haben viel darüber nachgedacht bis Sie Ihr Passwort eingeben
wenn Sie dazu aufgefordert werden?
Ich meine, selbst ich nicht, ehrlich gesagt.
So ein paar von uns sind gut bei paranoid.
Aber bedenken Sie, was Sie tatsächlich tun hier.
>> An einem typischen Mac oder PC haben Sie ein Administrator-Konto.
Und in der Regel sind Sie der einzige, der mit ein Laptop zumindest in diesen Tagen.
So Ihr Konto, Malan oder JHarvard oder was auch immer es ist, ist die
Administrator-Konto.
Und was das bedeutet ist, haben Sie Root-Zugriff auf Ihren Computer.
Sie installieren können, was Sie wollen, alles löschen, was Sie wollen.
>> Und in der Regel in diesen Tagen, da der datierten Design-Entscheidungen von Jahren,
wie die meisten Software installiert wird ist als Administrator an.
Und selbst wenn Ihr Mac oder PC hat mindestens intelligent genug, über das hinbekommen
Jahren mit den neuesten Inkarnationen Mac OS und Windows nicht laufen Ihre
Benutzername standardmäßig als die Administrator, wenn Sie einige downloaden
neues Programm aus dem Internet und versuchen, installieren Sie es, du bist wahrscheinlich
nach Ihrem Passwort gefragt.
Aber der Haken ist an diesem Punkt, du bist buchstäblich die Schlüsselübergabe Ihres
Computer über den unabhängig von zufälligen Programm, das Sie gerade heruntergeladen und
wodurch es zu installieren was sie will.
>> Und Jonathan angedeutet, realisieren dass es vielleicht sagen, dass es will
Installation der Software, die Sie interessieren über, Spotify oder iTunes oder was auch immer
ist man versucht zu installieren.
Aber du bist buchstäblich vertrauen den Autor oder Autoren der Software an
nur das tun, was das Programm tun soll.
>> Aber es gibt absolut nichts Stoppen die meisten Programme auf den meisten
Betriebssysteme von Löschen von Dateien, Upload von bis zu einem gewissen Unternehmens
Website von Trolling herum, zum Verschlüsseln Dinge.
Und wieder haben wir eine Art gebaut eine ganze Infrastruktur auf
die Jahre auf Vertrauen.
Und so erkennen, dass Sie habe gerade Vertrauen zufällige Personen und zufällige
Unternehmen für den größten Teil.
>> Und Jonathan angespielt zu, manchmal die Unternehmen selbst sind eine Art
wissentlich bösartig, alles in Ordnung?
Sony gefangen viel Flack ein paar Jahren vor für die Installation, was genannt wurde ein
Rootkit-Kit auf den Computern ohne deren Wissen.
Und das Wesentliche war, dass, wenn Sie kaufte eine CD zum Beispiel, dass sie
nicht wollen, dass Sie in der Lage sein zu kopieren oder rippen die Musik aus der, würde die CD
installieren, ohne Ihr Wissen, ein Rootkit auf Ihrem Computer.
Rootkit nur bedeutet, die Software läuft als Administrator, dass möglicherweise
tut schlechte Dinge.
>> Aber unter den Dingen, dieses Ding tat, war es verbarg sich.
So einige von euch vielleicht ziemlich versierte mit Ihrem Computer und wissen, gut, ich
können nur öffnen Sie den Task-Manager oder das Activity Monitor und ich kann überhaupt aussehen
der arcanely namens Programme die ausgeführt werden.
Und wenn etwas verdächtig aussieht Ich werde einfach töten oder zu löschen.
Aber das ist, was das Rootkit tat.
Im Wesentlichen sagte, wenn laufende Aufgabe Manager nicht selbst zeigen.
>> Also die Software dort war.
Und nur, wenn Sie wirklich, wirklich sah harte könnten Sie finden es sogar.
Und dies wurde im Namen getan von Kopierschutz.
Aber nur vorstellen, was wurden anderweitig erledigt.
>> Jetzt in Bezug auf sich selbst zu schützen.
Eine Vielzahl von Websites sind wunderbar gnädig, indem sie setzen diese
Vorhängeschloss-Icons auf ihrer Homepage die bedeutet, dass die Website sicher ist.
Dies ist aus bankofamerica.com an diesem Morgen.
Also, was bedeutet, dass kleine Schloss-Symbol es bedeutet neben der Schaltfläche Anmelden?
>> Absolut nichts.
Es bedeutet, dass jemand weiß, wie man verwenden Photoshop, um ein Bild von einem
Vorhängeschloss-Symbol.
Wie wahrsten Sinne des Wortes, die Tatsache, dass es Es soll eine positive sein
an die Benutzerschnittstellen, wie, ooh, sichere Website.
Ich vertraue dieser Website und jetzt Geben Sie in meinem Benutzernamen und Passwort.
Und dies war für herkömmliche Jahren, so vor kurzem wie heute Morgen.
>> Aber bedenken Sie, dass die Gewohnheiten das ist immer in uns.
Betrachten Sie die implizite Botschaft, dass alle dieser Banken in diesem Fall gewesen
Senden Sie uns seit Jahren.
Wenn Sie Vorhängeschloss sehen, dann sichern.
Alles klar?
>> So wie können Sie dieses System missbrauchen Vertrauen, wenn Sie der Bösewicht bist?
Setzen Sie ein Vorhängeschloss auf Ihrer Website, und logisch, haben die Nutzer gewesen
konditioniert seit Jahren davon ausgehen, Vorhängeschloss bedeutet sicher.
Und es könnte tatsächlich sicher sein.
Vielleicht haben Sie eine wunderbar sichere SSL HTTPS-Verbindung zu einem
gefälschte Website. com.
Und niemand sonst auf der Welt sehen kann Sie sind im Begriff, ihm oder ihr die Hand
Ihren Benutzernamen und Ihr Passwort ein auf Ihr Konto.
>> Dies obwohl, vielleicht, ist ein wenig mehr beruhigend.
Also das ist ein Screenshot von der Spitze von meinem Browser heute Morgen um
bankofamerica.com.
Und hier bemerken wir auch haben ein Vorhängeschloss-Symbol.
Was bedeutet es in diesem Zusammenhang bedeuten in Chrome mindestens?
>> Also das ist jetzt mit SSL.
Also das ist eigentlich eine bessere Sache.
Und die Tatsache, dass Chrome macht es grün soll unsere Aufmerksamkeit
der Tatsache, dass es sich nicht nur über SSL.
Dies ist ein Unternehmen, dass jemand aus Es wurde der Nachweis erbracht ist eigentlich
bankofamerica.com.
Und das bedeutet, dass die Bank of America, beim Kauf ihrer sogenannten SSL
Zertifikat, im Wesentlichen große zufällige, etwas Zufallszahlen, die Umsetzung
Sicherheit für sie, haben sie bestätigt von einigen unabhängigen
Partei, die sagt, yep.
Das ist eigentlich der CEO der Bank of Amerika versucht, um das Zertifikat zu kaufen.
Chrome wird daher darauf vertrauen, dass Zertifizierungsstelle und sagen
grün, ist dies bankofamerica.com.
Und die Bank of America zahlt nur ein paar hundert Dollar für dieses oder ein paar
Tausend im Gegensatz zu einer paar Dutzend Dollar.
>> Aber auch hier, wie viele von euch haben jemals anders verhalten, weil
die URL in Ihren Browser grün statt schwarz?
Right?
So ein paar von uns.
Und das ist gut, paranoid zu sein.
Aber selbst dann, diejenigen von euch, die noch bemerken diese Dinge tun, die Sie tatsächlich
beenden Sie die Protokollierung in einer ansonsten sicheren Website, wenn die URL nicht grün?
Alles klar, also wahrscheinlich nicht, oder?
Zumindest die meisten von uns, wenn es ist nicht grün, wahrscheinlich sind Sie gerade dabei
zu sein, wie auch immer.
Mag, möchte ich in dieser Website anmelden.
Das ist, warum ich hier bin.
Ich werde Sie sich dennoch.
>> Als beiseite, ist Chrome ein wenig besser darüber.
Aber es gibt eine Menge von Browsern wie Firefox beispielsweise zumindest für
einiger Zeit, wo das Schloss-Symbol ist, können Sie tatsächlich legte jede
Symbol der eigenen.
Lassen Sie mich sehen, was die neueste Version Firefox aussieht.
Also, wenn wir CS50.net gehen.
>> OK, so haben sie besser geworden als gut.
Was die verwendeten Browsern zu tun ist, wie, Hier ist zum Beispiel [? SAAS ist?]
erklimmen hier oben.
Das ist die so genannte Favoriten Symbol für eine Website.
Vor Jahren -
eigentlich gar nicht so lange her -, dass wenig Schild wäre richtig gewesen
hier neben der URL.
Da einige Genie entschieden, dass es würde nur hübsch aussehen nobel zu haben
Ihre grafische Logo rechts neben Ihrer URL.
Und Design weise, dass tatsächlich ist ziemlich überzeugend.
>> So was hat bad guy tun beginnen?
Sie begannen ihre Lieblings-Wechsel Symbole oder ihre Standard-Icon für eine
Homepage nicht ein Wappen sein aber ein Vorhängeschloss, das hatte
absolut keine Bedeutung.
Anders als ihre Lieblings-icon wurde ein Vorhängeschloss es hatte keine
Hinweise auf Sicherheit.
>> Also hier sind die Lehren ein paar, denke ich.
Einer ist, dass es tatsächlich einige gut gemeint Mechanismen für
lehrt uns Nutzern über Sicherheit auch wenn Sie waren nicht einmal bewusst, was grün
bedeutete oder was auch HTTPS gemeint.
Aber wenn diese Mechanismen kommen uns in die schlechte Angewohnheit, vertrauensvolle Webseiten
wenn wir diese positive Signale zu sehen, sie sind sehr leicht missbraucht wie wir sahen
eben noch mit etwas dumm wie dieses.
>> So Session Hijacking kommt spielen, wie wir schon sagten,
mit Cookies zum Beispiel.
Und was bedeutet das eigentlich?
Nun mit Session-Hijacking, das ist alles zu stehlen jemand Cookies.
Also, wenn ich hier eröffnen Chrome, für B. und ich öffne die Inspector
hier unten und ich gehe zu der Registerkarte Netzwerk -
und wir haben das schon mal gemacht -
und ich gehe zu so etwas wie http://facebook.com Enter, eine ganze
Haufen Zeug geht über den Bildschirm wegen all den Bildern und CSS und
JavaScript-Dateien.
>> Aber wenn ich an diese hier aussehen bemerken dass Facebook ist in der Tat eine Pflanzung
oder mehrere Cookies auf meinem Browser finden Sie hier.
Das sind also im Wesentlichen die Hand Briefmarken, die mich vertreten.
Und jetzt hoffentlich meine Browser präsentieren diese immer und immer wieder, wenn
Neubetrachtung dieser Website.
Aber das ist sicher nur, sagten wir ein Vor einigen Wochen, wenn Sie mit SSL.
>> Aber auch SSL selbst kann werden beeinträchtigt.
Betrachten wir nach den ganzen Weg SSL funktioniert.
Wenn Ihr Browser eine Verbindung zu einem Remote- Server über https://, lange Rede kurzer Sinn,
Kryptographie ist beteiligt.
Es ist nicht so einfach wie Caesar oder Visionaire oder sogar DES, DES von einem
Weile zurück in pset2.
Es ist komplizierter als die.
Es heißt Public Key-Kryptographie.
Aber wirklich groß und wirklich zufällig Zahlen werden verwendet, um Gerangel
Informationen zwischen Punkt A, Sie, und Punkt B, wie facebook.com.
>> Aber das Problem ist, wie viele von uns wieder je Art in https:// beginnen
unsere Website-Verbindung in diesem sicheren Modus?
Ich meine, wie viele von Ihnen auch Typ http://facebook.com?
Na gut, wenn Sie das tun, wie, hallo.
Sie brauchen nicht zu tun mehr, nicht wahr?
Der Browser wird es herausfinden.
>> Aber die meisten von uns tun, in der Tat geben Sie einfach facebook.com.
Denn wenn wir mit einem Browser, der Browser haben intelligent genug von bekommen
2013 übernehmen, wenn Sie eine gerade Browser, geben Sie in einer Adresse, Sie
wahrscheinlich wollen, um darauf zuzugreifen nicht per E-Mail oder Instant Message.
Du meinst, HTTP und Port 80.
Diese Konventionen verabschiedet worden.
>> Aber wie funktioniert die Umleitung funktioniert?
Nun, bemerken, was hier passiert.
Wenn ich zurück zu Chrome -
und lasst uns dies tun in incognito Modus, so dass alle meine
Cookies werden weggeworfen.
Und lassen Sie mich hier zu gehen, wieder, facebook.com.
Und lassen Sie uns sehen, was passiert.
>> Daran erinnern, dass die erste Anfrage war in der Tat nur für facebook.com.
Aber was war die Antwort, die ich bekam?
Es war nicht ein 200 OK.
Es war 300 oder 301, die eine Umleitung mir um zu gehen
http://www.facebook.com, das ist Facebook, wo ich hin will.
Aber dann, wenn wir uns bei der nächsten Anfrage, und wir haben noch nie gesehen,
bemerken, was ihre zweite Antwort ist.
Insbesondere, dass sie wollen, dass ich jetzt zu gehen, um die SSL-Version von Facebook.
>> Also hier ist eine Chance.
Dies ist ein wunderbar nützliches Feature nur im Web und HTTP.
Wenn der Endbenutzer wie Facebook will mich um auf der sicheren Version ihres bleiben
Website, groß.
Sie werden mich für mich selbst umleiten.
Und so habe ich nicht, auch darüber nachdenken.
>> Aber was, wenn zwischen Punkt A und B, zwischen Ihnen und Facebook, es gibt einige
Bösewicht, gibt es einige System Administrator in Harvard, die neugierig ist
um zu sehen, wer deine Freunde sind.
Oder gibt es einige -
Jahren verwendet dies verrückt klingen -
aber es gibt einige staatliche Unternehmen wie die NSA, die tatsächlich interessiert ist
in die du auf Facebook stossen.
Wo ist die Gelegenheit da?
Nun, so lange, wie jemand hat genug technische Kenntnisse und sie haben Zugang
Ihren tatsächlichen Netzwerk über Wi-Fi oder einige körperliche Draht,
was konnten sie tun?
>> Nun, wenn sie sind auf dem gleichen Netzwerk wie Sie und sie wissen etwas über
TCP / IP und IP-Adressen und DNS und wie all das funktioniert, was ist, wenn die
Mann in der Mitte, was, wenn die nationalen Security Agency, was es
mag sein, aber was ist, wenn diese Einrichtung einfach reagiert schneller als Facebook
Ihre HTTP-Anfrage und sagt: oh, ich bin Facebook.
Go ahead, und hier ist der HTML für facebook.com.
>> Computer sind verdammt schnell.
So könnte man ein Programm schreiben, die auf ein Server wie nsa.gov dass, wenn es
hört eine Anfrage von Ihnen für facebook.com, sehr schnell hinter die
Szenen bekommt die reale facebook.com Herstellung ein perfekt [? esque?] sichere
SSL-Verbindung zwischen NSA und zwischen Facebook, immer, dass HTML sehr
sicher für die Login-Seite, und dann die NSA-Server reagiert nur auf Sie
mit einer Login-Seite für facebook.com.
>> Nun, wie viele von euch würden sogar feststellen, dass Sie mit Facebook über HTTP
noch an diesem Punkt, weil Sie haben versehentlich nsa.gov verbunden und
nicht Facebook?
Die URLs nicht ändern.
All dies wird getan, hinter den Kulissen.
Aber die meisten von uns, mich eingeschlossen, Wahrscheinlich würde es nicht bemerken
wie eine Kleinigkeit.
>> So haben Sie vielleicht eine perfekt funktionierende Verbindung zwischen Ihnen und was Sie
denken, ist Facebook, aber es gibt eine sogenannte Mann in der Mitte.
Und das ist ein allgemeiner Begriff für den Menschen in durch die Mitte, wo Sie einige
Einheit zwischen Ihnen und Punkt B ist das irgendwie zu manipulieren, zu stehlen, oder
beobachten Sie Ihre Daten.
Also auch SSL ist nicht todsichere, insbesondere wenn du in ausgetrickst
nicht einschalten zu müssen, weil, wie diese zugrunde liegenden Mechanismen tatsächlich funktionieren.
>> So eine Lektion heute, dann ist auch, wenn Sie wirklich wollen, paranoid zu sein -
und auch hier gibt es Bedrohungen -
Sie sollten wirklich anfangen, in die Gewohnheit der Typisierung in https://www
unabhängig von Domainnamen tatsächlich interessieren.
>> Und nebenbei gibt es auch noch eine weitere Bedrohung mit
betrachten, um Session-Hijacking.
Sehr oft, wenn Sie beim ersten Besuch eine Website wie facebook.com, es sei denn, die
Server so konfiguriert wurde, zu sagen, dass dass Handstempels es auf Sie setzen
gestern sollte sicher selbst, Ihre Browser könnte sehr gut auf
Besuch Dinge wie facebook.com google.com, twitter.com, Ihrem Browser
vielleicht präsentiert diese Hand nur Stempel nach unten geschlagen werden und sagte, nein.
SSL verwenden.
>> Aber es ist zu spät an diesem Punkt.
Wenn Sie bereits Ihre Hand geschickt Stempel, Ihre Cookie, in der klar mit
kein SSL, haben Sie einen Bruchteil einer Sekunde Schwachstelle, wo jemand schnüffeln
Ihren Traffic, ob Mitbewohner oder NSA, Anschließend können Sie das gleiche Cookie, und
mit ein wenig technische Kenntnisse, präsentieren sie als seine eigenen.
>> Ein weiterer Angriff könnten Sie nicht darüber nachgedacht.
Dieses ist wirklich auf Sie, wenn Sie schrauben dies schriftlich und einige Website, dass
irgendwie verwendet SQL.
Also hier, zum Beispiel, ist ein Bildschirm Schuss von der Harvard-Login.
Und das ist ein allgemeines Beispiel von etwas mit einem
Benutzernamen und Passwort.
Super-üblich.
Nehmen wir also an, dass SSL und existiert es gibt keinen Mann in der Mitte oder
so etwas.
Jetzt sind wir auf dem Server die Fokussierung Code, den Sie schreiben könnte.
>> Nun, als ich geben Sie einen Benutzernamen und vergessen, anzunehmen, dass die PIN-Service
ist in PHP implementiert.
Und haben Sie vielleicht einige Code auf diesem Server wie diese.
Holen Sie sich den Benutzernamen aus dem Beitrag Super globale und bekommen das Passwort, und dann
wenn sie mit etwas wie pset7 Code gibt es eine Abfrage-Funktion
das könnte das tun.
Wählen Stern von den Benutzern wobei Benutzername gleich, dass und Passwort gleich, dass.
>> Das sieht auf den ersten Blick, völlig vernünftig.
Dies ist syntaktisch gültigen PHP-Code.
Logischerweise gibt es nichts falsch mit diesem.
Vermutlich gibt es einige weitere Zeilen, die tatsächlich etwas mit dem
Ergebnis kommt zurück aus der Datenbank.
Aber das ist anfällig für das aus folgendem Grund.
>> Beachten Sie, dass, wie ein guter Bürger, Ich habe in Anführungszeichen setzen, Single
Zitate, die Benutzernamen.
Und ich habe in einfache Anführungszeichen das Passwort.
Und das ist eine gute Sache, weil sie eigentlich nicht Zahlen.
Typischerweise sie gehen, um Text sein.
Also ich zitiere sie wie Saiten.
>> Und wenn ich jetzt weiter, was wenn voranzubringen - und ich habe die Kugeln aus der entfernt
PIN Dienst vorübergehend -
was ist, wenn ich versuche, für die Anmeldung Präsident [? Scroob?]
aber ich behaupten, dass mein Passwort ist 12345 'OR '1' = '1, und beachten
was ich nicht getan habe.
Ich habe nicht in der Nähe der anderen Apostroph.
Denn ich bin ziemlich scharf hier als Bösewicht.
Und ich nehme an, dass sie, dann bist Du nicht sehr gut mit Ihren
PHP und MySQL-Code.
Ich vermute, dass Sie nicht die Überprüfung für das Vorhandensein von Anführungszeichen.
>> Also, was gerade passiert ist, dass, wenn Ihr Benutzer hat in dieser Zeichenfolge eingegeben haben,
die Abfrage Sie sind dabei, erstellen sieht wie folgt aus.
Und lange Rede kurzer Sinn, wenn Sie und gemeinsam etwas oder Sie oder etwas
zusammen, das wird zurückkehren eine Zeile aus der Datenbank.
Denn es ist immer Fall, dass 1 1 entspricht.
>> Und nur weil du nicht vorhergesehen dass die Benutzer, gut oder schlecht, könnte
haben einen Apostroph in ihrem Namen erstellt eine SQL-Abfrage, die immer noch haben
gültig ist, wird und kehren nun weitere Ergebnisse als Sie vielleicht gedacht haben.
Und so schlechter Kerl hat jetzt potenziell eingeloggt sein, um Ihrem Server
weil Ihre Datenbank ist wieder eine Zeile selbst wenn er oder sie hat keine Ahnung, was
[? Scroob das?] Eigentliche Passwort ist.
>> Oh, merkte ich, ein Tippfehler hier.
Ich habe gesagt, gleich vergessen 12345 wie die vorherige
Beispiel 1 oder gleich 1 ist.
Ich werde zu beheben, dass online.
>> Also, warum haben wir Sie über die Abfrage Funktion mit Fragezeichen?
Eines der Dinge, die Abfrage-Funktion hat für Sie ist es sorgt dafür, dass
wenn Sie passieren in Argumente, die nach der Komma hier so, dass die Abfrage
Das ist eigentlich die gesendet Datenbank sieht wie folgt aus.
Eine Menge hässlicher, zu betrachten, sondern zurück Schrägstriche haben automatisch gewesen
eingeführt, um genau das zu vermeiden Injection-Angriff zeigte, dass ich ein
Moment vor.
>> Nun wird ein Spaß XKCD, dass ich dachte, ich würde ziehen hier, dass sollte nun hoffentlich ein sein
wenig verständlicher ist diese hier.
>> Ein bisschen?
Vielleicht brauchen wir ein wenig mehr Diskussion darüber.
Also das ist ein kleines Kind Anspielung namens Bobby, die irgendwie getroffen hat
Vorteil einer Website, die gerade Vertrauen darauf, dass das, was der Benutzer eingegeben hat
in ist in der Tat nicht, SQL-Code, jedoch ist in der Tat eine Zeichenfolge.
>> Jetzt können Sie sich daran erinnern, dass drop -
Sie könnte dies gesehen haben - drop Mittel eine Tabelle löschen, löschen Sie eine Datenbank.
Also, wenn Sie behaupten, dass im Wesentlichen Ihr Name ist Robert "; droptabl
estudentsomething,]
Sie könnte sehr wohl täuschen die Datenbank nicht nur in Überprüfung, dass Sie
Robert Tat, aber auch Semikolon gehen, um den Tisch fallen zu lassen.
>> Und so können SQL-Injection-Angriffe tatsächlich so bedrohlich wie diese
wobei Sie löschen jemand Daten, Sie können mehr Daten als
bestimmt sind, können Sie einfügen oder Aktualisieren von Daten.
Und man kann tatsächlich sehen, diese auf bei zu Hause ausüben, nicht für böswillige
Zwecke, sondern nur für den Unterricht, ist jedes Mal, wenn Sie aufgefordert werden, sich gerade
in Website, insbesondere eine Art von Nicht sehr öffentlichen, sehr beliebte Website,
versuchen Sie sich als John O'Reilly oder jemand mit einem
Apostroph in ihrem Namen.
Oder geben Sie einfach buchstäblich Apostroph, drücken Sie die Eingabetaste, und sehen, was passiert.
>> Und allzu oft tragisch, Menschen haben ihre Eingänge und desinfiziert
sorgte dafür, dass Dinge wie Zitate oder Semikolon sind entkommen.
Welches ist, warum geben wir in pset7 Sie diese Abfrage-Funktion.
Aber nicht unter schätzen genau was es für Sie tun.
>> Also mit diesem sagte, viel Spaß mit die Bahn in dieser Woche.
Und wir werden uns am Montag.
>> An der nächsten CD50.
>> [MUSIC]