[MUSIC] DAVID J.マラン:すべての権利。 だから、これはCS50とこれです 10週目の終わりです。 だから、あなたのいくつかは、これを見たことがあるかもしれませ すでに、しかし後半の循環さ 私が読んだと思った記事です から抜粋してから表示する 塗料3分間のビデオ 同じ絵。 それは、私は、本当に感動的な話だった この交差点の思想、 真に説得力と現実の世界 技術を使用しています。 記事が題されたので、 "少年 電車の中でoversleepsは、Googleマップを使用しています 25年後の家族を見つける "に 段落の最初のカップルは、あった "Sarooが5歳だったときに彼が行ってきました ためにおねだりするために彼の兄と 旅客列車に変更 2時間ほどの町で 彼の小さな故郷から。 Sarooは疲れになったとに飛び乗った 彼は思った近くの鉄道 兄弟は、その後眠りに落ちた。 彼が目を覚ましたとき、彼は、カルカッタにあった 約900マイル離れた所。 Sarooは自分の道を見つけることを試みた 背中が、彼は知りませんでした 彼の故郷の名前。 そして広大の小さな文盲少年として 彼が持っていた忘れて子供の完全都市 帰宅の事実上ないチャンスはありません。 彼はまで、しばらくストリート子供だった 夢中ローカル養子縁組機関 オーストラリア人カップルと彼をアップ 誰に彼を連れて来た ホバート、タスマニア州に住んでいます。 Saroo学んだ、そこに移動 英語、そして育った。 しかし、彼が探して停止したことがない 彼の家族と彼の故郷。 十年後、彼はGoogleのを発見 地球と続くレールトラック。 と自分自身に所定半径を与える 彼は思ったどのくらいに基づいて 眠って、どのように速く、彼は電車を考え つもりだったが、彼は彼が育って知っていました 暖かい気候の中で、彼は知っていた話を聞いた 子供としてヒンディー語、そして彼は言われたい 彼は彼のように見えたこと 東インドからだった。 最後に、精練の年後 衛星写真は、彼 少数のランドマークを認識した。 と管理者とおしゃべりした後 近くの町の中 Facebookのページには、彼が実現 彼は家を見つけたと思います。 " だからここに、ビデオは語っている 彼の視点からの物語。 [ビデオの再生] - それは26年前だったと私はあった ただ約5をオンにします。 我々は鉄道駅に着いたと 私たちは一緒に電車に乗り込んだ。 私の弟はちょうど私が滞在されますと述べた ここで、私は戻ってくるでしょう。 そして、私はただ、あなたが知っている、まあ、思った私 同様に単にスリープ状態に入る可能性があり、 その後、彼はちょうど私に目を覚ますでしょう。 そして、私は次の日目を覚ますと、 全体キャリッジが暴走で空だった 電車、服用幽霊列車 私は私がどこか分からない。 私はオーストラリアに出て採用されました オーストラリアの家族に。 とママはと私の部屋に飾られていた インドの地図、彼女 私の枕元の隣に置く。 私は、そのマップを見て、毎朝目が覚めた それゆえ、それは一種の保持 生きている思い出。 人々は、あなたがしようとしていると言うでしょう 干し草の山の中から針を見つける。 Saroo、あなたはそれを見つけることは決してないだろう。 私はその場所の点滅があるんだけど 私は、行くために点滅を使用 私の家族の顔の。 私の母が座っているのイメージがありました ダウン彼女の足は組んで ちょうど彼女の叫びを見ている。 人生はただ一生懸命です。 それは私の宝物だった。 と私は、Googleマップで探していたと グーグルアースが同様にあり実現しました。 あなたは、私にズームができ、世界で すべてのこれらの考えを持って開始し、 何の可能性その これは私のために行うことができます。 私は、あなたが知っている、だけでなく、自分自身に言った あなたは、すべての写真を持っている 思い出とあなたがしているランドマーク とから、あなたは知っている 町のように見えます。 これは、そのアプリケーションかもしれません バックあなたの方法を見つけるために使用できる。 私は上のドットを置くことにしましょう​​、まあ、思った 半径カルカッタ駅 あなたは検索する必要があることを行 この周辺。 私はこれらの列車のトラックに出くわした。 そして、私はそれに続いて始めて、私はに来た 反映駅 私の記憶にあった同じイメージ。 すべてが一致した。 私はうん、と思った。 私は行くよどこに知っている。 私はちょうど私がそのマップできるようにするつもりです 私をリードして私の頭の中で持っていると私を取る 戻って私の故郷へ。 私は家の玄関に来た 私が生まれ、歩いたこと 約15メートル 角を曲がった。 3女性が外に立っていた 互いに隣接する。 そして真ん中の1は進み出。 そして、私はただ、この考え あなたの母親です。 彼女は前方に来て、彼女は私を抱きしめて、私たち 約5分のためにそこにあった。 彼女は私の手をつかんで、彼女はに連れて行ってくれました 携帯電話と彼女の家となった 妹と言っても私の弟が鳴った あなたの弟はただのすべてを持っていることを 突然、ゴーストのように現れた。 そして、家族があった 再び再会。 すべてがすべて良いことだ。 私は母を助ける。 彼女は離れて奴隷売買する必要はありません。 彼女は残りの部分をリードすることができます 安心して彼女の人生。 それは、干し草の山の中から針だった しかし針があった。 すべてがそこにあります。 我々は世界に持っているすべてのもの ボタンのタップである。 しかし、あなたが意志を持っている持っていると それを望むに決定。 [ENDビデオ再生] だから本当に甘い物語。 そしてそれは実際にはかなりのことを思い出す かなりを得ている話題 クリムゾンの後半の注目、 もっと全国的に一般的である。 MOOCsは、服用している、特にとして 後期の段階。 これらの大規模な、オープンであることMOOCs CS50が1となっているオンラインコース。 そして人々はのために、どのように話して 例えば、人文科学は本当にありません 追いつくかとほぼありませ​​ん 流行では、それらは、かつてあったように。 そして、私はずっと、君たちを奨励する のようにジョナサンは考えて、月曜日に行った あなたは50を終了し、我々が知っているように、約 すでにあなたの約50%はしません 別のコンピュータを取ることで、引き続き 理系、それは全くだ 罰金と予想。 包括的な目標の一つであるため このようなクラスを本当にしている で皆さんに力を与えるだけ このようなもののすべての方法を理解 動作し、どのようにこの世界 技術の作品。 だから、あなたがあなた自身に戻っているとき 世界が、あるかどうかそれはプレMEDまたは それは文系またはであるかどうか 社会科学や他の分野 完全に、君たちが持っていること テーブルにいくつかの技術に精通し、 ときにスマートな意思決定を行うために支援 それは用途に来ると 技術導入 あなたの世界へ。 例えば、私は後半のことを思い出した あまりに学部のうちの2つの だった私は2年前に取ったクラスは、 技術のような単純な使用 しかし、今までので説得力。 教授トム·ケリーとの最初の夜 あなたは、クラスを撮影した場合。 それは上のクラシック音楽上のクラスだ あなたが学ぶ、ここで、この段階 音楽について少し何か。 それは実際にその一泊目の夜だCS50 それらのためのトラックのアイデアを借りた 間にあまり快適 とより快適。 私の時間では、彼らは別のトラックを持っていた 全く音楽と子供のための 私のような経験をした後、子供たち 彼らがいたので、実行されていた 5歳。 そして例えばそのクラスは、ただ持っていた 他のほとんどのようなウェブサイトが、それ 次のことが許可されたウェブサイトだった それで音楽を探索し、再生する ウェブからクラスからミュージカルクリップ、 そしてちょうど非常に技術を使用して シームレスな方法。 別のクラス年後にそのI 、大学院では、本質的には、監査 人為1010はじめに ここに考古学へ。 それは驚くべきものだった。 そして、最も魅力的なまだスーパーの一つ 明らかな、振り返ってみると、の使用 ソフトウェアがあったという点で、教授 Google Earthを使用されているクラス。 私たちは、通りの向こう側に座っていた いくつかの講義室である。 そして、あなたは、例えば、旅行ができなかった 中東へ掘るにその1 教授のすぐ後ろに来ていた、 しかし我々はすることによって、その事実上行うことができます グーグルアースの周り飛んで で鳥瞰図を見て 彼がちょうど戻ってきたサイトを掘る 週間前から。 だから私は、あなたたちを奨励する 特に文系で、行くために この後、これらの部署にバックアップ クラスには、あなたの最終的なプロジェクトをもたらす あなたやあなた自身のアイデアを、と見 あなたを注入するために行うことができますだけで何 人文科学または以降の独自のフィールド この種のを少しと 我々は探検した事 ここCS50た。 だから絵が描かれて、思った 我々は今日の二つのことに取り組むことを試してみた。 一つは、あなたの感覚を与えることを試みる どこに50の後に行くことができます。 特に、あなたがすることを選択した場合 あるとしてWebベースのプロジェクトに取り組む 信じられないほど一般的な、あなたが行くことができる方法 CS50のすべての離陸について 補助輪とにそこ外出 自分自身とに頼らないで PDFまたはPSETの仕様? CS50に頼る必要がない もうアプライアンス。 しかし、実際に自分で引っ張ることができる あなたのブートストラップによってアップする。 とは言うものの、最終的なCベース プロジェクトは歓迎されている。 ためにスタンドを使うもの ポータブルなライブラリで グラフィックは歓迎されている。 我々の統計的に多くのことだけを知っている 人々は、PHPでのプロジェクトをかみ切ると PythonとRubyとMySQLと他の 環境のため、我々は、バイアスの一部をよ それに向かって我々の発言。 しかし、クイックルックバック。 pset7で当たり前のだから私たちは取った $ _SESSIONが存在するという事実。 これはスーパーグローバル、グローバル、だった 連想配列。 そして、これはあなたが何を聞かせていない? 機能的には、何 これが私達を与える特色? うん? ユーザーのIDを追跡する。 そして、なぜこれが役立ちましたか? このスーパーの中に保存できるようにするには グローバルJHarvardまたは[? Scroobs?] マランのユーザーIDときに彼または または彼女がサイトを訪問。 まさに。 だから、ログインする必要はありません 何度も繰り返しています。 それは本当にラメワールドワイドウェブになる 毎回場合は、リンクをクリックした Facebookや毎回のようなサイトで あなたは、Gmailのあなたに電子メールをクリック 再認証を証明する必要があったこと それはまだあなたのルームメイトあなたとではありません あなたまで歩いたかもしれない人 あなたの不在でコンピュータ。 だから、私達はちょうどにセッションを使用 あなたが誰であるかを覚えています。 そして、これはどのように実装されています ボンネットの下に? どのように使用するWebサイト、ありません Webブラウザとサーバ、そのプロトコル 話す、どのようにHTTPは、ありません ステートレスなプロトコルでは、のは言わせて。 とステートレスで私が意味する、一度 Webサイトに接続、一部をダウンロード HTMLなど、いくつかのJavaScriptを、いくつかのCSS、あなたの ブラウザのアイコンが回転を停止します。 あなたが常時接続を持っていない サーバに通常。 それはそれだ。 維持しない状態はありません 絶えず。 だから、このようなセッションをどのように実装されています あなたが行うたびに訪問する方法 新しいページ、ウェブサイトを覚えて あなた誰? 基礎となる実装は何ですか 詳細? それを大声で叫ぶ。 それは1つの単語です。 クッキー。 わかりました。 だからクッキー。 さて、どのようにクッキーを使用されていますか? 私たちは、クッキーは一般的であることを思い出すだろう 情報のほんの一部。 そして、それはしばしば大きなランダムだ 数字ではなく、常に。 とクッキーはハードに植えられている ドライブまたはコンピュータのRAMにそう あなたが同じを再訪するたびにその ウェブサイト、あなたのブラウザが思い出さ サーバは、私は、ユーザー1234567です。 私は、ユーザー1234567です。 そして長い間、サーバが覚えているように そのユーザー1234567です JHarvard、ウェブサイトはただ仮定します あなたはあなたがあると言う人であること。 そして、我々はこれらのクッキーを提示することを思い出してください の形でのソート 仮想手スタンド。 それだけにHTTPヘッダで送信される あなたがそれ誰であることをサーバーに思い出さ あなたが考えている。 もちろん、脅威があります。 何が脅威ばこれが私達をに開くん 我々は基本的にクラブのようなものを使っている または遊園地のメカ​​ニズム 我々が誰であるか覚えておくために? あなたが誰かのクッキーをコピーして乗っ取る場合 いわば彼らのセッションは、 他の誰かとのふりをすることができます ウェブサイトでは、最も可能性が高いだけに起こっている あなたを信じて。 だから私たちはそれに戻ってくる。 今日のために他のテーマを超えているため エンパワーメントは、また話している 非常に怖い世界について我々は住んでいる そしてどれだけあなたが何をすべきかの ウェブ、いくらあなたも何をすべきかの あなたの携帯電話で、今日はすることができます 間に誰もが本当に追跡 あなたと点B とAjax、リコール。 我々は、これを簡単にだけ見えた あなたはそれを使用してきたものの、 間接pset8でご使用しているので、 Googleマップとはだから グーグルアースを使って。 GoogleマップとGoogle Earthにはありません あなたに世界全体をダウンロード 明らかにデスクトップ、、 瞬間はpset8をロードします。 それだけで世界の広場をダウンロード または地球の大きな広場。 そしてソート操縦のたび 範囲のうち、あなたは気づくかもしれません - 特に低速接続であれば - あなた 瞬間のためにいくつかのグレーが表示される場合があります またはファジー画像のビット 複数のコンピュータ·ダウンロードなどのタイル、 からより多くのそのような画像 世界や地球。 とAjaxは、一般的な技術である これによってWebサイトがあることをやっている。 したら、マップの多くを必要とするあなたの ブラウザは、Ajaxを、使おうとしている 言語や技術ではなく、それ自体 それだけでテクニックだ。 それは取りに行くには、JavaScriptの使用です そのサーバからより多くの情報 ブラウザがに何取りに行くことができます 東または西に何 そうでなければ現在何 そのマップに示されている。 だから、これはあなたの多くが話題です 直接遭遇するか 間接的に最終的なプロジェクトを経由している場合 何かを行うことを選択する データを引っ張っていることも同様にダイナミック いくつかのサードパーティのウェブサイトから。 だから、私たちは本当にエキサイティングなを持っている 先に次の水曜日。 クイズ1、のための情報 すでにCS50.netオンになっている。 レビューセッションがあるだろうことを知っている これは5:30月曜日来る。 日付と時刻が既に掲載されて シートについてその中でCS50.netに。 そして、私たちはあなたを知ってみましょうか ご質問がある。 Pset8はその間すでに あなたの手である。 そして、ちょうど1のFAQを対処させて頂いて 人々にいくつかのストレスを保存します。 ほとんどの部分についておしゃべりをたくさん 私たちは、営業時間との多くに見 ディスカッションで報告我々が見るのバグがある 学生のコードで実際にバグ。 しかし、あなたが何かに遭遇したとき グーグルアースクラッシュプラグインのような あるいは作業、あなたはありません 自信を持って、それはあなたではない、そうではありません [? chamad?]問題、それはないです あなたはに導入されたバグ 分配コード。 FYIだけ実現 - これは、プランZのようなものです - 最後の時間という、我々はこの問題を利用し 設定し、我々は同じようなに走った 問題のコードの行あり 本質的にはこれですservice.js、 それは、建物の電源を入れ、と言います。 そして、彼らは私たちの最後の時間を回避 この中で、再び、コーナーケースどこにやった 学生はただくそを取得できませんでした 仕事をする事がfalseに変更本当です そのコード1行である。 あなたが検索した場合、あなたはそれを見つけることができます service.jsスルー。 あなたがするので、私はこれをお勧めしません 最も不毛の風景を作成する ケンブリッジ、マサチューセッツ州。 これは文字通り、あなたの世界を平らにします あなたが見るすべては、教育であるように 仲間とコースのアシスタントに 水平線となしの建物。 しかし、実現する何らかの理由で Google Earthのプラグインは、まだのようだ バギー年以降では、このよう あなたの失敗は、保存される可能性があります。 そうではなく、涙にリゾート、リゾート あなたが知っていれば、建物をオフにする それは協力しないことを、プラグインの お使いのMacまたはPC上で。 しかし、これがあれば再度、最後の手段である それはバグではないことを確認している。 ハッカソンはそう。 ティーザーのカップルだけ あなたが興奮する。 私たちは、かなりの数のRSVPsを持っていた。 そして、ちょうど何の絵を描くために 待って、私はあなたにいくつかを与えるだろうと思って 秒はこの画像のリコール 昨年から。 [MUSIC] DAVID J.マラン:ああ、待ってください。 私たちも、私たちのリテラルCS50シャトルを持っている。 [MUSIC] DAVID J.マラン:だからそれは待って何 ハッカソンの面であなた。 そして、これはに、チャンスになります あなたの最終的なを開始していない、明確である プロジェクトは、しかしで作業を継続する あなたの最後のプロジェクトと一緒に クラスメートとスタッフや食べ物がたくさん。 そして再び、あなたは目を覚ましている場合、午前5:00 私たちは、IHOPへの道をあなたを取るでしょう。 CS50フェアは、一方、クライマックスです。 クラス全体のためにどこに あなたは、あなたのラップトップや友人を持っていきます キャンパス上の部屋に多分家族 あなたのプロジェクトを展示するストリートダウン ラップトップで、背の高いテーブル上 食品や友人の多くが付いているこのような バックグラウンドで音楽、 業界からだけでなく、私たちの友人。 Facebookやマイクロソフトのような企業 とGoogleやAmazonとの房 場合だけに興味を持ってするように他の人 現実の世界について聞いたり、 現実の世界についての人々とおしゃべり インターンシップやフルタイムの機会、 知っている私たちの友人の何人か 業界からあるだろう。 我々ができる写真のとカップル ここでペイントは次のとおりです。 [MUSIC] DAVID J.マラン:すべての権利。 だからその後CS50公平です。 それでは、今、話を進みましょう それは本当にうまくいけばあなたに力を与えるでしょう 最後のプロジェクトのようなものを。 あなたの種子にはいくつかのささいなことの一つは、そう どちらかの最終的なプロジェクトのための心、 または単により一般のプロジェクトのこと あなたは後に取り組むために決めるかもしれません コー​​スは、これらはすべて文書化されています CS50 manual.cs50.net上 我々はたくさんのを持っているマニュアル 技術が文書化された。 そして、これはただの省略表記です に存在することを示す 世界の物事はSMSがメールに呼ばれる の派手な方法であるゲートウェイ、 世界のサーバーがある、と言って に電子メールを変換する方法を知っている テキストメッセージ。 だから、あなたが望むあなたの最終的なプロジェクトのためになら モバイルテーマのいくつかの並べ替えを作成する あなたが友人に警告することができるサービス キャンパスでのイベントに、またはユーザ またはどのようなDホールでサービスされている その夜、またはそのような警告機能、 それは送信のような単純なことを知っている phpmailerのと同じようにメールしたお pset7のために使用したり、我々は見たかもしれない 簡単に一週間ほど前に このようなアドレス。 実際には、テキスト、これは仮定することができます あなたの友人は、無制限のテキストメッセージを持っている 計画とはしたくない 彼らに0.10ドルを充電する。 しかし、あなたはあなたの友人に電子メールを送信する場合 あなたは、ベライゾンやを持って知っている人 AT&TのGmailを使用していて、ちょうどそれをするために送信する どのように自分の電話番号 あなたを実現する、サブドメインがあります テキストメッセージを送信します。 しかし、これはそれらのものの一つである に注意する。 あなたは昨年のCS50を通じてトロール場合 私はそれがだったと思うビデオ、恐ろしい、 私はコードで書いた恐ろしい、恐ろしいバグ 約20,000のテキストを送信してしまった メッセージは私たちに生きる クラスの生徒。 そして、誰かが気づい理由だけで 彼らは複数のテキストを取得していた 私からのメッセージは、私が持っていた 素早くコントロールCをヒットする必要な手段 そのプロセスを停止します。 コントロールCは、あなたが思い出す、あなたの友達です 無限ループのインスタンスである。 だから我々は単に与えられた力を用心 あなたにむしろ無責任に、最も おそらく、私自身の経験に基づいて。 しかし、それは、ウェブ上にあるとい しばらくの間があった。 わかりました。 textmarks.comだから。 だから、これはウェブサイトです。 と他人の束はそこにあり だけでなく、私たちが実際に使用したこと 年間のクラスができるようにするように テキストメッセージを受信する。 残念なことに、テキストメッセージを送信することである そのような電子メールを送信するように簡単。 特に、少し難しくなっている受信 あなたのいずれかを持つようにしたい場合 唯一のこれらのセクシーなショートコード 5または6桁長い。 だから例えば、年のためにあなたがしてきた と - テキストメッセージを送信することができ 同様にこれを試すことができます - 41411へ。 そして、それはのための電話番号です この特定のスタートアップ。 そして、あなたは41411にメッセージを送信する場合 - 私はちょうどので、41411、ここでそれを書こうと思います - し、それらにメッセージを送信 シャトルボーイSBOYが好きです。 そして、何かを入力 メイザークワッドのような。 だから、そのテキストメッセージを送信 その電話番号に。 数秒以内にあなたが戻って取得する必要があります CS50シャトルからの応答 シャトルでボーイサービス、 我々が持っていたことをスケジューリングソフトウェア そこにいくつかの時間のために、ウェブ上で。 そしてそれはに応答します テキストメッセージを介してあなた。 我々はクラスとしてやっているので、として プログラマは、ソフトウェアを書くことです テキストが付いている私達の無料アカウントを設定して 送信されたテキストメッセージをリッスンするようにマーク その番号でSBOYする。 そして、彼らがやっていることは、前方のものテキストです 我々のPHPベースのウェブサイトへのメッセージなど HTTPパラメータは、ここで、と言って。 この電話番号を使用してこのユーザ あなたにこのテキストメッセージを送った。 あなたが欲しいものをそれを行う。 だから私たちはその上にいくつかのソフトウェアを書いた SBOYメイザーのような文字列を受け取る クワッド、我々はそれを解析します。 我々は把握どこスペース 単語と単語の間です。 そしてクラスとして我々が決める どのように対応する。 そして、あなたは今、それをしようとすると、例えば、 あなたは内に応答を介して、表示​​されるはずです 数秒、次のいくつかのシャトルは行き メイザーからクワッドまであれば。 そして、他の停留所があります。 あなたは、ボイルストンまたは他のそのように入力することができます キャンパス内に停止し、それはすべき それらの単語を認識しています。 parse.comそう。 これは、我々がしてきたことを別のサービスである のために一部の学生を指す 素晴らしいですファイナルプロジェクト という点で、それはのための無料です 使用の合理的な金額。 そして、私はparse.comに行く場合は、表示されます これに代わるものであること 実際のような何かを持って 独自のMySQLデータベース。 と率直に言って、それだけだ 魅惑の一種。 これは、内部​​の何である でも、曇りの日に雲。 だからparse.comは、あなたが行うことができます 面白いことの束。 そして、他の選択肢があり そこにこれまで。 例えば、あなたがそれらを使用することができます あなたのバックエンドデータベースとして。 だから、持っている必要はありません ウェブホスティング会社。 あなたが持っている必要はありません MySQLデータベース。 代わりに、彼らのバックエンドを使用することができます。 あなたがのためにモバイルプロジェクトをやっている場合 AndroidやiOSの等が、知っている プッシュサービスのようなものが存在する ので、あなたの友人に警告をプッシュすることができます または、ユーザーのホーム画面。 そして、他の束 機能だけでなく、。 あなたが興味を持っているのであれば、これらのチェックアウト 彼らのようなウェブサイトやウェブサイト ただ見てどのように多くの他の人々 ' あなたが作るために上に立つことができる肩 自分の本当にクールなソフトウェアです。 さて認証、よくある質問、の観点から どのようにあなたが実際に保証しないことです ユーザーがキャンパスの人々であること、 ハーバード大学の学生や教職員やスタッフ? だからCS50は、独自の認証を持っている サービスはCS50 IDと呼ばれる。 そのURLに移動して、あなたを制限することができます ハーバード大学で誰にウェブサイト インスタンスのID、。 だから我々はそれを扱うことができることを知っている。 君たちはビジネスであってはならない というのは、ハーバード大学のIDは何ですか? あなたのハーバードPINとは何ですか? 私は今それで何かをやってみましょう。 我々はすべてのことをやる。 そして、私たちはあなたを何をされて戻ってあげる 誰かの名前とメールアドレスが、 小文字を区別しません何でも。 モバイルデバイス上のアプリ、それがすることができます モバイルデバイス上で動作するようにしましたが、 それはかなりそのために設計されていない。 だから、非自明を費やしてしまいます そうする時間の量。 だから私は落胆でしょう 今のところそのルート。 これは、本当にために意図されて Webベースのアプリケーション。 だから、ウェブホスティング。 あなたは上で見ていないのであれば もちろんのホームページ - そしてここでは、我々は話を始めましょうどこだ - ウェブホスティングは、すべての支払いについてです 通常、サービス、所有しているサーバーをホスト 持って、ウェブ上で他の誰かによって IPアドレス、次に、あなたを置く その上にウェブサイト。 そして、彼らは通常、あなたにメールを与える アカウントとデータベース および他のそのような機能を備えています。 あなたが実際にしたくない場合は、ことを知っている などのために支払う、そのURLにアクセスしてください そこに実際に非営利を持っCS50 あなたがするために使用できるアカウント 実際http://projectはそうではありません アプライアンスの内部 あなたの最終的なプロジェクトのために。 あなたは実際にそれが何になりたい場合 isawyouharvard.com、のような、 あなたは、そのドメイン名を購入することができます - が 1その特定しない - と その後、それをホスティングについて行くことができます 私たちが提供できるような公共のウェブサーバー ここを通じてあなたはみんな。 そして実際には不慣れな場合、 あなたはに行ったことがない場合 isawyouharvard.com、人は、そこに行く。 しかし二人は、それが若かったことを知っている あまりに2 Toorにテジによって女性の名前 数年前、三年前、誰だった 一日か二日に起こったCS50卒業生 CS50フェアは、電子メールを送出する前に、 彼女の家のメーリングリストと出来上がりに。 二日後CS50公正で、彼女が持っていた 数百人のユーザーは、すべてに忍び寄る お互い彼女のウェブサイト上と 彼らが見ていたどのように言って 彼女または彼のキャンパスで。 だからCS50のお気に入りの一つだ からのサクセスストーリー CS50最終的なプロジェクト。 それでは、どのようにウェブサイトを置くことについて行かない インターネット上のことを好きですか? まあ、いくつかのような存在だ ここで食材。 1だから、あなたは、ドメイン名を購入する必要があります。 における場所の束があります 世界にすることができますから ドメイン名を購入する。 そして例えば、私たちが推奨する1 それは人気があるという理由だけで それは安いですと呼ばれ namecheap.com。 しかし、あなたはgodaddy.com行くことができます そこに他人の数十。 あなたがレビュー上に読むことができます。 しかし、大部分はそうではありません あなたからの問題 ドメイン名を購入する。 そして、彼らは価格が異なり、 彼らは接尾辞が異なります。 。comのような接尾辞。ネット、 。ORG、。IO、。テレビ、それらの 実際に価格が異なります。 しかし、我々のような何かをしたい場合 cats.com我々は、このウェブサイトに行くことができます [検索]をクリックします。 おそらくこのいずれかが実行されます。 しかし、どうやら、catsagainst.com 入手可能です。 pluscats.comは入手可能です。 Lovecats、catscorner、dampcats.net。 うまくいけば、この擬似のすべて ランダムに生成された。 あなたはcats.pw、1500ドルだけを、必要な場合 これはちょっと非常識です。 だから、誰かが実際にすべてを強奪している ここに猫関連のドメイン名の 価格を変化させる。 余談ですが、見てみましょう。 誰cats.comを持っている? 君たちが見ていることを知っている あなたの処分はかなり 今、洗練されたコマンド。 私は文字通り、入力することができますように cats.comは誰ですか? と方法のためインターネットがある 構造は、実際に見ることができる人 これを登録している。 どうやらこの人は[聞こえない]です。 プロキシサービスを使用した。 だから誰cats.comが望んでいない所有 世界は彼らが誰であるか知っています。 だから彼らは、登録した経由なら いくつかのランダムなプライバシーサービス。 しかし、時にはあなたが実際 実際の所有者を取得します。 そして、これはあなたがしている場合は特に、と言うことです いくつかのスタートアップを追求し、 実際にいくつかのドメイン名が欲しい、あなたがしている ために他の誰かを支払うことを喜んで それには、連絡先を把握することができます そのように記載されている情報。 しかし、また、興味深いのはこれです。 私は、この部分までスクロールしてみましょう。 従ってこれは、同じ出力される。 そして、これは単に粘着性である。 だから明らかにcats.comはでき 適切な価格のためにあなた。 しかし、ここで興味深いものだ つまりネームサーバ - これは何名の合計虐待です サーバーは、ことになっている - あなたの名前 サーバがあるために仮定されていません thisdomainforsale.com。 - 私たちは、実際のようなものを選択した場合 もう少し何かを選択してみましょう 正当な、google.comが誰であるかを、のような とここまでスクロールします。 だからここに - 何が起こったのか? 興味深い。 人を超えています - それより低いキー保つてみましょう。 mit.eduは誰ですか? OK。 これは便利です。 だから、これは私が望んでいたものです。 DNSサービスの合法的な使用。 ネームサーバは、ここで示している 次。 これはいつ、というのがMITの方法です 世界の誰か、どこでも mit.eduで種類があり、ヒットは、入力 あなたのラップトップは、MacまたはPCかどうかは、意志 何とか最終的に見つけ出すこと 知っている世界の人々 IPアドレスは、mit.eduかのいずれかです。 サブmit.eduでド​​メインまたは任意の これらのここのサーバ - そして実際にそれ MITSインフラのように見えている あなたが期待するようなかなり堅牢。 彼らは複数の名前サーバを持っている これは、冗長性のために良いです。 実際に、それらはグローバルように見える 世界に分散。 これらの束は、米国にあると思われる アジアのカップルは、ヨーロッパでは一、二 でどこか。 しかし、ここでポイントは、DNSである 我々は当然のことと取ってきたし、 一般的に大きなエクセル表として記載 それは、IPアドレスとドメインを持っている 名前は、実際にはかなり洗練されています 階層サービスとなるように 世界の有限数は実際にはありませ 基本的に知っているサーバの の。COMSの全てであるか、すべて 。ネットは、すべてのです 。orgsは、など。 だから先に行くと、ドメインを購入するとき 格安の名前またはのような場所から名前 ダディを行くか、他のウェブサイトの一つ あなたがしなければならないだろうことを重要なステップ あなた、あなたもあなたの最後のためにこれを行う場合 プロジェクトでは、レジストラを教えている 誰からドメインを購入している 世界にあなたを知っている名前、 誰がウェブサイトのIPアドレス、 あなたのネームサーバがある。 ですから、例えばCS50のために、使用している場合 アカウントをホストしている - 私たちは持っているために起こる dreamhost.comを通じてこのアカウント それはある 人気のあるWebホスティング会社 - 彼らはあなたが買うべきことを教えてくれます あなたのドメインと世界に伝えること あなたのドメインのネームサーバがある ns1.dreamhost.com、ns2.dreamhost.com、 とns3.dreamhost.com。 しかし、それはそれだ。 ドメイン名を買うことは、それらを与えることを意味 のお金となって所有権 ドメインが、それは多くのようなものだ しかしレンタル。 あなたが年のためにそれを取得し、それら法案 recurringlyあなたの残りの部分 あなたの人生あなたがキャンセルするまで ドメイン名。 そして、あなたはそれらに誰を教え ネームサーバがある。 しかし、その後、あなたはで終わっ レジストラ。 そこから、あなたは、とだけ対話します ウェブホスティング会社、その CS50の場合には、Dreamhostのようになります。 しかし、再び、より多くのドキュメントは次のようになります あなたが行くことを決定した場合に提供 そのルート。 あなたは、コースの後にこれを行うのであれば ホスティング終わり、単にグーグルウェブ 同社は、数千人を上げます オプションの。 そして、私は一般的に次のことが奨励する 使用されたかもしれない友人を尋ねる 彼らはお勧めしている場合前会社 彼らと良い経験を持っていた。 夜ハエがたくさんあり​​ますので の男のようなウェブホスティング会社、 サーバーとの彼の地下室 それはIPアドレスを持っています。 彼はいくつかの余分なRAMとハードディスクを持っている スペースとだけ販売していますウェブホスティング その方法はありませんにもかかわらずアカウント サーバが数百を扱うことができる ユーザーまたはユーザーの何千もの。 だから、あなたが得る実現 あなたは何のために支払う。 かなりしばらくの間、私の個人的な家のための ページ - これは完全に受け入れられた 私は2、のように、持っていたので 訪問者月 - 私は2.95ドル毎月のように、払っていた。 そして、私はそれがあったかなり確信している 誰かの地下室である。 しかし、再び、あなたは必ずしも得ることはありません 稼働時間のいかなる保証または スケーラビリティ。 だからもう一度、通常見ている それ以上の何かで。 さて、どのようなSSLについて? だからSSLは何のために使われている? すぐに操縦するために始めましょう セキュリティの方向性や物事その 私たちに害を与えることができる。 特にあなたがベンチャーとして 自分で外に。 SSLとは何ですか、SSLは何のために使われている? セキュリティ、OK。 だからそれは、セキュリティのために使われています。 どういう意味ですか? だからそれは、Secure Sockets Layerの略。 それはURLで示されている それはhttps://で始まります。 私たちの多くは、おそらく入力したことがありません https://と、しかし、あなたは多くの場合のことを見つけることができます お使いのブラウザは、HTTPからにリダイレクトされます HTTPSは、なるようにすべてがそこにある 暗号化された後。 FYI、SSLを使用すると、一般的に必要とする あなたは、固有のIPアドレスを持っている。 そして一般的に固有のIPアドレスを取得する あなたは、Webホスティングを払う必要があります 月額数ドル以上の会社。 だから、これは非常に簡単であると認識 IPアドレスを購入することで、これらの日に実装 アドレスと何購入して SSL証明書と呼ばれる。 しかし、それが来るのかと認識 いくつかの追加コストで。 そして、我々だけで怖がらせるためにしようとするでしょうに ちょっと、それも必ずしも100%ではありません それが何の保護 あなたを保護しようとしている。 だからセキュリティのため、私はしようと思いましたね ここでランダムセグエの並べ替えを行う。 あなたは、CS50の講演から知っているかもしれませんが ビデオ、生産チームがしている 私は本当にいい取ることを持っているとしてファン キャンパスの写真撮影、そして空中 最近写真撮影。 あなたが今まで見て、あなたが表示されている場合 少しカメラで飛んで何か、 それは実際にCS50かもしれません。 そして、私はちょうど私がの分を共有しようと思いました チームが持っている映像の一部 集め、特に我々が目を向けると 春学期と次の秋。 あなたのうちのどれかがのためのコツを持っている場合 写真撮影、ビデオ撮影、我々はだろう あなたが巻き込まれるのが大好き 舞台裏。 週にそれらの詳細ではなく、もっと。 [MUSIC] DAVID J.マラン:あり判明 の上にミニチュアゴルフコース 我々は知っていないことスタジアム。 [MUSIC] DAVID J.マラン:あなたが見ることができます そこドローンの概要。 [MUSIC] DAVID J.マラン:ここで最良の部分 、左のジョガーを見ている。 [MUSIC] DAVID J.マラン:何の別の例 あなたは、の技術で行うことができます 唯一の接線方向に、率直に言って、 セキュリティに関連する。 しかし、私はもっとだろうと思った ただ、セキュリティを言うの楽しい方法。 だから、私達は人を怖がらせることができない場合は見てみましょう 今や少数のビットだけでなくと 脅威だけでなく、基礎 何これらの脅威を理解する あなたは前進することができます移動しているように、 擁護するかどうかをどのように決定し、 自分でこれらのことに対してとで あなたとして、それらに留意することが、少なくとも か否かに関して決定を下す そのメールを送って、ログに記録するかどうか そのウェブサイトに、するかどうかではない そのサイバーカフェのWi-Fiアクセスを使用 ポイントは、そうあなたは何を知っていることを 脅威があなたの周りに実際にある。 だからジョナサンは何かに呼ばれる 月曜日にこれが好き。 彼は、ウィンドウのスクリーンショットを持っていた。 これは、Macである。 これまでどのようにあなたの多くがインストールされている お使いのMacまたはPC上のソフトウェア? 明らかに誰も。 どのようにあなたがたの多くは、あまり考え与えている あなたのパスワードを入力する プロンプトが表示されたら? 私は率直に言っても、私はしない、という意味。 だから私たちのカップルは良いです 偏執的であることで。 しかし、あなたがしているかを検討 実際にここでやって。 典型的なMacやあなたが持っているPC上で 管理者アカウント。 そして、通常は使用している唯一の一つだね ノートパソコンには、少なくとも、これらの日。 だからあなたのアカウント、マランまたはJHarvard または、それが何であれ、ある 管理者アカウント。 そして、あなたは何を意味を持っている コンピュータへのアクセスをルート。 あなたは、あなたがしたい何かをインストールすることができます あなたが欲しいものを削除します。 ための、一般的に、これらの日、 数年前から時代遅れの設計上の決定、 ほとんどのソフトウェアがインストールされる方法 管理者としてです。 そして、あなたのMacやWindows PCには、少なくとも持っている場合でも 以上十分にスマート得 最新の化身と年 Mac OSおよびWindowsは、あなたのを実行しないように として、デフォルトではユーザ名 管理者は、あなたには、いくつかのをダウンロード インターネットから新たなプログラムとしてみてください それをインストールし、あなたはおそらくつもり あなたのパスワードの入力を求めるメッセージが表示される。 しかし、漁獲量は、その時点で、あなたがしているである 文字通りあなたの鍵を渡す ランダムに何を介してコンピュータ 先ほどダウンロードしたプログラム それをインストールすることができます 何それは望んでいる。 ジョナサンに触れたとして、実現 それがしたいと言うかもしれない あなたは気にしているソフトウェアをインストール について、SpotifyはやiTunesまたは任意の それはあなたがインストールしようとしているです。 しかし、あなたは文字通り、作家を信頼している ソフトウェアのか作者に だけ何をプログラム 行うことになっています。 しかし、絶対に何もありません 最も上のほとんどのプログラムを停止 ファイルを削除するから、オペレーティング·システム、 いくつかの会社のにアップロードするから 周りトローリングからWebサイト、 物事を暗号化する。 そして再び、私たちは、ソートを構築した インフラストラクチャ全体にわたって 信託歳。 そしてあなただけのしてきたことを認識 ランダムな人々を信頼するとランダム 大部分の企業。 ヨナタンは、時には、あまりにも触れたように これらの企業自体が一種のである 故意に悪意のある、大丈夫? ソニーは数年フラックの多くが巻き込ま 前にインストールするために呼ばれていたもの 人々のコンピュータ上のルートキットキット 彼らの知識がなくて。 そして、これの要旨はときにということでした 彼らは、そのインスタンスのCDを買った コピーできるようにしたくありませんでしたか の音楽をはぎ取る、CDがでしょう 、あなたの知らなくて、インストール コンピュータ上のルートキット。 だけで実行されるソフトウェアを意味ルートキット 管理者としてその潜在 悪いことを行います。 しかし、物事の間で、この事 それは自分自身を隠していたんでした。 だから、あなたのいくつかはかなり精通しているかもしれない コンピュータと知って、よく、私と 単にタスクマネージャまたは開くことができます アクティビティモニタと私はすべてを見ることができます arcanelyという名前のプログラムの それが実行されています。 と何か不審に見える場合 私はちょうどそれを殺すか、それを削除します。 しかし、それのルートキットが何をしたか。 タスクを実行している場合、それは本質的に、言った マネージャは、自分では表示されません。 だから、ソフトウェアがあった。 そして、あなたは本当に、本当に見えている場合にのみ 一生懸命あなたもそれを見つけることができる。 これは名前で行われていた コピー保護。 しかし、単に想像して何でし そうしないと行われている。 今自分を守るという点である。 Webサイトの多くは、素晴らしくあり 優雅なという点では、これらを入れて 彼らのホームページに南京錠のアイコンがどの ウェブサイトが安全であることを意味します。 これはbankofamerica.comからのものである 今朝。 だから、その小さな南京錠のアイコンが何をし [サインイン]ボタンの隣にそこに意味ですか? 絶対に何も。 それは誰かが使用する方法を知っていることを意味し の絵を作るためのPhotoshopの 南京錠のアイコン。 、文字通りそれがあるという事実が好きです 正であるように意図され ようなユーザーへの信号、 、安全なウェブサイトをoohの。 私は今、このウェブサイトを信頼する必要があり 自分のユーザー名とパスワードを入力します。 そして、これは従来のであった 年、として最近今朝として。 しかし、その習慣を考える これは私たちをに占めています。 暗黙のメッセージを考えてみているすべての これらのバンクこの場合にされている 年のために私達を送る。 あなたは南京錠が表示された場合、固定します。 大丈夫? それでは、どのようにそのシステムを悪用することができます あなたが悪い男なら信頼の? あなたのウェブサイト上の南京錠を入れて、 論理的に、ユーザがされている 想定する年間のコンディショニング 南京錠は、安全なことを意味します。 そしてそれは実際に安全である可能性があります。 あなたは素晴らしく安全な場合があります へのSSLのHTTPS接続 偽のウェブサイト。com。 世界で誰もが見ることができない あなたは彼または彼女を手渡すことを約していることを あなたのユーザー名とパスワード あなたのアカウントに。 ただし、これは多分、ある もう少し安心。 だから、これはトップのスクリーンショットです 私のブラウザは今朝での bankofamerica.com。 そして、私たちはここにも気付く 南京錠のアイコンが表示されます。 それはこの文脈でどういう意味ですか Chromeで少なくとも? だから、これは現在、SSLを使用している。 だから、これは実際には良いものです。 とChromeは、それを作っているという事実 緑は私たちの注意を喚起するためのものです これがあるという事実 SSLを介してだけでなく、。 これは、誰かが外の会社です 実際にはそこを確認しました bankofamerica.com。 そして、それは、アメリカのその銀行を意味 彼らのいわゆるSSLを買うとき 証明書、基本的に大きなランダム、 実装幾分乱数 それらのためのセキュリティ、彼らがしている いくつかの独立した第三者によって検証 言うパーティー、うん。 これは実際に銀行の最高経営責任者(CEO)である アメリカは、証明書を購入しよう。 Chromeはそのため信頼している 認証局とで言う 緑、これはbankofamerica.comです。 とバンク·オブ·アメリカはわずか数を支払う 百のためにドルや少数 とは対照的に、千 ドルの数十。 しかし、ここであまりにも、あなたのどのように多くの今まで持っている ので、任意の異なる挙動 ブラウザ内のURLです 黒の代わりに緑? 右? だから私たちのカップル。 そして、それは被害妄想であることが良いことだ。 しかし、その時でさえ、あなたのそれらの人々であっても これらの事に気づく、実際にあなたを行う そうしないと安全にログイン停止 ウェブサイトのURLであれば、緑色ではないでしょうか? すべての権利なので、おそらくではない、右? 、私たちのほとんどは、少なくとも、それが緑色ではない場合 最も可能性の高いあなただけのつもり のようになり、何でも。 同様に、私はこのウェブサイトにログインする。 私がここにいる理由です。 私はそれにもかかわらずにログインするつもりです。 余談ですが、Chromeは少しです これについてより良い。 しかし、のようなブラウザの多くはあり Firefoxのインスタンスのために、少なくともための しばらくの間、その南京錠のアイコン ですが、実際にはいずれかを置くことができます 独自のアイコン。 私は何の最新版を見てみましょう 、Firefoxのように見えます。 だから我々はCS50.netに行けば。 [OK]を、ので、彼らは同様に良くなってきました。 何をするために使用するブラウザには、好きです ここでは、例えばです[? SAASの?] ここまでCREST。 すなわち、いわゆる好みの散策 ウェブサイトのためのアイコン。 何年も前に - 実際にはそのずっと前に - その小さな シールドは右だったでしょう ここにURLの隣にあります。 いくつかの天才が決定しているので、そのこと ただ持っていることは非常に上品になります あなたのグラフィカルなロゴの右 あなたのURLの隣にあります。 実際とデザイン面では、 かなり説得力がある。 それでは、悪い男がやって始めたのですか? 彼らは自分の好きなを変え始めた アイコン、またはのためにそれらのデフォルトのアイコン クレストはないとホームページ 持っていたが、南京錠、 全く意味はありません。 自分の好きなアイコン以外 それはありませんでした南京錠だった セキュリティの兆候。 ここでの教訓がありますので、 カップルだと思います。 一つは、いくつかは実際にあるということです ための善意のメカニズム でも、私たちの安全保障についてユーザーに教える あなたも気づいていなかった場合、緑の何 意図あるいはHTTPSが何を意味するか。 しかし、これらのメカニズムは、に私たちを取得する場合 信頼のウェブサイトの悪い癖 我々はこれらの肯定的な信号を見るとき、 私たちが見たように、それらは非常に簡単に虐待している ちょっと前に何か このような愚かな。 だから、セッションハイジャックが入ってくる 、我々は前に言ったように、プレー 例えばクッキー。 そして、これは実際に何を意味するのでしょうか? まあセッションハイジャックでこれがすべてです 誰かのクッキーを盗んについて。 私はここでChromeを開くのであれば、のために 例えば、私はインスペクタを開く ダウンここで、私はに行く ネットワークタブ - そして我々は前にこれをやった - と私のような何かに行く http://facebook.comエンター、全体 原料の束は、画面上を行く なぜなら、すべての画像とCSSとの JavaScriptファイル。 私はここでこの1を見ればしかし気付く Facebookは確かに1を植えていること 私の上の以上のクッキー ここブラウザ。 したがって、これらは本質的に手である 私を表すスタンプ。 そして今、うまくいけば私のブラウザでは、意志 ときに何度も何度も、これを提示 そのウェブサイトを再訪。 しかし、安全であるだけで、我々は言った 数週間前に、SSLを使用している場合。 しかし、SSL自体はできます 危険にさらされる。 はるばるSSLの作品の後考えてみましょう。 お使いのブラウザでは、リモートに接続するとき https://と、短い長い話、を介して、サーバ 暗号が関与している。 それはシーザーのように単純ではありませんか さえヴィジョネアまたはDES、DESから しばらく前pset2た。 これは、それよりもより洗練されたのです。 これは、公開鍵暗号と呼ばれています。 しかし、本当に大きな、本当にランダム 番号がスクランブルするために使用され ポイント間の情報、あなた、 facebook.comのように、点B、。 しかし、問題は、どのように私たちの多くは再び 開始するにはhttps://の中でこれまでのタイプ 当社のウェブサイトの接続 そのセキュアモードで? 私はどのようにあなたの多くでも、意味 タイプhttp://facebook.com? あなたがしなければ大丈夫、、こんにちは、好きです。 あなたがそれを行う必要はありません もう、右? ブラウザはそれを把握します。 しかし、私たちのほとんどは、実際に行う ただfacebook.comを入力します。 我々はブラウザを使っている場合、そのため ブラウザはによって十分にスマート頂いております あなたが使用している場合を前提とする2013 ブラウザは、あなたは、アドレスであなたを入力 おそらくそれをしないアクセスしたい 電子メールまたはインスタントメッセージを介して。 あなたがHTTPとポート80を意味する。 それらの規則が採用されています。 しかし、どのようにリダイレクト動作しますか? さて、ここで何が起こるかに気づく。 私はクロームに戻った場合 - とみましょうお忍びでこれを行う モードの私のすべてのように クッキーは捨てています。 そして、私がここを手放す 再び、facebook.com。 そして何が起こるか見てみましょう。 最初の要求があったことを思い出してください 確かにただfacebook.comため。 しかし、私が得た応答は何でしたか? これは、200 OKではなかった。 それはある、300、または301だった に行くために私に言ってリダイレクト ですhttp://www.facebook.com、 Facebookは私が行きたいところ。 しかし、その後、我々は次の要求を見れば、 そして我々は、前にこれを見てきました 彼らの第二の応答が何であるかに気づく。 具体的に彼らが今私をしたい フェイスブックのSSLバージョンに行く。 だからここに機会がある。 これは素晴らしく便利な機能です 単にWebとHTTPの。 Facebookのようなエンドユーザーは私を望んでいる場合 彼らの安全なバージョンに滞在する ウェブサイト、素晴らしい。 彼らは自分自身のために私をリダイレクトします。 そして私もする必要はありません それについて考える。 しかし、点AとBの間の場合 あなたとFacebookとの間で、いくつかはあり 悪い男は、いくつかのシステムがあり 好奇心旺盛だハーバード大学の管理者 あなたの友人が誰であるか確認してください。 またはいくつかがそこにある - 数年前、これがクレイジーに聞こえるために使用 - しかし、のようないくつかの政府機関はあり 実際に興味を持っているNSA 誰が、あなたは、Facebook上で突っついている。 そこにチャンスはどこにありますか。 まあ、あまりにも長い間、誰かが十分に持っているので 精通した技術と、彼らはアクセス権を持って のWi-Fi経由であなたの実際のネットワークへ またはいくつかの物理的な線、 彼らは何ができますか? まあ、それは、同じネットワーク上にいるかのように あなたと彼らはについて何かを知っている TCP / IPとIPアドレスとDNSと方法 その作品のすべて、どのような場合にその 真ん中の男は、何を国民場合 何でも安全保障局、 単純であるが、どのような場合があり、そのエンティティ ためにFacebookよりも速く応答する あなたのHTTPリクエストと言う、 ああ、私はフェイスブックです。 先に行くと、ここに facebook.comのHTML。 コンピュータはかなりくそ高速です。 だから、上で動作するプログラムを書くことができます それはときにnsa.govようなサーバ ためのあなたからのリクエストを聞く facebook.com、非常に迅速に背後 シーンが作る本物のfacebook.comを取得 完全に[?風?]セキュア NSAの間との間でSSL接続 非常にそのHTMLを取得して、Facebookや しっかりとログインページ、次いで NSAサーバはちょうどあなたに応答 facebook.comのログインページで。 今どのようにあなたの多くも、気付くだろう あなたは、HTTP経由でフェイスブックを使っていることを まだその時点であなたがたので 誤っnsa.govに接続されており、 ではないFacebookの? URLは変更しない。 このすべてが行われている 舞台裏。 しかし、私たちのほとんどは、私も含め、 おそらく気づかないでしょう このようなマイナーな細部。 だから、完全に実行可能な場合があります あなたと何の間の接続 Facebookのだと思うが、そこ 中央の男性、いわゆる。 そして、これはの人のための一般的な用語である あなたには、いくつかのを持っている中間者攻撃 あなたと点Bの間に実体だ 何とか、操作盗む、または あなたのデータを見ている。 そうであってもSSLは特に、確実なない あなたはだまされてきた場合 理由からそれをオンにする方法ではなく、これらの 根本的なメカニズムは、実際に動作します。 だからレッスン今日はその後すぎる場合 本当に偏執的になりたい - さらには、ここでの脅威があります - あなたは本当にに取得を開始する必要があり https://wwwにおけるタイピングの癖 どのようなドメイン名はあなた 実際に気に。 そして脇もそこだとして とさらに別の脅威 セッションハイジャックに考えています。 非常に多くの場合は、最初に訪問したときに ない限り、facebook.comのようなウェブサイト、 サーバーは、その回答をするように設定されている それがあなたの上に置くその手のスタンプ 昨日は、それ自体安全であるべき ブラウザは非常によく、時かもしれない facebook.comのような訪れるもの google.com、twitter.com、ブラウザ それだけで手のスタンプを提示する可能性があります いや、ダウン平手打ちと言うことができます。 SSLを使用してください。 しかし、それはその時点で手遅れ。 あなたはすでにあなたの手を送っている場合 と明らかにスタンプ、あなたのクッキー、 全くSSL、あなたは一瞬もありません 誰かが盗聴脆弱性 あなたのトラフィック、ルームメイトやNSAかどうか、 その同じクッキーを使用することができ、かつ 技術に精通したのビットと、 彼または彼女自身としてそれを提示します。 あなたは可能性がある別の攻撃 については考えていない。 あなたがネジ場合こちらは、あなたに本当に いくつかのウェブサイトのことを書面でこれまで 何とかSQLを使用しています。 だからここに、例えば、画面です ハーバードのログインのショット。 そして、これは一般的な例です で何かの ユーザ名とパスワードを入力します。 一般的なスーパー。 だからSSLが存在し、ことを前提としていてみましょう または途中でだれもありません そのような何か。 今我々は、サーバーのに焦点を当てている あなたが書くかもしれないコード。 まあ、私は、ユーザー名を入力したとき パスワード、仮定そのPINサービス PHPで実装されています。 そして、あなたはいくつかのコードを持っているかもしれません このように、そのサーバー上の。 ポストスーパーからユーザー名を取得 グローバルおよびパスワードを取得した後、 彼らはいくつかのpset7などを使用している場合 コー​​ドクエリ機能があり それがこれを行うことがあります。 ユーザーからスターを選択します。ここで、ユーザー名 それに等しく、パスワードはそのに等しい。 一見、見えること、 完全に合理的。 これは、構文的に有効なPHPコードである。 論理的には何もありません これで間違って。 おそらく、いくつかのより多くの行がそこだ 実際に何かをする 戻ってくる結果 データベースから。 しかし、これはために脆弱性が存在します 以下の理由。 ことに注意して、善良な市民のように、 私は、単一引用符で入れている 引用符、ユーザー名。 そして、私は単一引用符に入れ パスワード。 そして、彼らがしているので、それは良いことだ 数字のはずではない。 典型的には、テキストになるつもりだ。 だから私は、文字列のようにそれらを引用しています。 そして、私は今何場合さらに進める場合 - と私はから弾丸を削除しました 一時的にサービスをPIN - 私はとしてログインしようとした場合どのような 社長[? Scroob?] しかし、私は自分のパスワードであることを主張する 12345 'OR '1' = '1、と予告 私は行っていないのか。 私は他のを閉じていなかった 単一引用符。 私はかなりシャープだから ここで悪者として。 そして私は、彼らはあなたがしているしていると仮定してい あなたと非常に良いではありません PHPとMySQLのコード。 私はあなたがチェックしていないことを推測している 引用符の存在について。 だから何が起こっていることは、ときにあなたのです ユーザーは、その文字列で入力した あなたがしようとしているクエリ 作成は、次のようになります。 と長い話を短く、あなたとなら 一緒に何かするか、または何か 一緒にこれを返すために起こっている データベースから行。 それは常にあるので 1は1に等しくなる場合。 そして、あなたが予想していなかったという理由だけで 良いか悪いかユーザーが、かもしれないこと 自分の名前にアポストロフィがありましたら まだあるSQLクエリーを作成した 有効な、今より多くの結果を返します あなたは、意図しているかもしれないより。 そしてこの悪い男は今、潜在的に持って あなたのサーバーにログイン データベースは、行を返しているので、 彼または彼女は考えを持っていない場合でも、どのような [? Scroobの?]実際のパスワードです。 ああ、私はタイプミスここに実現しました。 私はパスワードが等しく言ったはず 以前のような12345 例や1は1に等しい。 私はオンラインで修正します。 では、なぜ私たちは、あなたは、クエリを使用していなかった 疑問符を持つ関数? ことの一つの問合せ機能 あなたのためにそれを確認しますでないこと あなたは、後に引数を渡すとき このように、ここでコンマそのクエリ 実際に送信されること データベースは次のようになります。 ロットを見て醜いが、バック スラッシュが自動的にされている 正確にそれを避けるために挿入された 私が示したインジェクション攻撃 一瞬前。 今、楽しみは私が引くだろうと思っていることXKCD ここまでうまくいけば、今する必要があること もう少し理解 ここではこの一つです。 少し? 多分、我々はもう少し必要 その上で議論。 だから、これは小さな子供をほのめかしている 何とか取ったボビーという名前 ただでウェブサイトの利点 どのユーザーが入力したことを信頼 で、実際には、SQLコードではありません 実際には文字列です。 今、あなたはそのドロップを思い出すかもしれません - あなたはこれを見たことがあるかもしれない - ドロップ手段を テーブルを削除し、データベースを削除します。 あなたは本質的にあることを主張するのであれば あなたの名前はロバート "です。droptabl estudentsomething、] あなたは非常によく、データベースをだますかもしれない だけでなく、あなたがしていることを確認しに また確かにロバートが、セミコロン テーブルを削除するために進んでください。 することができますので、SQLインジェクション攻撃 このような脅しとして実際になる あなたが誰かのデータを削除することができる、 あなたはより多くの件のデータを選択することができます 意図された、あなたは、挿入することができます またはデータを更新します。 そして、あなたは、実際に上にこれを見ることができます 悪意のホームエクササイズではなく、 目的が、単に教育のために、 あなたがログインするように要求している任意の時間です 特にウェブサイトのいくつかの並べ替えに 非非常に公共、非常に人気のあるウェブサイト、 ジョンオライリーとしてログインを試みる でまたは誰か 自分の名前にアポストロフィ。 それとも文字通り、アポストロフィを入力 入力して、何が起こるか見て打つ。 そして、あまりにも頻繁に、悲劇的に、人々 とその入力をサニタイズしていない 引用符のようなものということを確認しました またはセミコロンがエスケープされます。 pset7で我々が与える理由である あなたこのクエリ機能。 しかし、下に正確に理解していない それはあなたのために何をやっている。 だから使って楽しむ、と述べたと ウェブ今週。 そして、私たちは月曜日にあなたが表示されます。 次のCD50で。 [MUSIC]