WEBVTT 00:00:00.000 --> 00:00:14.820 33C3 intromusiikki 00:00:14.820 --> 00:00:20.190 Herald: Seuraava esitelmä käsittelee TLS 1.3 käyttöönottoa 00:00:20.190 --> 00:00:23.509 ja sen esittävät Filippo Valsorda sekä Nick Sullivan, 00:00:23.509 --> 00:00:26.989 jotka he molemmat työskentelevät Cloudflarelle. 00:00:26.989 --> 00:00:32.110 Joten toivottakaamme lämpimästi tervetulleeksi Nick ja Filippo! 00:00:32.110 --> 00:00:39.490 aplodeja 00:00:39.490 --> 00:00:43.820 Filippo: Hei kaikki. Puheenaiheenamme tänään on TLS 1.3. 00:00:43.820 --> 00:00:48.340 TLS 1.3 on tietenkin uusin versio TLS:stä, joka tulee sanoista 00:00:48.340 --> 00:00:52.960 "Transport Layer Security". Se on ehkä tutuin 00:00:52.960 --> 00:00:57.900 vihreästä lukon kuvasta selaimessa, tai vanhasta nimestään: SSL, 00:00:57.900 --> 00:01:02.510 jota yritämme edeelleen tappaa. TLS on 00:01:02.510 --> 00:01:07.890 läpinäkyvä turvallisuusprotokolla, joka voi turvallisesti tunneloida 00:01:07.890 --> 00:01:12.460 mielivaltaista sovellusliikennettä. Sitä käyttävät tietenkin web-selaimet, 00:01:12.460 --> 00:01:16.760 sitä käyttävät sähköpostipalvelimet turvaamaan keskinäistä 00:01:16.760 --> 00:01:22.270 SMTP liikennettään. Sitä käyttävät Tor-solmut keskinäiseen kommunikointiinsa. 00:01:22.270 --> 00:01:26.810 Mutta se kehittyi yli 20 vuoden ajan, 00:01:26.810 --> 00:01:31.320 mutta pohjimmiltaan se koskee asiakasta ja palvelinta jotka haluavat kommunikoida 00:01:31.320 --> 00:01:36.119 turvallisesti verkon yli. Kommunikoidakseen turvallisesti verkon yli 00:01:36.119 --> 00:01:41.170 niiden täytyy luoda avainmateriaalia, sopia keskenään avainmateriaalista 00:01:41.170 --> 00:01:47.349 molemmin puolin salatakseen tulevan liikenteen. 00:01:47.349 --> 00:01:51.989 Se, miten avainmateriaalista sovitaan, hoidetaan vaiheessa, jota kutsumme 00:01:51.989 --> 00:01:57.890 "kättelyksi". Kättelyssä on mukana julkisen avaimen kryptografiaa ja 00:01:57.890 --> 00:02:02.670 dataa, jota lapioidaan asiakkaalta palvelimelle, palvelimelta asiakkaalle. 00:02:02.670 --> 00:02:07.170 Tältä kättely näyttää TLS 1.2:ssa. 00:02:07.170 --> 00:02:12.790 Asiakas aloittaa tanssit lähettämällä "Client Hello"-viestin, 00:02:12.790 --> 00:02:18.960 jossa kertoo, mitä tuettuja parametreja se voi käyttää. NOTE Paragraph 00:02:18.960 --> 00:02:23.430 Palvelin vastaanottaa sen ja lähettää oman viestinsä, joka on 00:02:23.430 --> 00:02:28.200 "Server Hello", joka sanoo "Selvä! Käytetään tätä salausalgoritmien yhdistelmää, 00:02:28.200 --> 00:02:33.230 jota sanot tukevasi, ja tässä on minun avainosuuteni käytettäväksi 00:02:33.230 --> 00:02:39.270 tässä avaintenvaihtoalgoritmissa. Lisäksi, tässä on sertifikaatti, 00:02:39.270 --> 00:02:45.300 jonka on allekirjoittanut auktoriteetti, joka todistaa, että todellakin olen 00:02:45.300 --> 00:02:50.370 Cloudflare.com. Ja tässä on allekirjoitus sertifikaatista todistamaan, että tämä 00:02:50.370 --> 00:02:55.450 avainosuus on todellakin se, jota haluan sinun käyttävän avainten luomiseen." 00:02:55.450 --> 00:03:00.940 Asiakas vastaan ottaa sen ja generoi oman avainosuutensa, eli oman puolensa 00:03:00.940 --> 00:03:06.200 Diffie-Hellman avaintenvaihdosta, ja lähettää avainosuuden sekä NOTE Paragraph 00:03:06.200 --> 00:03:10.999 viestin kertoakseen: "Se oli siinä. Kättely on nyt paketissa". 00:03:10.999 --> 00:03:15.490 Tätä kutsutaan "Finished" viestiksi. Palvelin vastaanottaa sen, luo 00:03:15.490 --> 00:03:20.679 oman "Finished" viestinsä ja vastaa sillä. Eli 00:03:20.679 --> 00:03:25.930 nyt voimme vihdoin lähettää sovellusdataa. Kerrataanpa vielä prosessi: 00:03:25.930 --> 00:03:30.022 Asiakas -> Palvelin, Palvelin -> Asiakas; Asiakas -> Palvelin, Palvelin -> Asiakas. 00:03:30.022 --> 00:03:34.960 Meidän täytyi tehdä 2 edestakaista matkaa asiakkaan ja palvelimen välillä ennen 00:03:34.960 --> 00:03:40.730 mitään muuta. Emme ole lähettäneet tavuakaan sovelluskerroksella 00:03:40.730 --> 00:03:46.010 ennen tätä. Tämä tietenkin matkapuhelinverkoissa 00:03:46.010 --> 00:03:50.539 tai tietyissä maailmankolkissa voi kerryttää 00:03:50.539 --> 00:03:55.320 satojen millisekuntien viiveen. Ja tämä täytyy tehdä 00:03:55.320 --> 00:04:00.930 joka kerta, kun uutta yhteyttä avataan. Joka kerta asiakkaan ja palvelimen 00:04:00.930 --> 00:04:06.490 täytyy kulkea kahdesti välinsä luodakseen avaimet ennen 00:04:06.490 --> 00:04:12.730 kuin yhteyttä voi oikeasti käyttää. TLS 1.1 00:04:12.730 --> 00:04:17.950 ja 1.0 eivät eronneet suuresti 1.2:sta. Voisikin kysyä: miksi sitten 00:04:17.950 --> 00:04:23.750 pitää kokonainen esitys TLS 1.3:sta, joka on luultavasti vain taas yksi 00:04:23.750 --> 00:04:31.430 iteraatio samasta konseptista? No, TLS 1.3 on oikeasti iso uudelleensuunnittelu. 00:04:31.430 --> 00:04:36.740 Erityisesti kättely on uudelleen järjestetty. Ja tämän näkyvin tulos 00:04:36.740 --> 00:04:43.139 on se, että yksi kokonainen edestakainen matka on karsittu pois. 00:04:43.139 --> 00:04:48.929 Eli, tältä näyttää TLS 1.3-kättely. 00:04:48.929 --> 00:04:53.479 Kuinka 1.3 poistaa edestakaisen matkan? Miten se pystyy siihen? Se kykenee siihen 00:04:53.479 --> 00:04:59.799 ennustamalla, mitä avaintenvaihtoalgoritmia 00:04:59.799 --> 00:05:04.740 palvelin tulee käyttämään, ja lähettämällä ennakkoon avainosuuden 00:05:04.740 --> 00:05:10.029 tuota algoritmia varten palvelimelle. Eli ensimmäisessä viestissä meillä oli 00:05:10.029 --> 00:05:15.529 "Client Hello", tuetut parametrit ja avainosuus algoritmille, 00:05:15.529 --> 00:05:21.549 josta asiakas uskoo palvelimen pitävän. Palvelin vastaanottaa viestin 00:05:21.549 --> 00:05:27.239 ja jos kaikki menee hyvin, se ajattelee: "Ah! Okei! Tykkään tästä avainosuudesta. 00:05:27.239 --> 00:05:32.789 Tässä on oma avainosuuteni samaa algoritmia varten, ja tässä muut 00:05:32.789 --> 00:05:37.719 parametrit, joita meidän tulisi käyttää." Se välittömästi sekoittaa avainosuudet 00:05:37.719 --> 00:05:42.319 saadakseen jaetun yhteisen avaimen, koska nyt sillä on molemmat avainosuudet - 00:05:42.319 --> 00:05:47.089 asiakkaan ja palvelimen - ja lähettää taas sertifikaatin ja allekirjoituksen 00:05:47.089 --> 00:05:51.339 sertifikaatista, ja sitten välittömästi lähettää "Finished"-viestin, koska 00:05:51.339 --> 00:05:56.339 se ei tarvitse mitään muuta asiakkaalta. Asiakas vastaanottaa tuon, ottaa 00:05:56.339 --> 00:06:02.020 avainosuuden, luo jaetun yhteisen avaimen ja lähettää oman "Finished" viestinsä, 00:06:02.020 --> 00:06:07.009 ja on valmis lähettämään sitä sovellus- dataa, jota olikaan lähettämässä. 00:06:07.009 --> 00:06:12.650 Esimerkiksi HTTP-pyyntösi. Nyt prosessi meni näin: 00:06:12.650 --> 00:06:15.919 Asiakas -> Palvelin, Palvelin -> Asiakas. 00:06:15.919 --> 00:06:21.330 Ja olemme valmiita lähettämään sovelluskerroksen dataa. Eli, jos olit 00:06:21.330 --> 00:06:27.239 avaamassa HTTPS-yhteyttä, selaimesi 00:06:27.239 --> 00:06:32.769 ei tarvitse odottaa nelinkertaista viivettä, nelinkertaista pingiä. Sen täytyy 00:06:32.769 --> 00:06:38.929 odottaa vain kaksinkertainen, ja tämä tietysti säästää satoja millisekunteja 00:06:38.929 --> 00:06:46.199 viivettä kun avataan uusia yhteyksiä. Tämä oli onnellinen tapaus. 00:06:46.199 --> 00:06:52.299 Näin käy kun ennustus osuu oikeaan ja palvelin tykkää asiakkaan 00:06:52.299 --> 00:06:58.449 avainosuudesta. Jos palvelin ei tue avainosuutta, jonka 00:06:58.449 --> 00:07:05.169 asiakas lähetti, se lähettää kohteliaan pyynnön käyttää jotain toista algoritmiä, 00:07:05.169 --> 00:07:10.530 jota asiakas sanoi tukevansa. Tätä viestiä kutsutaan nimellä "Hello Retry Request". 00:07:10.530 --> 00:07:16.469 Siinä on eväste, joten se voi olla tilaton mutta periaatteessa se on varakeino, 00:07:16.469 --> 00:07:21.970 jolla palataan käytännössä TLS 1.2 kaltaiseen kättelyyn. Eikä se ole kovin 00:07:21.970 --> 00:07:26.939 vaikea toteuttaa, koska asiakas jatkaa uudella "Client Hello":lla, joka näyttää 00:07:26.939 --> 00:07:34.489 periaattessa täysin samalta kuin täysin tuorekin. Nyt... 00:07:34.489 --> 00:07:42.179 Tässä kohtaa olen valehdellut. TLS 1.2 ei aina ole 2 edestakaista matkaa. 00:07:42.179 --> 00:07:47.779 Suurin osa yhteyksistä, joita näemme esimerkiksi Cloudflaren reunalta ovat 00:07:47.779 --> 00:07:53.299 istunnon jatkamisia. Eli asiakas on ollut yhteydessä k.o. sivustolle aiemmin. 00:07:53.299 --> 00:07:59.079 Ja voimme käyttää tätä, voimme hyödyntää tätä ja tehdä kättelystä nopeamman. 00:07:59.079 --> 00:08:06.290 Tämä tarkoittaa, että asiakas muistaa jotain avainmateriaalista, jotta pystyy 00:08:06.290 --> 00:08:10.959 avaamaan seuraavan yhteyden vain yhdellä edestakaisella matkalla myös TLS 1.2:ssa. 00:08:10.959 --> 00:08:16.019 Eli tältä se näyttää. Tässä on normaali TLS 1.2 täysi kahden edestakaisen 00:08:16.019 --> 00:08:22.479 matkan yhteys. Ja tässä palvelin lähettää lipun uutta istuntoa varten. Istuntolippu 00:08:22.479 --> 00:08:30.029 ei ole sen kummempi kuin salattu kapseloitu blob sisältäen avainmateriaalia 00:08:30.029 --> 00:08:35.100 jonka asiakas säilyttää. Lippu on salattu ja allekirjoitettu avaimella, 00:08:35.100 --> 00:08:40.039 jonka vain palvelin tietää. Eli se on täysin läpinäkymätön asiakkaalle. 00:08:40.039 --> 00:08:45.040 Mutta asiakas säilyttää sen sekä yhteyden avainmateriaalin, 00:08:45.040 --> 00:08:49.340 jotta seuraavan kerran kun se avaa yhteyttä samalle sivustolle 00:08:49.340 --> 00:08:54.439 se lähettää "Client Hello":n ja istuntolipun. 00:08:54.439 --> 00:08:59.180 Jos palvelin tunnistaa lipun, se purkaa salauksen ja löytää sisältä 00:08:59.180 --> 00:09:04.090 avainmateriaalin. Ja nyt, vain yhden edes- takaisen matkan jälkeen, palvelimella on 00:09:04.090 --> 00:09:09.820 yhteistä avainmateriaalia asiakkaan kanssa koska asiakas säilytti sen viime kerrasta 00:09:09.820 --> 00:09:15.460 ja palvelin juuri purki sen salatusta istuntolipusta. 00:09:15.460 --> 00:09:20.890 Ok? Eli nyt palvelimella on jo käytet- tävissä yhteisiä jaettuja avaimia ja se 00:09:20.890 --> 00:09:26.150 lähettää "Finished" viestin ja asiakas vastaa "Finished" viestillä ja pyynnöllä. 00:09:26.150 --> 00:09:31.550 Eli tämä on TLS 1.2. Tätä tapahtuu jo joka päivä useimpien 00:09:31.550 --> 00:09:37.380 modernien TLS-yhteyksien kanssa. 00:09:37.380 --> 00:09:43.530 TLS 1.3-istunnon jatkaminen ei ole kovin erilainen. Siinäkin on istuntolipun käsite 00:09:43.530 --> 00:09:48.300 Istuntolipun sisällön nimi on muutettu "PSK":ksi, mutta se tulee vain sanoista 00:09:48.300 --> 00:09:53.220 "Pre-shared Key", koska sitähän se on: pelkkää avainmateriaalia, josta 00:09:53.220 --> 00:09:58.480 oli sovittu aiemmin. Ja se toimii samalla tavalla: 00:09:58.480 --> 00:10:02.830 palvelin vastaanottaa istuntolipun, purkaa salauksen ja hyppää 00:10:02.830 --> 00:10:07.450 "Finished" viestiin. 00:10:07.450 --> 00:10:13.070 Ongelma istunnon jatkamisessa on se, että jos hyökkääjällä on hallussaan 00:10:13.070 --> 00:10:17.130 istuntolippu - eli avain, jota palvelin käyttää salamaan istuntolipun, 00:10:17.130 --> 00:10:21.540 jonka sisällä avainmateriaali on - 00:10:21.540 --> 00:10:27.050 hyökkääjä voi passiivisesti, tai jopa tulevaisuudessa kaapatun yhteyden 00:10:27.050 --> 00:10:33.460 tapauksessa, purkaa istuntolipun "Client Hello":sta, löytää sieltä PSK:n 00:10:33.460 --> 00:10:38.320 ja käyttää sitä purkamaan koko yhteyden salauksen. Tämä ei ole hyvä. 00:10:38.320 --> 00:10:42.519 00:10:42.519 --> 00:10:47.819 00:10:47.819 --> 00:10:52.540 00:10:52.540 --> 00:10:56.270 00:10:56.270 --> 00:11:01.310 00:11:01.310 --> 00:11:07.050 00:11:07.050 --> 00:11:11.760 00:11:11.760 --> 00:11:16.720 00:11:16.720 --> 00:11:21.409 00:11:21.409 --> 00:11:25.499 00:11:25.499 --> 00:11:31.710 00:11:31.710 --> 00:11:36.009 00:11:36.009 --> 00:11:41.339 00:11:41.339 --> 00:11:46.290 00:11:46.290 --> 00:11:51.240 00:11:51.240 --> 00:11:55.770 00:11:55.770 --> 00:11:59.510 00:11:59.510 --> 00:12:04.620 00:12:04.620 --> 00:12:09.099 00:12:09.099 --> 00:12:12.819 00:12:12.819 --> 00:12:17.879 00:12:17.879 --> 00:12:22.860 00:12:22.860 --> 00:12:29.580 00:12:29.580 --> 00:12:34.701 00:12:34.701 --> 00:12:40.830 00:12:40.830 --> 00:12:47.280 00:12:47.280 --> 00:12:52.140 00:12:52.140 --> 00:12:58.331 00:12:58.331 --> 00:13:04.210 00:13:04.210 --> 00:13:10.119 00:13:10.119 --> 00:13:15.680 00:13:15.680 --> 00:13:20.439 00:13:20.439 --> 00:13:25.349 00:13:25.349 --> 00:13:29.920 00:13:29.920 --> 00:13:34.410 00:13:34.410 --> 00:13:39.409 00:13:39.409 --> 00:13:45.369 00:13:45.369 --> 00:13:50.770 00:13:50.770 --> 00:13:55.270 00:13:55.270 --> 00:14:00.289 00:14:00.289 --> 00:14:05.339 00:14:05.339 --> 00:14:11.320 00:14:11.320 --> 00:14:16.460 00:14:16.460 --> 00:14:22.540 00:14:22.540 --> 00:14:27.829 00:14:27.829 --> 00:14:33.040 00:14:33.040 --> 00:14:38.620 00:14:38.620 --> 00:14:44.000 00:14:44.000 --> 00:14:49.150 00:14:49.150 --> 00:14:54.969 00:14:54.969 --> 00:15:00.029 00:15:00.029 --> 00:15:05.350 00:15:05.350 --> 00:15:11.519 00:15:11.519 --> 00:15:16.679 00:15:16.679 --> 00:15:23.020 00:15:23.020 --> 00:15:28.340 00:15:28.340 --> 00:15:33.379 00:15:33.379 --> 00:15:39.119 00:15:39.119 --> 00:15:45.030 00:15:45.030 --> 00:15:50.300 00:15:50.300 --> 00:15:55.090 00:15:55.090 --> 00:16:01.279 00:16:01.279 --> 00:16:06.000 00:16:06.000 --> 00:16:11.149 00:16:11.149 --> 00:16:15.819 00:16:15.819 --> 00:16:22.689 00:16:22.689 --> 00:16:28.270 00:16:28.270 --> 00:16:33.199 00:16:33.199 --> 00:16:39.329 00:16:39.329 --> 00:16:45.449 00:16:45.449 --> 00:16:51.709 00:16:51.709 --> 00:16:58.070 00:16:58.070 --> 00:17:03.150 00:17:03.150 --> 00:17:07.580 00:17:07.580 --> 00:17:13.149 00:17:13.149 --> 00:17:17.689 00:17:17.689 --> 00:17:23.069 00:17:23.069 --> 00:17:27.900 00:17:27.900 --> 00:17:32.520 00:17:32.520 --> 00:17:37.500 00:17:37.500 --> 00:17:42.270 00:17:42.270 --> 00:17:47.650 00:17:47.650 --> 00:17:52.370 00:17:52.370 --> 00:17:57.530 00:17:57.530 --> 00:18:02.080 00:18:02.080 --> 00:18:07.510 00:18:07.510 --> 00:18:13.010 00:18:13.010 --> 00:18:18.689 00:18:18.689 --> 00:18:23.790 00:18:23.790 --> 00:18:29.080 00:18:29.080 --> 00:18:34.020 00:18:34.020 --> 00:18:40.000 00:18:40.000 --> 00:18:44.510 00:18:44.510 --> 00:18:50.369 00:18:50.369 --> 00:18:55.970 00:18:55.970 --> 00:19:00.570 00:19:00.570 --> 00:19:05.540 00:19:05.540 --> 00:19:09.759 00:19:09.759 --> 00:19:15.960 00:19:15.960 --> 00:19:20.990 00:19:20.990 --> 00:19:26.750 00:19:26.750 --> 00:19:32.470 00:19:32.470 --> 00:19:37.060 00:19:37.060 --> 00:19:40.600 00:19:40.600 --> 00:19:45.280 00:19:45.280 --> 00:19:51.050 00:19:51.050 --> 00:19:54.950 00:19:54.950 --> 00:19:59.769 00:19:59.769 --> 00:20:04.380 00:20:04.380 --> 00:20:08.780 00:20:08.780 --> 00:20:14.610 00:20:14.610 --> 00:20:18.850 00:20:18.850 --> 00:20:25.580 00:20:25.580 --> 00:20:31.840 00:20:31.840 --> 00:20:37.240 00:20:37.240 --> 00:20:41.500 00:20:41.500 --> 00:20:47.499 00:20:47.499 --> 00:20:52.969 00:20:52.969 --> 00:20:58.780 00:20:58.780 --> 00:21:03.429 00:21:03.429 --> 00:21:08.150 00:21:08.150 --> 00:21:14.420 00:21:14.420 --> 00:21:19.159 00:21:19.159 --> 00:21:24.419 00:21:24.419 --> 00:21:30.360 00:21:30.360 --> 00:21:35.571 00:21:35.571 --> 00:21:41.470 00:21:41.470 --> 00:21:46.040 00:21:46.040 --> 00:21:49.840 00:21:49.840 --> 00:21:55.329 00:21:55.329 --> 00:22:00.759 00:22:00.759 --> 00:22:06.149 00:22:06.149 --> 00:22:10.670 00:22:10.670 --> 00:22:16.640 00:22:16.640 --> 00:22:23.020 00:22:23.020 --> 00:22:28.870 00:22:28.870 --> 00:22:33.510 00:22:33.510 --> 00:22:38.780 00:22:38.780 --> 00:22:43.300 00:22:43.300 --> 00:22:46.890 00:22:46.890 --> 00:22:51.779 00:22:51.779 --> 00:22:57.020 00:22:57.020 --> 00:23:02.200 00:23:02.200 --> 00:23:07.419 00:23:07.419 --> 00:23:12.710 00:23:12.710 --> 00:23:17.720 00:23:17.720 --> 00:23:22.570 00:23:22.570 --> 00:23:28.730 00:23:28.730 --> 00:23:33.200 00:23:33.200 --> 00:23:38.710 00:23:38.710 --> 00:23:43.140 00:23:43.140 --> 00:23:48.199 00:23:48.199 --> 00:23:53.840 00:23:53.840 --> 00:23:59.160 00:23:59.160 --> 00:24:04.150 00:24:04.150 --> 00:24:09.740 00:24:09.740 --> 00:24:15.670 00:24:15.670 --> 00:24:21.990 00:24:21.990 --> 00:24:27.959 00:24:27.959 --> 00:24:32.740 00:24:32.740 --> 00:24:38.889 00:24:38.889 --> 00:24:44.479 00:24:44.479 --> 00:24:49.709 00:24:49.709 --> 00:24:54.770 00:24:54.770 --> 00:24:59.180 00:24:59.180 --> 00:25:02.630 00:25:02.630 --> 00:25:07.890 00:25:07.890 --> 00:25:13.640 00:25:13.640 --> 00:25:18.120 00:25:18.120 --> 00:25:22.770 00:25:22.770 --> 00:25:27.439 00:25:27.439 --> 00:25:32.349 00:25:32.349 --> 00:25:37.739 00:25:37.739 --> 00:25:43.790 00:25:43.790 --> 00:25:48.179 00:25:48.179 --> 00:25:52.320 00:25:52.320 --> 00:25:56.570 00:25:56.570 --> 00:26:00.770 00:26:00.770 --> 00:26:04.650 00:26:04.650 --> 00:26:09.710 00:26:09.710 --> 00:26:13.650 00:26:13.650 --> 00:26:18.149 00:26:18.149 --> 00:26:23.480 00:26:23.480 --> 00:26:28.419 00:26:28.419 --> 00:26:33.919 00:26:33.919 --> 00:26:39.680 00:26:39.680 --> 00:26:44.610 00:26:44.610 --> 00:26:50.800 00:26:50.800 --> 00:26:56.550 00:26:56.550 --> 00:27:01.670 00:27:01.670 --> 00:27:06.760 00:27:06.760 --> 00:27:12.510 00:27:12.510 --> 00:27:17.810 00:27:17.810 --> 00:27:23.490 00:27:23.490 --> 00:27:26.140 00:27:26.140 --> 00:27:32.200 00:27:32.200 --> 00:27:37.039 00:27:37.039 --> 00:27:41.680 00:27:41.680 --> 00:27:44.920 00:27:44.920 --> 00:27:47.350 00:27:47.350 --> 00:27:54.100 00:27:54.100 --> 00:27:58.840 00:27:58.840 --> 00:28:04.460 00:28:04.460 --> 00:28:09.270 00:28:09.270 --> 00:28:14.480 00:28:14.480 --> 00:28:19.730 00:28:19.730 --> 00:28:24.160 00:28:24.160 --> 00:28:28.900 00:28:28.900 --> 00:28:33.110 00:28:33.110 --> 00:28:36.780 00:28:36.780 --> 00:28:41.720 00:28:41.720 --> 00:28:45.580 00:28:45.580 --> 00:28:49.970 00:28:49.970 --> 00:28:54.300 00:28:54.300 --> 00:29:00.100 00:29:00.100 --> 00:29:03.769 00:29:03.769 --> 00:29:08.519 00:29:08.519 --> 00:29:12.130 00:29:12.130 --> 00:29:14.790 00:29:14.790 --> 00:29:21.529 00:29:21.529 --> 00:29:26.480 00:29:26.480 --> 00:29:31.640 00:29:31.640 --> 00:29:36.810 00:29:36.810 --> 00:29:41.770 00:29:41.770 --> 00:29:47.130 00:29:47.130 --> 00:29:52.490 00:29:52.490 --> 00:29:58.030 00:29:58.030 --> 00:30:04.010 00:30:04.010 --> 00:30:09.149 00:30:09.149 --> 00:30:14.549 00:30:14.549 --> 00:30:18.680 00:30:18.680 --> 00:30:24.030 00:30:24.030 --> 00:30:27.640 00:30:27.640 --> 00:30:32.340 00:30:32.340 --> 00:30:37.520 00:30:37.520 --> 00:30:41.810 00:30:41.810 --> 00:30:47.020 00:30:47.020 --> 00:30:53.090 00:30:53.090 --> 00:30:59.300 00:30:59.300 --> 00:31:02.669 00:31:02.669 --> 00:31:06.980 00:31:06.980 --> 00:31:11.649 00:31:11.649 --> 00:31:16.129 00:31:16.129 --> 00:31:21.290 00:31:21.290 --> 00:31:27.860 00:31:27.860 --> 00:31:33.410 00:31:33.410 --> 00:31:36.920 00:31:36.920 --> 00:31:41.949 00:31:41.949 --> 00:31:47.940 00:31:47.940 --> 00:31:51.960 00:31:51.960 --> 00:31:56.540 00:31:56.540 --> 00:32:01.199 00:32:01.199 --> 00:32:05.599 00:32:05.599 --> 00:32:10.760 00:32:10.760 --> 00:32:15.690 00:32:15.690 --> 00:32:21.970 00:32:21.970 --> 00:32:27.800 00:32:27.800 --> 00:32:33.301 00:32:33.301 --> 00:32:37.441 00:32:37.441 --> 00:32:43.410 00:32:43.410 --> 00:32:49.199 00:32:49.199 --> 00:32:55.679 00:32:55.679 --> 00:33:02.509 00:33:02.509 --> 00:33:07.860 00:33:07.860 --> 00:33:13.619 00:33:13.619 --> 00:33:18.139 00:33:18.139 --> 00:33:23.859 00:33:23.859 --> 00:33:29.780 00:33:29.780 --> 00:33:35.950 00:33:35.950 --> 00:33:42.090 00:33:42.090 --> 00:33:46.770 00:33:46.770 --> 00:33:52.990 00:33:52.990 --> 00:33:58.579 00:33:58.579 --> 00:34:04.090 00:34:04.090 --> 00:34:09.439 00:34:09.439 --> 00:34:13.619 00:34:13.619 --> 00:34:18.949 00:34:18.949 --> 00:34:25.959 00:34:25.959 --> 00:34:31.729 00:34:31.729 --> 00:34:36.760 00:34:36.760 --> 00:34:41.779 00:34:41.779 --> 00:34:47.990 00:34:47.990 --> 00:34:53.490 00:34:53.490 --> 00:34:58.670 00:34:58.670 --> 00:35:04.040 00:35:04.040 --> 00:35:10.130 00:35:10.130 --> 00:35:14.670 00:35:14.670 --> 00:35:18.820 00:35:18.820 --> 00:35:23.400 00:35:23.400 --> 00:35:28.620 00:35:28.620 --> 00:35:33.060 00:35:33.060 --> 00:35:38.720 00:35:38.720 --> 00:35:44.350 00:35:44.350 --> 00:35:49.830 00:35:49.830 --> 00:35:55.580 00:35:55.580 --> 00:35:59.420 00:35:59.420 --> 00:36:04.230 00:36:04.230 --> 00:36:10.920 00:36:10.920 --> 00:36:12.840 00:36:12.840 --> 00:36:15.710 00:36:15.710 --> 00:36:20.670 00:36:20.670 --> 00:36:25.840 00:36:25.840 --> 00:36:30.310 00:36:30.310 --> 00:36:34.170 00:36:34.170 --> 00:36:40.120 00:36:40.120 --> 00:36:45.360 00:36:45.360 --> 00:36:50.570 00:36:50.570 --> 00:36:54.730 00:36:54.730 --> 00:36:59.760 00:36:59.760 --> 00:37:03.461 00:37:03.461 --> 00:37:07.910 00:37:07.910 --> 00:37:13.250 00:37:13.250 --> 00:37:19.920 00:37:19.920 --> 00:37:24.630 00:37:24.630 --> 00:37:29.200 00:37:29.200 --> 00:37:34.330 00:37:34.330 --> 00:37:39.980 00:37:39.980 --> 00:37:46.080 00:37:46.080 --> 00:37:51.590 00:37:51.590 --> 00:37:57.330 00:37:57.330 --> 00:38:02.400 00:38:02.400 --> 00:38:07.860 00:38:07.860 --> 00:38:12.220 00:38:12.220 --> 00:38:15.550 00:38:15.550 --> 00:38:21.380 00:38:21.380 --> 00:38:27.561 00:38:27.561 --> 00:38:32.521 00:38:32.521 --> 00:38:36.330 00:38:36.330 --> 00:38:40.980 00:38:40.980 --> 00:38:46.910 00:38:46.910 --> 00:38:52.810 00:38:52.810 --> 00:38:59.020 00:38:59.020 --> 00:39:04.190 00:39:04.190 --> 00:39:09.300 00:39:09.300 --> 00:39:14.190 00:39:14.190 --> 00:39:18.370 00:39:18.370 --> 00:39:23.230 00:39:23.230 --> 00:39:29.230 00:39:29.230 --> 00:39:34.130 00:39:34.130 --> 00:39:38.620 00:39:38.620 --> 00:39:43.550 00:39:43.550 --> 00:39:49.980 00:39:49.980 --> 00:39:55.650 00:39:55.650 --> 00:40:00.610 00:40:00.610 --> 00:40:04.950 00:40:04.950 --> 00:40:10.510 00:40:10.510 --> 00:40:16.330 00:40:16.330 --> 00:40:21.670 00:40:21.670 --> 00:40:27.230 00:40:27.230 --> 00:40:32.550 00:40:32.550 --> 00:40:38.180 00:40:38.180 --> 00:40:44.000 00:40:44.000 --> 00:40:49.071 00:40:49.071 --> 00:40:54.950 00:40:54.950 --> 00:40:59.860 00:40:59.860 --> 00:41:02.030 00:41:02.030 --> 00:41:07.840 00:41:07.840 --> 00:41:12.940 00:41:12.940 --> 00:41:18.040 00:41:18.040 --> 00:41:22.520 00:41:22.520 --> 00:41:25.780 00:41:25.780 --> 00:41:30.400 00:41:30.400 --> 00:41:35.410 00:41:35.410 --> 00:41:38.860 00:41:38.860 --> 00:41:44.800 00:41:44.800 --> 00:41:50.040 00:41:50.040 --> 00:41:55.300 00:41:55.300 --> 00:42:00.240 00:42:00.240 --> 00:42:05.210 00:42:05.210 --> 00:42:10.720 00:42:10.720 --> 00:42:14.870 00:42:14.870 --> 00:42:20.030 00:42:20.030 --> 00:42:23.870 00:42:23.870 --> 00:42:28.130 00:42:28.130 --> 00:42:32.780 00:42:32.780 --> 00:42:37.640 00:42:37.640 --> 00:42:43.720 00:42:43.720 --> 00:42:49.000 00:42:49.000 --> 00:42:53.761 00:42:53.761 --> 00:42:58.511 00:42:58.511 --> 00:43:02.670 00:43:02.670 --> 00:43:07.960 00:43:07.960 --> 00:43:13.080 00:43:13.080 --> 00:43:18.780 00:43:18.780 --> 00:43:24.880 00:43:24.880 --> 00:43:30.680 00:43:30.680 --> 00:43:35.610 00:43:35.610 --> 00:43:39.640 00:43:39.640 --> 00:43:44.340 00:43:44.340 --> 00:43:48.820 00:43:48.820 --> 00:43:53.920 00:43:53.920 --> 00:43:56.980 00:43:56.980 --> 00:44:01.050 00:44:01.050 --> 00:44:06.320 00:44:06.320 --> 00:44:08.760 00:44:08.760 --> 00:44:13.850 00:44:13.850 --> 00:44:18.830 00:44:18.830 --> 00:44:23.430 00:44:23.430 --> 00:44:28.680 00:44:28.680 --> 00:44:32.950 00:44:32.950 --> 00:44:37.740 00:44:37.740 --> 00:44:43.250 00:44:43.250 --> 00:44:48.850 00:44:48.850 --> 00:44:52.890 00:44:52.890 --> 00:44:57.640 00:44:57.640 --> 00:45:02.950 00:45:02.950 --> 00:45:08.330 00:45:08.330 --> 00:45:13.370 00:45:13.370 --> 00:45:17.990 00:45:17.990 --> 00:45:24.210 00:45:24.210 --> 00:45:28.500 00:45:28.500 --> 00:45:33.970 00:45:33.970 --> 00:45:38.990 00:45:38.990 --> 00:45:45.190 00:45:45.190 --> 00:45:50.510 00:45:50.510 --> 00:45:56.000 00:45:56.000 --> 00:46:00.830 00:46:00.830 --> 00:46:06.960 00:46:06.960 --> 00:46:12.010 00:46:12.010 --> 00:46:17.800 00:46:17.800 --> 00:46:23.630 00:46:23.630 --> 00:46:29.140 00:46:29.140 --> 00:46:34.590 00:46:34.590 --> 00:46:40.030 00:46:40.030 --> 00:46:44.970 00:46:44.970 --> 00:46:50.610 00:46:50.610 --> 00:46:54.980 00:46:54.980 --> 00:47:00.170 00:47:00.170 --> 00:47:05.050 00:47:05.050 --> 00:47:11.160 00:47:11.160 --> 00:47:16.110 00:47:16.110 --> 00:47:21.560 00:47:21.560 --> 00:47:26.510 00:47:26.510 --> 00:47:30.640 00:47:30.640 --> 00:47:36.230 00:47:36.230 --> 00:47:40.830 00:47:40.830 --> 00:47:46.080 00:47:46.080 --> 00:47:50.860 00:47:50.860 --> 00:47:56.210 00:47:56.210 --> 00:47:59.990 00:47:59.990 --> 00:48:11.770 00:48:11.770 --> 00:48:15.690 00:48:15.690 --> 00:48:19.770 00:48:19.770 --> 00:48:23.930 00:48:23.930 --> 00:48:28.160 00:48:28.160 --> 00:48:32.450 00:48:32.450 --> 00:48:34.130 00:48:34.130 --> 00:48:40.230 00:48:40.230 --> 00:48:45.500 00:48:45.500 --> 00:48:50.791 00:48:50.791 --> 00:48:54.800 00:48:54.800 --> 00:48:59.980 00:48:59.980 --> 00:49:06.920 00:49:06.920 --> 00:49:09.570 00:49:09.570 --> 00:49:12.680 00:49:12.680 --> 00:49:17.610 00:49:17.610 --> 00:49:21.170 00:49:21.170 --> 00:49:24.580 00:49:24.580 --> 00:49:28.000 00:49:28.000 --> 00:49:33.250 00:49:33.250 --> 00:49:39.120 00:49:39.120 --> 00:49:43.260 00:49:43.260 --> 00:49:47.700 00:49:47.700 --> 00:49:55.100 00:49:55.100 --> 00:49:57.630 00:49:57.630 --> 00:50:01.720 00:50:01.720 --> 00:50:07.350 00:50:07.350 --> 00:50:11.330 00:50:11.330 --> 00:50:17.670 00:50:17.670 --> 00:50:23.120 00:50:23.120 --> 00:50:27.080 00:50:27.080 --> 00:50:31.820 00:50:31.820 --> 00:50:36.400 00:50:36.400 --> 00:50:42.890 00:50:42.890 --> 00:50:46.660 00:50:46.660 --> 00:50:49.590 00:50:49.590 --> 00:50:54.430 00:50:54.430 --> 00:50:57.940 00:50:57.940 --> 00:51:03.800 00:51:03.800 --> 00:51:09.190 00:51:09.190 --> 00:51:14.600 00:51:14.600 --> 00:51:20.140 00:51:20.140 --> 00:51:21.990 00:51:21.990 --> 00:51:24.950 00:51:24.950 --> 00:51:28.940 00:51:28.940 --> 00:51:32.720 00:51:32.720 --> 00:51:37.120 00:51:37.120 --> 00:51:41.550 00:51:41.550 --> 00:51:45.920 00:51:45.920 --> 00:51:49.670 00:51:49.670 --> 00:51:55.590 00:51:55.590 --> 00:52:01.790 00:52:01.790 --> 00:52:06.210 00:52:06.210 --> 00:52:11.250 00:52:11.250 --> 00:52:17.230 00:52:17.230 --> 00:52:22.550 00:52:22.550 --> 00:52:29.450 00:52:29.450 --> 00:52:35.270 00:52:35.270 --> 00:52:39.620 00:52:39.620 --> 00:52:44.960 00:52:44.960 --> 00:52:49.140 00:52:49.140 --> 00:52:53.050 00:52:53.050 --> 00:52:59.030 00:52:59.030 --> 00:53:03.180 00:53:03.180 --> 00:53:08.820 00:53:08.820 --> 00:53:14.210 00:53:14.210 --> 00:53:19.700 00:53:19.700 --> 00:53:21.950 00:53:21.950 --> 00:53:25.520 00:53:25.520 --> 00:53:29.480 00:53:29.480 --> 00:53:33.200 00:53:33.200 --> 00:53:38.170 00:53:38.170 --> 00:53:41.240 00:53:41.240 --> 00:53:47.440 00:53:47.440 --> 00:53:54.350 00:53:54.350 --> 00:53:59.030 00:53:59.030 --> 00:54:02.650 00:54:02.650 --> 00:54:06.600 00:54:06.600 --> 00:54:11.810 00:54:11.810 --> 00:54:18.430 00:54:18.430 --> 00:54:22.970 00:54:22.970 --> 00:54:27.490 00:54:27.490 --> 00:54:30.960 00:54:30.960 --> 00:54:36.440 00:54:36.440 --> 00:54:42.690 00:54:42.690 --> 00:54:48.810 00:54:48.810 --> 00:54:52.740 00:54:52.740 --> 00:54:59.600 00:54:59.600 --> 00:55:04.180 00:55:04.180 --> 00:55:09.990 00:55:09.990 --> 00:55:16.460 00:55:16.460 --> 00:55:21.610 00:55:21.610 --> 00:55:25.830 00:55:25.830 --> 00:55:30.620 00:55:30.620 --> 00:55:35.990 00:55:35.990 --> 00:55:41.650 00:55:41.650 --> 00:55:45.670 00:55:45.670 --> 00:55:51.620 00:55:51.620 --> 00:55:57.940 00:55:57.940 --> 00:56:01.910 00:56:01.910 --> 00:56:07.310 00:56:07.310 --> 00:56:12.900 00:56:12.900 --> 00:56:18.630 00:56:18.630 --> 00:56:23.910 00:56:23.910 --> 00:56:28.520 00:56:28.520 --> 00:56:32.490 00:56:32.490 --> 00:56:34.610 00:56:34.610 --> 00:56:37.760 00:56:37.760 --> 00:56:43.060 00:56:43.060 --> 00:56:45.800 00:56:45.800 --> 00:56:47.910 00:56:47.910 --> 00:56:53.250 00:56:53.250 --> 00:56:59.290 00:56:59.290 --> 00:57:03.450 00:57:03.450 --> 00:57:06.750 00:57:06.750 --> 00:57:12.690 00:57:12.690 --> 00:57:18.310 00:57:18.310 --> 00:57:23.540 00:57:23.540 --> 00:57:28.110 00:57:28.110 --> 00:57:32.420 00:57:32.420 --> 00:57:37.970 00:57:37.970 --> 00:57:44.040 00:57:44.040 --> 00:57:50.980 00:57:50.980 --> 00:57:54.050 00:57:54.050 --> 00:57:59.300 00:57:59.300 --> 00:58:02.951 00:58:02.951 --> 00:58:08.010 00:58:08.010 --> 00:58:13.990 00:58:13.990 --> 00:58:21.070 00:58:21.070 --> 00:58:28.150 00:58:28.150 --> 00:58:32.950 00:58:32.950 --> 00:58:37.650 00:58:37.650 --> 00:58:42.470 00:58:42.470 --> 00:58:47.460 00:58:47.460 --> 00:58:53.171 00:58:53.171 --> 00:58:57.600 00:58:57.600 --> 00:59:02.560 00:59:02.560 --> 00:59:08.240 00:59:08.240 --> 00:59:13.010 00:59:13.010 --> 00:59:18.750 00:59:18.750 --> 00:59:24.960 00:59:24.960 --> 00:59:30.340 00:59:30.340 --> 00:59:35.500 00:59:35.500 --> 00:59:41.610 00:59:41.610 --> 00:59:44.540 00:59:44.540 --> 00:59:47.480 00:59:47.480 --> 00:59:51.750 00:59:51.750 --> 00:59:57.110 00:59:57.110 --> 01:00:02.350 01:00:02.350 --> 01:00:08.640 01:00:08.640 --> 01:00:14.480 01:00:14.480 --> 01:00:18.490 01:00:18.490 --> 01:00:22.780 01:00:22.780 --> 01:00:28.070 01:00:28.070 --> 01:00:33.100 01:00:33.100 --> 01:00:38.330 01:00:38.330 --> 01:00:41.860 01:00:41.860 --> 01:00:43.890 01:00:43.890 --> 01:00:47.450 01:00:47.450 --> 01:00:49.590 01:00:49.590 --> 01:00:53.480 01:00:53.480 --> 01:00:58.800 01:00:58.800 --> 01:01:03.020 01:01:03.020 --> 01:01:06.600 01:01:06.600 --> 01:01:08.670 01:01:08.670 --> 01:01:11.430 01:01:11.430 --> 01:01:20.010 01:01:20.010 --> 01:01:39.080 01:01:39.080 --> 01:01:43.981