Good afternoon. My name is Catherine Meenon and I chair the Germany group in the Institute and thank you for being with us this afternoon. We're very pleased to have Dr. Francisco Brandtner, who's the spokesperson in the Bundestag on European Affairs for the German Alliance 90 and the Greens. She should speak in this webinar on the Green Party's ambition to invest heavily in climate neutral technology, stimulate innovation and to use the European Green Deal at the EU recovery fund to help propel Europe towards a social ecological economy. She's been spokesperson since 2018. She's a member of the Commission on European Union in the Bundestag and a deputy chair, a member on the Committee on Foreign Affairs. She's been a member of the Alliance 90 the Greens since 2013. She's also been a member of the European Parliament. She has a double degree in political science and economics from Science Po in Paris and Columbia University in New York with PhD from Mannheim, which focused on the United Nations. Before we begin Dr. Brandtner I'd just like to say formally how deeply sorry we all are about the terrible events that are happening in Germany, and you have all our condolences and solidarity. Yeah, thank you for having me. It's a pleasure being able with you. Somebody needs to turn off their mic. And it's, you know, being with you via digital is not as nice as without but it's still better. And as you said, really it's been terrible. Since we woke up yesterday morning and heard about the news it's just devastating to see that so many people lost their homes lost everything. Over 50 people lost their lives we're still about 70 people missing. It's shocking to see, and we are very grateful for all the emergency helpers that are out there and trying to still rescue people. But it's also evident, you know, the power of nature. And it was really, you know, it just takes an entire building away. It's quite, I know if you've watched the scenes but it's, yeah, it's scary and it's, it shows us again what our, the big task of our generation is. So if you allow me to start with this because it's really on our German minds today. And I said I still do the seminar with you because I think it's important to stay in European touch, but yeah. It is about freedom you know we have had recently a ruling of the, our Supreme Court, ruling that our climate law, the climate law by the current government needs to be improved because with the low ambition it had, it would entail on the freedom rights of next generations. And I think that this is really the case. You know if you see what's happening if we don't do enough against climate destruction today we will pay such a heavy price not just financially that's evident but in life and in our choices that we then only have. Because climate protection is of course about the climate but it's also about protecting our liberties our freedom, our possibilities to act in this world to live in this world, and to keep our prosperity. And we also fundamentally convinced that if we go on like today, we will lose not just freedoms but we will lose also our prosperity. We will develop the new technologies. I'm convinced there are enough smart people out in this world who will do it. And the question is just if we in Europe in Germany in my state will still then have the jobs that go with it, or if we will be the importers. And I hope that we will be able to be at the forefront of innovation and technology so that we can also keep our prosperity in our jobs. But with the car industry in Germany, where unfortunately for quite a number of years they rather went into cheating on emissions instead of going into innovation. And they've been paying a high price for it, not just in terms of fines that they have to pay now but also in terms of, you know, being behind companies like Tesla Renault and others. And we know that they had also the plans in the cupboard, but they didn't want to use it because they still believe that the future is with the emission car. And we just need to make sure that such, you know, really detrimental decisions won't happen again, because then we will lose the industry and we will lose the jobs and our prosperity with it. So our focus is on keeping the freedoms, keeping our prosperity but making it fit on this planet because we only have one planet. And that's the big challenge for our generation. And I want to outline a bit how we, what our proposal for that is the Green Party in Germany, we do inspire ourselves by our green colleagues in other European partners countries, our partner parties. We have, you know, received many ideas there. And we're the Greens are in six European governments. As you might know, Austria, Netherlands, sorry, Austria, Belgium, Luxembourg, Ireland, Sweden, Finland, did I forget one. Ireland, Sweden, Finland, Austria, Belgium and Luxembourg, yeah, those six governments and we do support a minority government in Denmark. So, you know, it's, for example, in Ireland, what they did, I thought it was quite well is to introduce an alliance with the sectors that we need to get, for example, more improvements innovation and housing and to with the you know, hand hand crafters to have more of young people going into jobs that we do need for, for example, renovating buildings for having new standards, etc. So it's not just a German project, but we do have quite Europeanized approach to it, because we also fundamentally believe that we will get further if we do it as Europeans together. It's not just about energy lines and having, you know, getting the energy from the north from the wind from the sea to the center, but also solar energy from the south to the north. So we, you know, it's also about innovation and investing in them and getting faster forward than going into alone. So as a European project, we do support the European Green Deal perspective, you just mentioned it, the Commission presented it two days ago quite a big package. And it's good because it's no longer just objectives and figures, it's very concrete proposals for how to get there. And I think it's good that we get to this point of, you know, concrete steps. And we do base our approach on three pillars. The first pillar is CO2 pricing. Like it's an old green idea that prices have to speak reality and need to reflect the costs that production, for example, has on the environment, also now a social well being on health. And that these prices, these consequences, the negative ones need to be in the price of the product as well. So the idea of a CO2 price was, is quite a long standing one we introduced a CO2 already taxed in the 90s. It has been rechanged since then, but the idea is an old one. And what we have discovered since is that there are limits to going to getting a change over pricing. Because of course the objective is that polluting products or ways of procedures of production, etc. will be too expensive and that companies and consumers will switch to less polluting ones. So we've seen that there are two limits to it. The one is that you need to have a social rebalancing mechanism, because if you go by a pricing way, whatever for it has a lesser burden for rich people just because you can, you don't really notice the differences if you're really rich and you do notice it very well if you have a small budget. So you need a rebalancing a social rebalancing we as Greens do propose for an increase in the CO2 pricing. So the citizens energy money and ideas that every cent that the state gets in addition for higher CO2 prices will flow back to every citizen, adult and children per capita and thereby have a social justice impact because of course you know an amount of 200 to 300 years does represent much for somebody with a lower budget and much for somebody with a richer, somebody richer but also that you know if you are rich usually have bigger houses you have bigger cars so you do spend more and you get a relatively compared to that less spec. So that's our social component in the CO2 pricing, which is really important for us to get through the current government in Germany is increasing CO2 prices without a social rebalancing mechanism and we think it really needs to go hand in hand. And the second limitation to pricing is that you, you put the weight on the consumers. Okay, so it's consumers who have to pay a price be it you know if you have it in the transport sector, or if you have it in the building sector where we still have to do a lot in Europe. So you put it on those people renting out houses, for example, and what you don't get is fast enough an incentive for innovation and that you have to drive the prices very high to get a real impact in terms of consumer choices and innovation incentives. So that's why we say there are areas where we have to also really get to innovation by setting CO2 standards, or, you know, saying this product or this element like Lufusat is just no longer acceptable because it's so destructive for climate and environment. So that's part of the logic of saying you can't do everything by a pricing because the innovation won't be fast enough and consumers burn will be too high. This is quite an interesting debate now inside the EU because the Commission proposed a second emissions trading scheme for transport sector and housing. We are not in favor of that we prefer to go by your standards in this area, you know that we you we have car mission freeze from 2030 on that we set emissions ceilings for buildings etc. So it will be interesting to see if we get a good mixture already between pricing and regulation. And then a third, the third pillar is investments in innovation technology and infrastructure, because we know that the private sector is investing heavily in future technologies but we also know that we will need support for it in some areas in some areas. And that's where we have or where we are supporting the idea of the contract for differences that you know between the current price of CO2 and the future one or the price that we would need so that the price would really speak the truth about about CO2 pollution that the difference will be paid to companies so that they can invest in new technologies and with the price increasing in reality they will get less support and one day when it switches they will have to pay back so the idea is to front finance investments that maybe today are not affordable to companies or sectors like steel and to thereby go the way together so that's the idea of really investing in new technologies in innovation and the second part of that is infrastructure we know that we need more trains faster trains better trains safer trains buses bike lanes better energy lines transport of energy etc. So we do have to improve our infrastructure and that also won't be for free so we need to really invest there. And that's the third pillars really in investments in innovation and infrastructure. And of course if you take one thing out it might not seem radical enough from our program, but it's really important to see that we have a holistic approach in terms of, you know, using different elements of achieving the objectives of climate protection. So maybe that much from my side. We also foresee lots of reskilling or new skilling labor training etc to support areas that have an especially hard transition and and to do wherever it's possible citizens participation in the process so that we do advance faster. Because we have seen that if you do, for example, big infrastructure projects if you do involve citizens early on, you get better results and you advance faster. So that's also part of our approach.


إن الحمد لله نحمده و نستعينه و نستهديه و نستغفره و نتوب إليه و نؤمن به و نتوكل عليه و نعود بالله من شرور أنفسنا و من سيئات عمالنا من يهديه الله فلا مضلله و من يضلله فلا هادئ له وأشهد أن لا إله إلا الله وحده لا شريك له وأشهد أن محمدا عبده و رسوله اللهم أسلي وسلم وبارك على سيدنا محمد النبي الأم و على آله و صحبه وسلم تسليم كثيرا يا أيها الذين آمنوا اتقوا الله حق تقاته ولا تموتنا إلا و أنتم مسلمون يا أيها الذين آمنوا اتقوا الله وقولوا قولا سديدا يصلح لكم أعمالكم و ينفر لكم دنوبكم و من يضع الله و رسوله فقد فاز فوز عظيما أما بعد الحمد لله و شكر لله ج坡نا الله أقل الله سبحانه وتعالى و أن نموم senatorship اكبرنا الله و يكاملنا الله و نجميع الننوح جيدا و میريا و المجرد الكبير و أسكسه سبحانه وتعالى لهم أن لا أدعا أعمالهم وأشهد سلوتي و حمدهم على أزياء أداء دجائية محمد صلى الله عليه وسلم و أمره و أدائكم و دائمك before time الحمد لله رب العالمين المؤمن صلى الله عليه وسلم was given جوامع الكلم صلى الله عليه وسلم one of his خصائص the unique traits that only he was given is universal comprehensive speech and but a few words صلى الله عليه وسلم and in one of those profound statements that Imam Muslim relates in his صحيه collection رحمه الله تعالى is that the Prophet صلى الله عليه وسلم المؤمن القوي خير وأحبه إلى الله تعالى من المؤمن من المؤمن الضعيف وفي كل وفي كل خير احرس على ما ينفعك واستعين بالله ولا تعجز وإن أصابك شيء فلا تقول لو لو كان كذا لو فأنتوا كذا كان كذا ولكن قدر الله وما شاء فعل فإن فإن لو تفتعوا عمل الشيطان او كما قال صلى الله عليه وسلم that he says peace and blessings be upon him the مؤمن القوي the strong believer is better and more beloved to الله than the weak believer وفي كل خير but there is good in both there is good in both and the commentators explain that this the قوة that's being referenced at مؤمن القوي the strength that's being referenced here is strength in all dimensions of the human experience it includes physical strength and so it's from the sunnah to take care of our bodies to strengthen ourselves so that we can do more good because an able body is more able to do good it includes mental strengthening mental and this is something that is foundational in our tradition is intellectual strength the tools of learning were foundational in our history there was a profound emphasis on what are called the tools of learning grammar logic rhetoric and the other sciences that enabled people to think correctly to articulate themselves properly and to articulate themselves in a way that's effective grammar allows for a proper speech logic allows for a proper thinking valid reasoning and then rhetoric allows for convincing and speaking in a way that reaches the hearts of people and moves people inspires people to do more good it's all from the sunnah the strength includes of course spiritual and moral strength which is foundation on the most important strength it's the ultimate aim of all other strength is embodying prophetic virtue strengthening our hearts the spiritual faculty that each of us is given strengthening our moral capacity having the wherewithal to go against the negative تنينسي of the ego what's called مجاهة نفس which is again central to the sunnah and so المؤمن القوي the strong believer is better خيرا و أحب إلى الله and is more beloved to الله because again all of that strength enables more and more good quantitatively and qualitatively than what than the than the مؤمن دايف than the weak believer و في كل إن خير but of course because of the profound rank and and and sublime virtue of faith itself إيمان to actually believe in the oneness of god and in the messenger sent to the people of one's time that this rank means و في كل إن خير there's of course good in all believers even the worst of believers have a good that is to be respected and honored و في كل إن خير so in the prophet continue صلى الله عليه وسلم إحرس على ما ينفعك in other words seek to strengthen yourself seek to always increase seek قوة be people of fortitude be people of strength and this is if we notice the sunnah the sunnah employs what our scholars have called both شرية and حقيقة these terms are used in differently in different contexts but in this context when they're juxtaposed شرية refers to the human experience and the means that we take as human beings in order to live more lives حقيقة refers to the recognition of الله's oneness and the حقائق the realities of divinity in other words the قضاء and the قدر the divine decree and predestination this is that that consideration is from the vantage of حقيقة how things really are everything that happens in the world is decreed by الله سبحانه وتعالى and he is the only creator no one can co-create with الله he has no share in his act of creating سبحانه وتعالى he is as he says in the Quran more than once خالق خالق كل شيء خالق كل شيء the creator of every single thing that's the vantage of حقيقة but the vantage of شرية is what work do i need to do at the time when the task is before me in the moment that i am in how do i use the free will that الله has given me to best situate myself to employ the means at my disposal so that i can serve الله the creator and then through that through that service and devotion serve fellow man serve creation at large that's the vantage of شرية and if we see that the sunnah teaches both and neither negates the other and to have only one is a is an invalid view of the world if we only see the world through the lens of human beings human actions human choices and that's the only lens that's a falling short that's not recognizing the oneness of الله that's not recognizing the قضاء and the قدر which is a central pillar of our faith but if we only if we only engage in the world based on حقيقة and we use that as an excuse to not take the means then that's going against the sunnah because recognizing that الله is the decree of everything does not negate the fact that we have to do the work that is ahead of us and we see that throughout the read the seed of the prophet صلى الله عليه وسلم read the seed of all prophets they're always working and working and working and relying on الله reliance on الله does not mean let the rope go and then the animal will just wander away no tie the rope take the means that one's disposal so here in this part of the حديث this is an emphasis of that شرية vantage be avid it's not simply take the means subhanallah the sunnah is to be avid to seek every means of benefit wherever we find benefit the the mu'min has a right to it and should have a zeal to increase in that احرس على ما ينفعك the ما in Arabic is لن عموم it's general anything that's beneficial for us for our this worldly status situation or the next world and all of this worldly benefit should be oriented as a means for more in the next world احرس على ما ينفعك واستعين بالله this is حقيقة subhanallah right after that واستعين بالله and seek the help of Allah because who's creating the means in reality and who's creating the effort that we're putting forth in reality and who's creating the inspiration in the heart to move us to seek those means and who's creating all of the faculties that allow us to seek any means خالق كل شيء لا إله إلا الله it's only الله سبحانه وتعالى and so taking the means is for the limbs but the one recognizing the oneness of Allah is for the heart and this is how we don't fall into a dualism because each has its proper place the vantage of is in our actions what we choose to do and how we how we act the vantage of is in the heart that the site of the heart the recognition knowledge recognizing that Allah is alone in his decree and Allah is alone in his creative act that his action of creation and Allah is alone in arranging the world as it is our lives are but a creation of Allah والله خلقكم وما تعملون as he himself has revealed عز وجل Allah creates you and everything that you do and so the Prophet ﷺ teaching us how to find this balance be avid for everything that's beneficial and this comes after what the statement that yes be strong and seek be avid for the means of strengthening yourself but rely on Allah the whole time seek his help the whole time because Allah is the creator of us and our actions what that dodges again going back to sharia but don't be weak in other words don't let your reliance on Allah make you sit and not act don't let it let you fall into a type of fatalism or quietism where all you do is is you don't take any initiative and you're just focused only on theological concepts theological principles and realities no our theological realities that we believe in that we affirm that we have conviction is that we have conviction in those theological realities should move us to rise and and work harder and to take any means that we can find to strengthen ourselves and our communities this is the sunnah and then how does the حديث conclude how does the Prophet ﷺ say at the end but if anything afflicts you in other words it's out of your hands or the results of taking the means because when we take the means what's in our hands is just the means not the effects not the consequences not the outcomes not the results when in أصابك شيء ون if anything afflicts you فلا تقول لو أني فعلت كذا كان كذا if only i had done that it would have been this way if only i had done something else it would have been the other way if only if only if only no this is where we look we open the eye of حقيقة it was decreed our mistakes were decreed our slips and errors were decreed in other words when we're faced with the task we try our best to avoid error but if we end up slipping if it was a bad decision if it's something that proved that it wasn't the positive outcome that we had sought then we recognize the oneness of الله سبحانه وتعالى then we focus on حقيقة وين أصابك شيء فلا تقول لا تفكر بكتبك at that point we learned from mistakes it's not a prescription to not learn from one's mistakes but one cannot get weighed down by mistakes of the past again it should lead to positive action in the moment and so don't let that weigh you down فلا تقول don't say if only i did this it would have been this فإن لو but rather say ولكن قدر الله وما شاء فعل this is حقيقة الله had decreed it and whatever he wills he does سبحانه وتعالى فإن لو تفتحه عمل الشيطان because if only if we get into that negativity of had i only done that and it does not translate to learning from mistakes for the moment for the future it's only a past remorse that's it it's only a past whining about the past if it's if it's pure negativity about the past with no translation into positivity for the future and that's one of the tricks of the devil فإن لو تفتحه عمل الشيطان and if only this word if only it opens the workings of the devil and this word عمل it's as if it's his profession his profession is to create is to cause negativity the job of the shaitan is to fill us with as much negativity through وسوسة so that we're not seekers of good so we're not seekers of strength of strengthening ourselves and so this balance is something that all of us need to be reminded of because the lens of توهيد should never prevent us from action and the action that we take should never make us think that we're in charge of consequences the prophet صلى الله عليه وسلم is teaching us this balance and this is in امام نوى puts this in the chapter in the real the salihin he puts this in the chapter on combating the ego because at bottom the most important work that we have is the work on our souls the most important task that we have the most important means that we have to take are the means of strengthening our relationship with الله سبحانه وتعالى in other words the foundation what the foundational issue that the hadith is talking about first and foremost is توهيد itself now in other words how do we go from disobedience to obedience how do we go from impiety to piety how do we go from a heedlessness of الله سبحانه وتعالى to the remembrance of الله سبحانه وتعالى that's the ultimate task all the other benefit in the world should be means to this reviving prophetic light and virtue in our own lives and in the lives around us worldly benefit are not ends worldly benefit are means to the end of pleasing الله سبحانه وتعالى and so امام نوى in his scholastic brilliance رحمه الله he places this hadith in the chapter of مجاهزة struggling against the ego working against the the the faults of the ego and the vices of the heart this is the ultimate task that we've been charged with and another حديث that امام نوى we places in this chapter رحمه الله is what امام بخاري relates the حديث قدسي that الله تعالى says إذا تقرب إليه عبدي شبران تقربت إليه ذراعن وإذا تقرب إليه ذراعن تقربت إليه بعن وإذا أتان يمشي أتيته هوا هرولا امام نوى we teaching us what's the point how are these حديث كنكتب when my الله تعالى says according to this حديث قدسي that the prophet relates صلى الله عليه وسلم that الله سبحانه وتعالى says when my servant draws near to me by شبران a handspan I draw near to him by a ذراع of four arms length and when he draws near to me by ذراع of four arms length I come near to him by arms outstretched metaphor or distances metaphors for drawing near to الله سبحانه وتعالى which is nearness of the heart recognition of the heart of Allah's nearness and presence and his معية سبحانه وتعالى his witness to the servant وإذا أتان يمشي أتيته هرولا and when he comes to me walking I come to him رشي الله سبحانه وتعالى أحب when we turn to him and Allah تعالى enables us to do more good when we start when we take these baby steps to do good Allah تعالى opens up more door to good when we take baby steps to get out of evil to get out of wrong to stop our bad habits الله سبحانه وتعالى enables it facilitates for us to get out of those bad habits the initial step is always the hardest the initial few steps are always the hardest and this is where many of us fall short we think it's too difficult how am i going to get out of this bad habit how am i going to get out of this spiritual fault of mine it's too hard it's too difficult that initial step is is difficult why because the other hadith mentioned in this حفة النار بشهوات وحفة الجنة بالمكاره the hellfire has been surrounded by appetites and desires and paradise has been surrounded by things that are disliked to the ego difficult things but المؤمن القوي the strong believer the one that can handle get get past more obstacles more مكاره is certainly more beloved to Allah better and more beloved than the weak believer and so but the initial because stuck in a شهوة and what and getting out of that شهوة is مكروه يعني to the nafs it's there's appetite that the nafs is attracted to and to let go of that for the sake of Allah is disliked but Allah in his infinite mercy once we take that first step we push ourselves with that first step الله تعالى opens it and makes it easier it becomes a distant memory and we've all experienced this at different levels various bad habits that we've had various wrong things that we might have been engaged in that when we found the strengths the door open to get out of it and Allah تعالى turned the chapter in our lives with the beautiful toba and then it's like you can hardly remember it subhanallah there's facilitation this is why one of the early scholars المزين says the sin that comes after an initial sin is the is the it's the punishment for that first sin but the good deed that comes after a first good deed is the reward itself for that first good deed الله تعالى opens the doors of the direction we choose to follow and this is why another of our he's a student of he says whoever flees from sins sins flee from that person whoever rushes away tries to get out of sins they run away from sins the sins run away from them why because it's all a manifestation of الله سبحانه وتعالى who comes to his servant and relents unto them so that they find in their hearts this strength this power and they find in themselves this this and they find in their hearts this I'm going to turn to oh Allah help me get out of this and they find in their hearts this propensity to not have عجز ولا تعجز they find all of these realities because الله تعالى has manifested himself to the servant as اتواب oh my beloved come back to me my door is always open my door is always open and if you're with me you'll have joys that you'll never have without me one of our scholars defined طوبة as تركة تسويف to not procrastinate طوبة a repentance is to not procrastinate and the Prophet تعالى there are two blessings that many many many people are cheated out of in other words they're so valuable but the person doesn't invest them for value they let they let it fall to the waist side without actually using it to get an investment back and what are these two blessings good health and free time good health and free time and if we're in the company of people who lack one of these we'll start to appreciate how great these blessings are some of the Salaf would visit hospitals daily just to see the states of people who are ill so they can recognize the blessing of اسحة والفرق and so to not turn to الله when we're well to not go back to الله when we have that strength when we have all of these blessings showering upon us day in and day out to not go back to to not take الله seriously this is غبن this is to lose out on these blessings to not invest them properly a proper investment if you own a big real estate land that's the most precious land in the in the in the town and if you just let it fall to the wasteland and you don't build anything on it and you don't sell it for value and then you end up selling it for one tenth of the price you got cheated only a foolish person would do that and so the prophet صلى الله عليه وسلم is teaching us if you have blessing سحة والفرق لا this is the time for طوبة إبراهيم إبن أدهم one of the early scholars he used to say take me out of the abasement and humiliation of disobedience to the might honor and triumph of obedience and we'll conclude with a an aphorism of Imam الجناد رحم الله someone once asked him what is the way to becoming realized in the sunnah what is the way to becoming realized in the sunnah the first thing he says be طوبة تزيل الاسرار by a sincere repentance that does away with persisting and sin finally getting out of those bad habits and that disobedience that's that that might be persistent in one's life and the second thing he says وخوفن تقطع تسويف or يقطع تسويف and a fear of god that makes one stop procrastinating and a fear of god that makes one stop procrastinating ورجاء يبحثوا على مسالك العمل and hope and optimism in الله such that the person starts seeking good deeds in their lives they get up and start doing good instead of wasting time and wasting their lives and being uh treating the ego as something negative by recognizing putting the ego down by recognizing that the lifespan might end any day this could be my last day on earth and to not think that i have perpetual life and then the person said وكيف سبيل العدارك the person said well how can you accomplish all those things these are lofty high matters how does one get that and what does he say رحمه الله امام جناد he says بقلب بقلب فريد فيه بقلب مفرد فيه توهيد مجرد بقلب مفرد فيه توهيد مجرد by a heart that is singularized containing only the pure oneness of الله in it the recognition of الله's oneness a heart that is singularized in purpose oriented purely to the oneness of الله and his majesty a heart that's filled with the remembrance of الله and recognizing that he is once uponه تعالى filled with the love of الله filled with the desire for الله filled with longing for الله filled with a relationship with الله we ask الله تعالى to make us realize in these meetings we ask الله تعالى to grant us the توهيد the success in implementing and operationalizing the sunnah in our lives step by step step by step improving every day improving every week improving every month improving every year always seeking increase for our worldly benefit and our other other worldly benefit and that الله تعالى to grant us the توهيد to become strong believers and pillars for ourselves and our families and our friends and companions in the community and the entire creation الله مئنى نسرك العفو العافي المعافة تامة في الدنيا والآخرة إن الله وملاقيكته يسادون على النبي يا أيها الذين آمنوا صدوا عليه وسلم وتسليما الله مسلي وسلم وباركة راسي بنا محمد النبي نمي وعلى آله وصحبه وسلم والحمد لله رب العالمين وأقيم السلام


Hello everyone, I'm Shivam Haseen and I will be presenting this talk which is seen in the middle that is SITM and What we'll be presenting is a middle-round differential crypt analysis attack, which is assisted by side channel and It is applicable to a range of his pinbox papers So this is a joint work with Yaku Priyay, Shalu Gu, Tirman Kujap, Proma Pu Siye and Siang Ling Singh Before the talk, just to introduce myself, I'm Dr. Shivam Haseen. I'm a senior research scientist at Temasek Lab, NTU Singapore Before NTU, I was working in telecom polytech in France and was also doing my PhD over there And my research interests are focused on physical attacks, that is side channel attacks, fault attacks, their combinations Then counter measures, certifications, as well as more lately hardware security of AI So in this talk, I'll be first giving some basic context and then directly the description of the SITM attack and how do we actually perform it Then we'll be extending this attack to deep ground shuffling and finally concluding it So let's start with some context So side channel attacks are now known for almost 25 years and there are several different taxonomy and different ways to classify them The most simple one is actually simple and differential side channel attacks So in simple side channel attacks, the idea is to use visual inspection to look for secret information and power EM measurement For example, looking for square and multiply in explanation And differential attacks are typically as a CPA on AES is done with a known input output to recover a secret key using statistical method This is either based on some leakage model generic like having weight or it could be profiled There are several variants of this attack, but in the most general sense, this is one of the most widely used attack in side channel attacks And most, if not all types of differential side channel attacks are limited to corner rounds Because they manipulate information related to known plaintext or cybertext and this is the main application setting So a couple of years ago, another variant of such attack was proposed Which was known as SCARTPA or side channel assisted differential plaintext attack So how does SCARTPA operate? So this attack is limited to only bit permutation based ciphers like present and gift And the idea is that you take a sequential or a microcontroller based implementation of present and you measure the power consumption for a given plaintext And then you change one level of the plaintext only, keep everything as the same and then you measure the power consumption again And just by looking at the power consumption difference, you could actually track the propagation of the difference into the deeper rounds like round one and round two And that reveals information on the key, so different differences can actually lead to different kind of propagation and therefore can reveal different information on the key So in this paper, we generalize SCARTPA like attacks in form of SITM to generic middle or deep round attack on a wider class of SBN block ciphers We validated these attacks on 8-bit AVR and 32-bit ARM microcontrollers We also claim to first ones to demonstrate this attack on middle round protected with shuffling counter measures and also attacking complex ciphers like a ES128 up to as deep as four rounds There are other contributions of this work which are not like the main part of this presentation, like there are results on skinny and present This attack can also be extended to other ciphers like gift, rectangle and Midori and we also propose a methodology to compute the number of rounds to mass to protect SITM But all these details are not in this presentation, so interested people can definitely take a look into the program Now the last slide of the context is attacker model, so our attacker setting is as follows, we assume a sequential software implementation that is running on a microcontroller for example It's a chosen plaintext attack because we are inserting known differences, so therefore that justifies the chosen plaintext attack We observe side channel leakage in the middle round, not in the first or the last round but somewhere in between as I explained that will be clear And what exactly we are looking for in the side channel trace is we want to identify if from one encryption to another if a particular intermediate value has changed So of course this attack can be applied on different targets but the target that we have in mind for the rest of the presentation is heterogeneous counter measures which means that Since corner rounds are more vulnerable to side channel attack or let's say most of the attacks, side channel attacks target only the corner rounds So the implementations where corner rounds are well protected for example with masking but middle rounds have either unprotected or have lightweight counter measures like shop So coming to the attack that is a C in the middle or SITM attack We can start with just understanding with the example of an AES128 So AES having a very nice diffusion functions like shift row and mix column Assures that a single byte difference inserted at the plaintext propagates through the whole state very fast So in a couple of rounds actually a single byte plaintext will make a difference or propagate all over the state And if you go the deeper you go the probability of that propagation becomes closer and closer to one But there are some exceptions that is if you if an attacker is able to choose particular set of differences or there exist certain differences that actually leads opposite So before getting debuts it starts with a convergence and then a diffusion will occur So this exactly is one example that we are interested in so we insert one diagonal difference into the plaintext such that they actually lead to a convergence of the difference to a single byte Which then in the following rounds will follow the similar pattern of spreading to a column and then to the full state But for the initial round we will see a convergence and which will be different from which will be a very rare event and it will be different from all of the executions And the convergence is what we intend to detect by side jump So we do a experimental validation. So the experimental validation with it on a 8 bit at mega idea where you could see a single convergence or the single difference can be detected in round two or that propagates to four differences around three similar actually can be seen for a 32 bit Amputex M3 where a single difference in round two can be formed by choosing index difference appropriately and then that propagates to round three to cause one column difference Now SITM exploits such cases and the methodology is as follows. So the first thing SITM does it insert plaintext differences And observe differential pattern in the middle rounds. Now since We don't know the key. It is not possible to predict what latest difference will actually cause a convergence and therefore we have to test many combination until we found a Like convergence in the differential pattern in the middle round And once a convergence is found that actually lead us to to recover partial key using the index pair. So for example in AS a convergence in this case will lead us to recover one column or 32 bits of the key and we repeat this for other columns independently And finally if for certain cycle for example a is 192 or 256 if we need multiple round keys to have the master key then we would repeat the attack on different parts. So the key recovery for example for AS 128 comes as follows. So in the first step which is we insert differences. So we take an example where we are inserting differences is 0, 5, 10 and 15th byte of the state and The probability of finding a convergence for this particular case or such particular cases is 2 to power minus 22. I will not go into the details of the number because due to scarcity of time, but the details can be found into the paper. And so we have a probability of 2 to power minus 22 to have a convergence to occur and we need approximately 2 to power 11.5 plain text to observe this convergence. So basically we generate plain text with such with differences only in these bytes and the other bytes remain fixed and we just keep on querying the AS and we observe the middle round and we see a particular differential pattern that is of interest exists. And what is this differential pattern it is basically one active byte in round two or four active by one active column in round three. So, you can observe at either places. So for example, if the first two rounds are protected then you can observe this in the third round. So, once you are able to actually detect this, this particular active byte, the key recovery goes as follows. So that you assume you hypothesize the value of the of the active byte and you propagate backwards towards the plain text, the plain text difference is known and that will actually help you to derive equations between the between the observed difference and the master key and that will actually be not satisfied by a single key but a set of keys and then you will have to repeat this experiment to actually filter the key candidates using new new index. And then this has to be repeated for all the columns. So, first you need to do par 11.5 to generate a convergence, then you have to repeat this. That cause an additional two to bar nine plain text, which which will actually when added together will give you the number of plain text required to derive one column of the key, and then you have to repeat it separately for all the four columns, and that all together comes on average to two to about 13.73. The attack can very well be extended to round four. So instead of observing a single, like one column to a single byte difference, we could imagine a case that is shown in the figure where you are looking at two columns active. And that actually leads to two bytes that are that are active in at the end of the first round, and that leads to a very special pattern in the fourth round. Now since the observation is the fourth round and coming back makes the equations more complex, the number of required plain text for this attack will naturally increase. And in this case, the number of plain text required are two to bar 27.5. The details of how these are derived are can be found into the paper. So to summarize the results, we look at different cycles in particular as skinny and present, and these results of course are applicable to other spin cycles as well which share a common structure, and the main result here is that with approximately two to power 12 to two to power 28 ciphertext, all these implementations were vulnerable to a set of attack, and the attack can go as deep as fifth round in ASN up to 12 rounds in skinny. So this I think is the key feature of this attack that it can go really deep if you are able to find differential patterns that that can be explored. Also, without going into detail how they are derived, the details are in the paper, like we do provide a methodology to calculate the minimum number of rounds that should be masked. And if you if you see across the study cipher, the number of rounds vary from like the minimum number of rounds of the study examples was 70% and this is only for the particular attack. If there's a future optimization of the attack, this number of rounds to mass might increase. And therefore, like the bottom line or the main conclusion from this, we can derive is that it is important to protect all the rounds, and not only middle rounds which also has been indicated by several books in the past. Now, we extend this attack to deep round shuffling. So again, I will start with a very quick introduction to shuffling. So normally, a normal algorithm like a is will will actually execute in a very regular sequence pattern. So for example, from one execution to another one operation will be followed by another operation and that sequence will remains the same which are represented as different colors in this in this example. And in a shuffle case, what and what a defender can do is basically just randomize the order of these operation so that they don't execute at the same time sample, and therefore increases the difficulty of performing attacks like correlation by by distributing the leakage over a period of time rather than being considered concentrated at a single time. So, in this actually increases the number of like distributes over n factorial possibilities for the sequence, and that actually leads to the difficulty of that. Again, shuffling is a countermeasure it's it's basically something which is causing, which is causing noise. So already, it becomes difficult to attack in the first round, but the deeper you go the equations become more and more complex, and therefore with this with the added noise from shuffling, this becomes even harder. And therefore, there are not a lot of work which have concentrated on attacking deep round countermeasures. So, what we demonstrated in the following is a following attack setting. We again take a case of heterogeneous countermeasure where the corner rounds are well predicted that is masking plus shuffling. But in the middle rounds the masking is disabled and only shuffling is enabled so that the designer can still win some performance over full ask implementation. So we have 16 s boxes, therefore 16 factorial execution sequences are possible, but since it's shuffle so averaging is not possible. And this leads to a low SNR. So, the attack procedure is as follows basically we are interested in a plain text difference. So we insert a plain text difference. And so there are two traces for each of the plain text, and basically which are represented by TR 0 and TR 1. And both these traces have 16 s boxes, and all these 16 s boxes, let's say we are able to find one P O I for simplicity for each s box. So we have 16 P O I for 16 s boxes in these two traces. Now what we what an attacker will do is basically it will compute a pair wise difference for each P O I. So in an unprotected implementation, this would be easy because the the the executions are not randomized. And therefore, the same as box will be subtracted to each other and if there's a particular bite active or not active can be likely detected. But in case of shuffling, since the order of between TR 0 and TR 1 will be different. This is not easy to detect. But still, if we are repeating enough number of time there is a chance that for some sequences to two s boxes are actually having the same same position in the execution for two consecutive seconds. So for example, if you're looking at this box number zero. So for if we test enough number of samples, there will be some cases where as box zero is executed at the zero position in TR 0 and TR 1 and we are we are basically interested in that. And what we do is like after taking the pair wise differences that is TR 0 minus TR 1 and TR 0 as TR 1 for the post position and all the 15 position we compute a sum of the differences which is known as D over here. And if there is no convergence detected, this value will be pretty will have a very will be close to some random value that like the little bounce on which can be easily determined. But if our convergence has occurred, the value of D will go down that will be actually deviate from that that distribution. And this is exactly what we used to detect the convergence. And once the conversion is detected, the key recovery follows exactly the same process. So here is a simulated and real experiments or from real phrases, which we compute at different SNR values. And you could see that when a convergence is offering and it is not offering the distribution is slightly different and can be distinguished from each other. However, this these two figures are only for demonstration because unless you're profiling you won't be able to obtain this these distributions easily. And therefore, the idea, but the idea that we can simply follow is that instead of trying to draw the distribution be just enumerate like from the minimum value of D until we find few convergences. So in a in the experiment that we did, we actually found up to four convergence in the top 20 values of D and that actually allowed us to recover. So finally, coming to the conclusion, if we compare this attack, there are several candidates which can be compared, which it can be compared to so differential side channel attack and SITM are different because one targets corner rounds and other targets middle rounds. But there are other known attacks like collision based algebraic side channel attacks or soft and analytical side channel attacks, which can target middle round. But how we differ for how SITM differ from from these attack is that first of all, it has a low SNR sensitivity as we showed like even in low noise as well as like noise generating countermeasure, it was able to actually recover the key and there is no profiling needed. We do need to know the point of interest, but there are several non-profile techniques to detect that. But as for example, Sascha, we don't need to to actually know the performance detail profiling. So to conclude, we presented SITM, which is a side channel assisted middle round differential crypt analysis attack. It is a generalized deep round attack on SPN ciphers, where the results were presented on a bunch of ciphers, including AES, KINEE present and these days sendable to others. We show that we can target AES up to five rounds, KINEE up to 12 rounds. This was the first attack on a middle round shuffling. And again, the results reinstates that there is a need for protecting all rounds and only protecting corner rounds is noted. Thank you.


Hi, everyone. My name is Emily Stark. I'm a software engineer on the Chrome security team. And today, I would like to take you on a myth-busting journey about the protocol that we use to send and receive data on the web over a secure connection. And that's HTTPS. And I think this is one of the most important topics for a web developer today. So our journey begins in 2010, or thereabouts. Imagine you're sitting at your computer surfing the web, watching the hamster dance, or whatever people did in 2010. And you fall into a deep sleep, so deep that you don't wake up until today in 2016. And you look around at the web today, and it's pretty different from when you fell asleep in 2010. Today we have things like add to home screen, which lets websites behave more like apps, push notifications, keeping your users engaged, coming back to new content, and cool new APIs, like device orientation, geolocation, all these things you've been hearing about at IO today that let you build progressive web apps, and let websites do things they never could have done before in the past, things they really couldn't have done in 2010 when you fell into your deep sleep. So these are all very powerful features for websites to have, but they're also a lot of responsibility. Take geolocation, for example, the geolocation API. If a website can access my location, then the website knows where I live, where I work, when I'm home, when I'm away, where I shop, where my friends live, where my doctor is. It's a lot of information for a website to know about me, right? So if you woke up to this web in 2016, this very powerful web, you might be surprised to find that there are still websites where you can make a purchase with your credit card or send a private message to a friend or research a personal health condition in such a way that an attacker eavesdropping on the network can see all the data that you're sending back and forth. Or you might be surprised to find that there are still websites that spend tons of money and time and energy crafting the perfect user experience only to deliver that experience to the user and have an ISP or a Wi-Fi provider or some other intermediary on the network injecting obnoxious ads like this. And this isn't hypothetical. We see major ISPs injecting ads or other content all the time. And if this was your website, you'd be pretty upset, right? Because this interferes with that perfect user experience. It might mess with your revenue streams by covering up your own legitimate ads. And at worst, it might even trick your users into downloading and installing malware onto their computers. So if you woke up in 2016, you might hope to wake up to a web where data is protected from this kind of snooping and tampering from the very beginning. And that's what we get from HTTPS. That's what this green lock signifies. And in 2016, we're hoping to move towards a web where this green lock is so ubiquitous that we might not even need to show it at all, because it's just the default that users have come to expect as the bare minimum in terms of security for any site on the web today. This green lock signifies three main security properties. Identity. When you type HTTPS Google.com into your browser, your browser receives a cryptographic proof of identity called a certificate from the server. And the browser uses that certificate to prove that it's talking to the real Google.com, not some other server who's pretending to be Google.com. So when you type a URL in your address bar, the browser gets a proof that that's the real domain that you're talking to. Confidentiality. Once your browser knows that you're talking to the real Google.com, both those parties, the browser and the server, have a guarantee that only they can read the data that's being passed between them, not any attacker eavesdropping on the network. And finally, integrity. The browser and the server have a guarantee under HTTPS that when they send data from one to the other, the data they send is what the other party receives. So an intermediary on the network can't modify or tamper with the data that's being sent. Only the browser and the server can. So these are the three security properties that we get from HTTPS. In your mind, you might have some other associations. When you see this green lock, you might think that it represents a financial burden or a performance or maintenance cost. And many of these associations were true five or 10 or 15 years ago. But many of them are no longer true today. So in this talk, what I'm going to do is tell you five stories about HTTPS and try to separate facts from fiction, show you what might have been true in the past that is now becoming a bit of a myth, to try to convince you that HTTPS is possible and important for every site on the web today. My first story is about a web developer named Alice. Alice runs an online travel guide. And it's a very cool travel guide, but it doesn't have any privacy or security-sensitive content. It doesn't have any login forms or credit card forms or anything like that. So Alice doesn't really think of her site as something that needs HTTPS. But one day, Alice is talking to her friend and her friend says that on her computer, Alice's travel guide is really slow and sluggish. And Alice is like, OK, that's weird, because on my computer, it's really fast and snappy and responsive. That's the way I built it to be. So she goes over to her friend's house and checks out what's going on.  So it ruins the user experience that Alice has built, covers up her own lightweight unobtrusive ads, and I just want to drive this point home. Alice's friend trusts Alice's site. So when she clicked on one of these ads, she didn't expect to download the malware that infected her computer. And that's natural, right?  So Alice is bummed out about this, as you would be, I'm sure. So to console herself, she goes off and starts working on a new feature. And this new feature, say it uses the geolocation API to figure out where the user is and then give them localized travel tips. But as she's working on this feature, she goes to try it out in Chrome and she sees that it doesn't work. The reason it doesn't work, as you can see in this error message in the developer console, is that Chrome and other browsers are starting to remove access to powerful APIs and other web platform features when they can't be safely used over non-secure HTTP. So in order to use the geolocation API, your site needs to use HTTPS. And there's a good reason for this, right? If I'm going to trust Alice's site with my location, I need to know that I'm talking to the actual Alice's travel guide, not to some other site pretending to be Alice's travel guide. So we need that identity property of HTTPS to be sure that when I as a user grant a site access to my location, I'm actually talking to the site that I trust with my location. Chrome and other browsers, as I said, are not limiting this to geolocation. There's a list of features that have already been removed when accessed over plain HTTP, which is non-secure. And there are a few more that are coming down the pipeline. Alice realizes, after all this, that in order to build a progressive web app with the user experience that she wants, and in order to do it safely and guarantee that the user experience that she builds is the one that her users receive, she needs to use HTTPS. And that's why we think that HTTPS is important for every site on the web today, even if on the face of it, it doesn't look privacy or security sensitive. My next story is about a data-driven guy named Bob. Bob has an e-commerce site, let's say. And Bob has done some testing and some optimizing and some A-B tests. And he's found that reducing latency, reducing the time that it takes a user to load a page on his site, is crucial for optimizing conversions. So the faster his page loads, the more sales he makes. And Bob has heard some not-so-nice things about HTTPS and performance. Yell.com is an online business directory that recently made the switch to HTTPS. And they admirably documented their experience, some of it positive and some of it negative. And what was really interesting to see is that they saw a performance impact from moving to HTTPS. Whereas Google, way back in 2010, was able to migrate to HTTPS, migrate all of Gmail to HTTPS, with a pretty negligible performance impact. So Bob is seeing these two things in doing his research, and he's wondering what's going on. Where does this discrepancy come from? So let's dig into what happens when the browser sends an HTTPS request to see what's going on here and what Bob can do and what you can do to minimize the performance impact. So I'm focusing here on the network latency introduced by adding HTTPS. There are some other performance costs associated with HTTPS, but this is far in a way what people tend to run into problems with, the network latency, the extra round trips. So once Bob turns on HTTPS on his site, the first thing that's going to happen is that a whole bunch of his users are going to start having to take redirects to get to his site. So for example, if a user has a bookmark to the HTTP version of Bob's site, or if a user follows a link to the HTTP version of Bob's site, Bob is going to have to redirect them to the HTTPS version. So right off the bat, that's a little bit of an overhead that we wouldn't have had if we were just sticking to HTTP. Next, the browser has to go and actually speak HTTPS. And what's involved here is setting up a TLS connection. TLS is the underlying protocol used to set up a secure connection for HTTPS. These two round trips here are the two round trips that are part of the TLS handshake, what the browser and the server do to set up a TLS connection. And this is a bit of a simplified version, but the overall idea is that the client says, hi, I want to speak TLS. And the server says, hi, I can speak TLS, and then sends its certificate, which is that cryptographic proof of identity. The client validates the certificate, makes sure everything looks OK. They agree on some cryptographic parameters. And then the client says, OK, I'm done. I'm ready to start speaking TLS. And the server says, yeah, me too. Let's speak TLS. And then the browser can actually go ahead and send the HTTPS request. So these are the two round trips that are needed to set up a TLS connection before the browser can actually send the HTTPS request over this secure connection. So let's take this one by one and see what we can do to optimize here. First, this HTTP to HTTPS redirect. The web platform has a feature called strict transport security that you can use to remove this redirect for many of your users in most cases. So strict transport security is an HTTP header that you can set on responses that tells browsers, I always want my site to be accessed over HTTPS. Whenever the browser sees this header on your site, it'll remember for the period of time that you configure that your site should be accessed over HTTPS. And that means whenever the browser is about to follow a link to the HTTP version of your site, it'll automatically internally rewrite this link to HTTPS and go straight there. So after the user has seen this header once, they're not going to have to take that HTTP to HTTPS redirect until the header expires. But an important caveat is that when you set this header, you're committing to supporting HTTPS for that period of time. So this is not something you want to do while you're testing HTTPS. It might not even be something you want to do until you're comfortable running and maintaining HTTPS. But once you're there, you can set this header to remove that HTTP to HTTPS redirect for many of your users. Next, let's look at the TLS handshake, these two round trips. There are two TLS configuration options that you can set if your server supports them to remove a round trip here in many cases. The first optimization arises from the fact that, by default, the client waits until this entire handshake is finished in order to send the HTTPS request. But it turns out that in many cases, it's actually just fine for the client to send this HTTPS request alongside the end of the handshake. So instead of waiting for the whole two round trip handshake to complete, the client can kind of stuff the HTTPS request in there before everything is all done. And that means the server can start processing it without waiting for these two round trips to complete. And this is called TLS false start. And it's something you can turn on in your server configuration if your server supports it. And when the client supports it also, that removes a round trip from the handshake latency. The next optimization that you can turn on is pretty straightforward conceptually. If the browser and the server have spoken TLS to each other in the past, the browser can remember a session identifier. And the next time it goes and sets up a TLS connection with the server, it can say, hey, I have a session identifier. We don't need to do this whole handshake dance again. Let's do the bare minimum work we can to set up a TLS connection. And it turns out that the bare minimum work involves shaving off a round trip. And this is called TLS session resumption, as you might imagine. And if your server supports it, you should turn it on. Just to illustrate the effect here a little bit, if you go and load google.com and look at all the requests that are sent to google.com in Chrome's developer tools, in a common case, only the first one of these would impose that full two round trip TLS handshake. And subsequent requests would be able to reuse the session identifier to avoid a round trip. All right, that was a lot of work.  And this is where things get cool, because this is where using HTTPS unlocks some pretty dramatic performance improvements, primarily in the form of HTTP2. The next version of HTTP, which is now supported in many browsers, including Chrome and Firefox. So I'm going to describe some of the performance wins that you get from HTTP2. And then I'll come back and talk a little bit more about its connection to HTTPS and why the two are linked together. In HTTP1, traditional HTTP, requests and response are sent in order. In the common case, the browser sends a request, waits for a response, sends another request, waits for the response, and so on. This means that if the server takes a while to produce that first response, the client is going to be waiting a while before it even sends the second request. And the second response is going to be delayed by that much also. In HTTP2, multiple requests and responses can be multiplexed over the same connection. What this means is that the browser can, for example, send a request. Before even waiting for the response, the browser can send a second request that it knows it's going to have to send. The server can start processing the first request, maybe even send part of the first response, but then it has to, say, wait on a slow remote API call or a database call. So while it's waiting for that to happen, it can start processing the second request, send the second response. Then when that database call returns, it can finish the first response. So this means multiple requests and response can be interleaved on the same connection, which has much improved network performance properties. Another cool HTTP2 feature is pretty intuitive. Normally, in traditional HTTP, the browser requests the home page, then parses the HTML, and says, oh, now I need the style sheet and the scripts and the images, all that stuff that's referenced from the HTML. But in HTTP2, the server can say, oh, you just fetched the home page. I know that as soon as you get around to parsing that HTML, you're going to need a bunch of scripts and style sheets and other stuff also. So I'm going to proactively push those resources to you. And the client can keep them in its cache so that it doesn't have to go over the network to fetch them when it actually needs them. Now, I said that HTTPS unlocks the massive performance wins of HTTP2. What I mean by that is that browsers have said they are only going to support HTTP2 over HTTPS. If you want to use HTTP2, you have to use HTTPS. And there's two reasons for this. One is that it provides an incentive to move to HTTPS because we, cruel browser vendors, think that HTTPS is the best thing for the ecosystem and everyone should be using it. So we want to provide incentives to make the switch. There's also a practical reason of compatibility. And what that means is that there are proxies and intermediaries out there that get kind of confused when they see HTTP2 traffic because HTTP2 looks pretty different from normal HTTP1 traffic. And those proxies and intermediaries get confused and in some case even break things. So we need that confidentiality and integrity guarantee of HTTPS to be able to support HTTP2 without breaking things. If we go back to yell.com, that online business directory that Bob read about and was unhappy to see that they had some performance impacts from moving to HTTPS, it turns out that their negative performance impacts were mostly due to their use of some outdated load balancing software, that they weren't in a position where they could update before making the switch to HTTPS. But what they have on their future roadmap is updating that software so that they can turn on more of these optimizations and especially so they can enable HTTP2. And we have hope for yell.com because of stories like weather.com, who saw a small performance impact from moving to HTTPS. But then it was blown out of the water by the performance wins that they got by subsequently turning on HTTP2. In the end, since Bob is in a position where he can update his server software and where he can turn on some of these optimizations and technologies, he shouldn't see any negative performance impact from moving to HTTPS. And if he does, he should be able to outweigh it by turning on HTTP2. All right, how about a slightly different kind of story now? This is a story about not a web developer, but an evil person named Eve. And Eve is a little short on cash and also pretty tech savvy. So when Eve needs some fast money, she goes online and she searches around for the latest HTTPS vulnerabilities. And she picks the one with the fanciest logo. And she runs an automated tool to find vulnerable sites on the internet. And then she carries out one of these attacks against that site to harvest sensitive information like passwords or credit card numbers that she can turn into cold hard cash. This is pretty true. HTTPS research is really hot these days. There are hot new techniques like formal verification that mean bugs are coming out at a pretty fast clip. And it's increasingly common for security researchers to make their attacks more practical than theoretical by writing tools that scan for vulnerable hosts on the internet and by building proof of concepts that demonstrate that the attacks are practical in some cases. So I want to emphasize here, after I've shown you all these scary attacks, that the existence of these attacks makes HTTPS kind of like a life jacket with some minor defects that come into play in certain cases under certain conditions. But using HTTP is like no life jacket at all. So in most cases, when you look at most of these attacks, it's far better to use HTTPS despite the existence of these attacks because if Eve wants to attack an HTTP site, she doesn't even need to try its trivial. That said, I'm not telling you that you shouldn't worry about these. You should use the tools and support that are out there to keep your server and configuration up to date. SSL Labs is a scanning tool where you can type in the address of your site and it'll scan your server, give you a grade, and tell you what configuration tweaks you should make to avoid becoming vulnerable to new attacks. Similarly, the Mozilla SSL Configuration Generator takes a few parameters about your server and then it spits out the configuration that you should be using that adheres to best practices so that you don't have to worry about picking cryptographic algorithms or key strings or anything like that. It'll tell you what best practices are to keep your server and your users safe. Attacks always get better. And I'm betting that there will be many more HTTPS attacks in the next few years. But it's still better to wear your life jacket even with a few minor defects. And there are great tools out there, some of which didn't exist five or 10 years ago, to help you keep your site safe from Evil Eve. How many of you work at startups? All right, Charlie, in my next story, two years ago, he had a great idea for a startup. He decided that he wanted to build a site where you can send chat messages to your friends on the internet. And he raised $20 million of venture capital funding for it. But these days, Charlie is kind of running out of money. And the VC market has gotten a little tighter. So he needs to make sure that every dollar that he's spending before he needs to raise his next round is going to a good cause. And he's heard that HTTPS costs money, maybe money that he can't afford. Now, money is sort of a part of all of these stories in one way or another. I talked about performance, which ultimately kind of boils down to money. In my last story, I'm going to talk about ads, which is also very closely tied to money. So in this story, I'm just going to talk about two aspects of the financial parts of HTTPS that Charlie is especially worried about. First, these cryptographic proofs of identity that I keep talking about, certificates. When you need to go get a certificate, traditionally, you buy it from an organization called Certificate Authority. You prove your identity to the Certificate Authority, and it gives you a certificate that you can use to prove your identity to browsers. You might wonder how much these certificate things cost. And while it's certainly possible to pay a lot of money for certificates, you don't have to. A project called SSLMate has, for many years now, been offering certificates starting at $15 a pop. So even if you need multiple certificates, even if you need one of their fancier options, it shouldn't break the bank. A newer project called Let's Encrypt offers free certificates. And both of these projects, SSLMate and Let's Encrypt, in addition to having freer or very affordable certificates, they also offer automated command line tools that help you buy and manage your certificates automatically so that they don't expire or other certificate management tasks like that. So certificates are not going to be the reason that Charlie's startup runs out of money. The other thing that Charlie is worried about is search ranking. So you can imagine that if you move your site over to HTTPS, search engines might get confused. And you might lose search ranking, because a traditional nugget of wisdom is that having two different versions of your site can have a negative impact on search ranking. Google, in particular, has a few best practices that you should follow when moving your site. And here I'm showing the basics. When Charlie turns on HTTPS for his site, the first thing he wants to do is serve 301 redirects to tell search engines that his site is over at the HTTPS version now. And once the search engine crawler gets to the HTTPS version of his site, it's important to serve a canonical link element, reinforcing the idea that HTTPS is the canonical version of Charlie's site. There are a few other best practices that you should follow to avoid losing search ranking. And rather than repeat them all here, they're all pretty straightforward, so I encourage you to go check out these resources after the talk. If you do your research and follow these best practices, you can expect a minor fluctuation in search ranking, which happens anytime you make large changes to your site. But you'll then recover back to the normal levels that you had before the transition. In fact, Google even has a small search ranking boost for HTTPS, so it's actually considered a positive signal. At present, you probably won't notice any noticeable improvement due to this boost, but that's possible that might change in the future, and it is a small positive signal now. In other words, if you follow the best practices and take a little time to do research before moving your site over, these financial costs, certificates, and search ranking should be negligible. My final story about HTTPS is the story of Francisco and his adventures with third-party content. I'm sure many of you have lots of third-party dependencies in your site. So let's say that Francisco runs the website of a major news organization. And that means he has a large site with a lot of legacy content, hundreds of thousands of articles, and many different types of third-party content to worry about. And he's heard that if you move to HTTPS, all your third-party content must be available over HTTPS also. So it's easy to see why this might freak Francisco out a little bit, because it's true that when you move to HTTPS, you're going to have to start thinking about whether all your third-party content is also available over HTTPS. First and foremost, Francisco is a little worried about ads, which is what he gets his money from. So Francisco is wondering if his ads will be available over HTTPS, if he'll be able to serve them on his site once he's made the switch. Maybe a little-known fact, for Google AdSense requests, they're always served over HTTPS for most users. So even before Francisco has moved his site to HTTPS, his AdSense ad requests are already being served over HTTPS for most users, and so he shouldn't have to worry too much about this. And the exception here is users who are in countries that actually block HTTPS traffic. This isn't just a Google thing. This is an industry-wide trend. In 2015, the Interactive Advertising Bureau published a blog post in which they quantified the number of their member ad systems, which support HTTPS. 80%, that's pretty good. And they underscored their commitment to getting all the way there and getting to 100%. In this day and age, it's unlikely that getting your ads to be served over HTTPS will be a blocker for moving. If your ad systems don't support HTTPS, I encourage you to ask them about it. You might find that it's already on their roadmap in the very near future. And if it isn't, you should ask them why not and tell them I said why not. The next type of third-party content that Francisco is worried about is the partnerships that he has with external sites that rely on the HTTP refer header. What this means is that when a user clicks a link on Francisco's site and that link points to an external partner, that external partner will look at the HTTP refer header to see that the traffic came from Francisco's site and attribute it appropriately. Now, this might be something that's used for analytics purposes, or it could be something that's used for revenue purposes, but either way, this refer header is important to a lot of sites on the web today. The problem, which may not be obvious, is that when you move your site to HTTPS, if a user follows a link to an HTTP partner, browsers will strip the refer header for privacy reasons. And that's because if you're doing something sensitive on an HTTPS site, the URL that you are on might be sensitive information. And the browser shouldn't just leak that in plain text over the network as you follow HTTP links. So it's important for privacy purposes that these refer headers are stripped. But that's a problem for Francisco when his HTTPS site links to HTTP partners. He needs that refer header to be there. Refer policy to the rescue. This is a web platform feature. And there are a few different ways you can set it. But it basically allows you to make a compromise between privacy and functionality, where you can say, in some cases, there is an amount of information that is OK to send in the refer header. So in this example, Francisco has a link on his site to an external partner that's only available over HTTP. And Francisco is setting a refer policy on that link, saying that when the user follows that link, it's OK to send the origin. That is not privacy invasive to send the origin. And the origin in this context, you can think of it sort of like the domain. So when Francisco sets this refer policy on his links to external partners, the refer header will contain the domain of Francisco's site so this external partner can attribute the traffic correctly, but they don't need to see the full URL. And Francisco is telling the browser, it's OK to relax this restriction because this is not going to leak any sensitive information. There are a variety of different refer policies that you can set, so you can choose a setting that works for your site here. Finally, Francisco is losing sleep over a kind of general problem called mixed content. Mixed content is the general phenomenon where an HTTPS site loads a sub-resource over HTTP. And this is an important case because when an HTTPS site loads a non-secure sub-resource, that non-secure sub-resource can actually compromise the security of that HTTPS site, which is loading it. So if you try to load a non-secure script or iframe or other active content like that on an HTTPS site, browsers will actually block it because that content is too powerful and would completely wipe out all the security of that HTTPS site. In the cases of images, and these are what tend to be more common in cases like Francisco, Francisco's site might have lots of old news articles that link to third-party images that aren't available over HTTPS, or maybe they're loaded dynamically and it's not so easy to find which strings he needs to change to load all these third-party images over HTTPS. In the case of content like this, what we call passive content like images, browsers will allow it to load so the site won't be completely broken, but the green lock goes away. So Francisco loses his green lock to alert the user that there is something going wrong, something's not quite right with this site. And Francisco's not happy with this. He wants his green lock that he worked hard for to tell the user that the security on his site is properly configured. A web platform feature called Content Security Policy is what we usually recommend developers to help them find and fix instances of mixed content on their site.  It can be used for many different things, but in this case, what I'm showing is an HTTP response header. And when the browser sees this header on Francisco's site, the browser interprets this as follows. Francisco's site is saying all of my content should be loaded over HTTPS, with the exception that dynamically generated and inline scripts are OK. Let's just ignore those. Otherwise, all content, all scripts, all images should be loaded over HTTPS. And if the browser ever sees content that violates the policy, this policy that all content should be loaded over HTTPS, then the browser should send a report to this URL that Francisco has configured. So this header is basically a way for Francisco to assert to the browser that all content should be loaded over HTTPS. And he wants to receive reports about any content that isn't. And that allows him to go find and fix instances of mixed content on all his gazillions of pages. And this header name is report only, meaning that all of this happens invisibly to the user. It doesn't change the behavior of Francisco's site. Merely serving this header will not cause anything to happen that's visible to the user, won't block any content from loading, it'll just send reports so that Francisco can find out what's being loaded over a non-secure HTTP and fix it. If you don't want to run your own infrastructure to collect these reports, there's a great service called reportURI.io where you can go sign up and you'll get a URL and you can use that URL as your report collection endpoint in your content security policy. And this service will collect these reports for you and even give you some cool data visualization and analytics tools to help you make sense of what you're getting. For all of these problems, Chrome recently launched the DevTools security panel. So if you go into DevTools and Chrome and you open up the security panel, you'll see a whole bunch of information that is designed to help you find and fix HTTPS configuration problems, such as these problems of loading third-party content over a non-secure HTTP. So we would love for you to check it out and give us feedback because our sole goal here is to help you set up HTTPS as painlessly as possible. The story of Francisco is true in that third-party providers must support HTTPS in order for you to move your site over. But what's new, what's changed in the past few years, is all these new tools and support in the ecosystem and in the web platform to help you upgrade all your third-party content. When I look back at these five stories about HTTPS that I've told you today, I think there's one kind of moral that emerges. And the moral is that five, 10, 15 years ago, HTTPS was kind of slow, kind of expensive, kind of a pain to set up. But these days, in 2016, browser vendors, web developers like yourselves, server software developers, security researchers, all of these parties have come together to make HTTPS a lot faster and easier and cheaper and all-around better than it was in the past. And that's why we think it's both possible and really important for every site on the web today, this very powerful web that we have. Every site should be using HTTPS. Thank you so much for listening. I really appreciate you coming. I will be in the mobile web sandbox area if you have any questions, and I'd love to chat. Thanks.


The T2 tile project is building an indefinitely scalable computational stack. Follow our progress here on T Tuesday Updates. And we're back. It's probably going to go on a little bit long this week, but hey, it's been two weeks. So the COVID-19 disease got a little bit closer to a lot of nerds this week as it took the life of John Horton Conway, a renowned British mathematician best known at least outside of mathematical circles for inventing the game of life, a zero player game, right? And it's a two dimensional grid with squares that go on and off and so forth. And that's obviously relevant to the movable feast because it looks like it. It's a 2D grid of things happening. And there's very frequently running into, you know, people making the link between the movable feast and Conway's game of life. This was from the YouTube comments. There was a comment on Reddit some time ago. I didn't go dig it up. Probably better than that. I didn't say, you know, somebody should tell this guy about Conway's game of life and so forth. And, you know, so it's very important to me that the movable feast machine isn't Conway's game of life just because that's what people tend to think of when they think of anything because Conway's game of life is so famous. But the interesting thing about it, at least in this particular context, is that John Horton Conway himself did not actually respect the game of life the way his legions of fans, the way the game's legions of fans respected it. And this was an interview that Brady Herron did with him several years ago where he talks about it and how successful it was and how Martin Gardner's column in Scientific American Mathematical Games was originally described. People got also excited about it. It was really nice. It's kind of funny because, you know, Conway is fundamentally sort of a nerd, wild man. And you know, he doesn't do political niceties well or all that often. And so here, you can hear him sort of trying to be magnanimous to fans of the game of life when, in fact, he thinks it's really sort of dull. The only mathematical interest to it is showing that it could be done, coming up with the rules, and then doing and proving that they were universal, that anything you could do with any computer, you could do one way or another with the game of life. And then after that, all the rest is uninteresting from his point of view. He doesn't hit on it too hard here, but the story, my own story about it connects to it from that and the Artificial Life Conference six years ago in New York City at the Javits Center, which has now been turned into a hospital for COVID-19 patients, that John Conway gave a keynote at and that from some points of view, depending on how you look at it, I was a backup keynote speaker for John Horton Conway. And so, you know, this was the poster that was in and, you know, there it is. He was notably the inventionist at the time of Game of Life and so forth. Now, how do you become a backup keynote speaker? Well, you know, six years ago, I was, you know, young and naive and I was trying to bring the robust first thinking to the world as best I could. And I wanted to speak to the artificial life community because they were, you know, the closest to the area that I was in that seemed relevant to. And so I sent an email to the conference organizers in 2015, offering myself as a keynote speaker, you know, not really understanding that that's not how keynote speakers are actually selected. And, you know, so I didn't get invited and but I went to the conference nonetheless and I had my work to show and so forth. And then during the conference, some of the conference organizers came by and said that there had been some concern that Conway might not be able to make it. He might be late. He might be later. He might be ill. I don't remember exactly what it was. And, you know, would I be ready to step in as a backup keynote of John Horton Conway didn't do it. And, you know, really, I think, you know, mostly the conference organizers were kind of mocking me a little bit. But if, in fact, he didn't show up, then they would have a problem. So it was sort of a win-win solution from some points of view. In fact, he did show up. He arrived and gave the talk and it was quite a talk because he really laid into people that were doing cellular automata, not just Game of Life, but pretty much everything about cellular automata was, you know, from his point of view, sterile and uninteresting. And he spent most of the lecture, at least it seemed like a long time back half of the lecture, talking about his free will theorem, which certainly baffled me. And as far as I could tell, it was baffling an awful lot of people in the room. But if you drill down through it and I read the paper afterwards and made a little bit of sense out of it, you know, I'm not really much of a mathematician, but, you know, what I got out of it was that, you know, basically it was saying that if you want these particular properties that seem like it's something that a scientific theory of reality ought to have, then on the only definition of free will that made any sense, that there ought to be things that couldn't be predicted by the path, the historical path of the system, then if free will possibly exists, then elementary particles like protons and stuff would have to have free will. And that under in this guy, Cantron Lansman, a number of people have criticized the work as being a tautological or sort of too uninterestingly tautological or something like that. But it twists on the idea of determinism. And the quote from David Hodgson, science does not support determinism. And hey, I'm alright with that. And I think really, that John Horton Conway's criticism of his own game, the game of life was fundamentally because of its determinism, which meant it was detached from reality and purely defined by mathematics, by the by the simple rules, and at which point from a mathematical point of view, the rules, you know, there it is, the consequences unfolding of it, that's engineering. But the criticism he laid on the artificial life community that day in 2014, in the Javits Center, didn't actually land on our work, didn't actually land on the movable feast machine, because we had jettison determinism. And the course of the computation that happens in the movable feast machine, inherently, necessarily depends on the underlying physics, the actual manufacturing of the chips and the temperatures and everything that happens, the races that the tiles happen against each other. And that, I believe, is escaping the free will theorem that John Horton Conway, in fact, was talking about when he was being the keynote speaker that I was allegedly the backup for. So, thank you, John Horton Conway. I was a fan of the game of life. It was part of what drew me in to distributed computing, cellular automata, living computation, and so forth, got me where I was today. Even though I think I agree with what I take to be John Horton Conway's criticism of his own child, the game of life, there is another step to the game. And we want to try to help people to take that step as best we can to move beyond determinism, and to focus on the reality of systems that are embodied in reality, the real systems out there. And so my feeling is, you know, I criticize the game of life sometimes. I get cranky about it because so many people mistake the move of feast for it. But really, you know, it's a wonderful step. And, you know, it's a little bit too easy. That's what determinism makes it a little bit too easy. But, you know, an easy step will always lead you wrong eventually.  Rest in peace, John Horton Conway. And, you know, in a sense, he's sort of a spiritual figure for the living computation foundation as well, game of life, computers, and so forth. The other news for the living computation foundation from the the memoriam to the most practical, we're getting very close now to actually having a bank account for the living computation foundation. In two weeks, when we talk again, I am determined that there is a PayPal button on living computation.org. We shall see. So what I want to talk about for the rest of the time today, maybe another 10 minutes, do a demo is, you know, intertile events.  You know, going back to episode 244, last August, and certainly longer than that, depending on how you score it, have been saying, you know, intertile events right around the corner here need to do this, whatever it happens to be. Part of the problem, and we got to this talk about it in the last couple of weeks, was that I had the again, naive, I'm going to be a naive assumption that we were going to be able to take the simulator code base and kind of just plop it on the tile and shim around the edges and get the whole thing to work.  And it just wouldn't go and it wouldn't go and it wouldn't go and months went by. And so finally, the right, the report taking the different perspective from the point of view. And finally, just a couple of weeks ago, we got to, well, screw it. Let's rebuild it. And, you know, the way I'm looking at it now, it's not even a rebuilding, it's a new start. And so this is what we've got today. What we're building is a native engine for the T2 tile. And you know, I started building it up. And at this point, it's gotten, I don't know, probably several thousand lines of code I haven't actually counted yet. And I've been bad about checking it into the repo. But the idea is start fresh, blank screen, new main program, start working way down, rebuild in and just gradually pull in the sort of low level bits that are sort of, you know, least committed, like the display related stuff and so forth. While in the process of building up this new approach to doing events where we're going to have lots of event windows and flights simultaneously and so forth. So I wanted to show you the progress we've had over the last couple of weeks on the T2 native engine. So I've got a demo here. And there's another issue coming up, which is, you know, if we're going to need to be displaying this to people via video, you know, we've got to get some better way.  And I've tried to work on it. I've got it down here today. And I've got it sort of hidden under like a photographer's cloth. Because it seems like basically you want to exclude the rest of the light and then try to underexpose the camera as far as possible. This thing doesn't let you underexpose only a few stops and so forth. So it really doesn't look very good. And it's a problem. I'm not exactly sure yet how to solve. But all right, let's look at it. So step number one. You know, what do you see here? Well, you see nothing here. But the key is, is that that is actually the grid where the atoms are going to be. Why are there no atoms there? They're not implemented yet. But we have the user button, which has been sitting here really not doing much of anything for anybody for a long time, is now there to bring us up to our global menu. And we can look, we have a whole thing now for showing the internal log of the engine code, I was going to say the simulator code, but it's not a simulator anymore. It's an engine. And stuff goes by and oh, and yeah, here's another thing we show you forget my phone here. There, see active light. Yeah, there we go. So the thing is not only detecting light changes, it's injecting events into the master event queue. At the moment, all they're doing is getting picked off the queue and reported to the log file, but they're available there and will expose them one day to alarm code to figure out what they want to do. I don't this probably doesn't look that great.  I mean, there is hope because you know, my camera, my phone camera works better than this little thing. So we got to figure out a better way to do it. The sites we already saw, that's the grid view. And then there's the the tile view, which this is trying to be what T two vis used to be that and you can see here, we've got a bunch of the grid voltage, the core temperature or the edge temperature and so forth various number status reports being put up here. The background is changing color. Because I was just doing some performance checks and the way the display works, if you only change a little bit of the display, it can actually go faster. So I wanted to be doing full screen updates because that's more like what'll happen when the grid is full of atoms that are all shifting around. But a lot of this is really just stub stuff, you know, the x ray icon thing would just show myself that I could do the icons and so forth. But it all is there and it all actually is running and it's all in a single image. T two vis the stuff that we had before was a completely separate program from MFM T two, which was the code base of the simulator on the tiles. This is now all one, which is why we can get back and forth between them seed drag. Yeah, that would be great. But we don't have seeding drag yet either. So so that's what it is. Now, you know, a lot of this code is brand new and rickety. I mean, so I've got a new little language sort of like an MFS file, but it's not really because that would be pulling in too much of the stuff from the original simulator that allows us to configure these windows, you know, and do it really quick. Yeah, so here, we have a little yet another I'm sorry, it's not Jason, it's not anything familiar.  So where's T two info or here it is. No, it's the status panel. That's the one. This is terrible lighting. So suppose let's make the foreground color just wait. Alright, so hopefully that'll be more visible. And we can rebuild this little configuration file. It's a pearl script. Always is. And restart the thing. And we'll see what it looks like here. So this is the reasonably quick edit loop coming up. So there so now it's white. Hopefully that's a little bit more visible. We're gonna have to start making an awful lot of user interface decisions for visibility for camera recording ability going forward. So that's the status of the native engine. It's not nearly as much progress as I wanted, of course, but it's what we've got. And so the next update will be in two weeks. April 28, which will be right before the a life paper is due for real May one. And so for the next couple of weeks, I'm going to push on the native engine as best I can, but I have to switch back to the wall of science stuff for the paper and get that ready and get that out. So hopefully, folks are managing to stay sane managing to stay safe. Hopefully all this terrible disease hasn't come too close to you. We're still doing all right. Thanks for dropping in. We'll see you in two weeks.