Elliptic Curve Cryptography Overview

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey everybody john wagon here with dev central and we are coming to you today with a lightboard lesson video and in this week's edition of lightboard lesson we're going to talk about elliptic curve cryptography so I'm just going to write ECC up here stands for elliptic curve cryptography and so a lot of people are you know talking about elliptic curve cryptography what is it how does it work should I implement it should I not whatever and so we wanted to take a couple minutes today to talk about this thing elliptic curve cryptography has actually been around since like the mid 1980s so it's been around for a while but it hasn't really been implemented or used extensively at least until just recently and so anyway it's it's a public key cryptosystem type of cryptography whereby and in public key cryptosystems you have a private key and a public key and the private key you can encrypt data with the the private key or the public key actually then you decrypt with the other one and so so there's this notion of public and private keys and elliptic curve cryptography is one of those and so when we talk about public key cryptography I want to write this up here we talk about the notion of a trapdoor function and this is the math function that kind of underpins the public key cryptosystems and in a trapdoor function kind of the basics behind it is that you can take a given value I'll call it a and use the trapdoor function to get to another value and I'll call it B and in one way going one way you can do that very very easily but then if you start with the other value say start with B and then you want to get back to a then it's very very difficult to do that so I'll put an x over that I'll put a little check mark by that guy alright so again trapdoor function it's very easy to go one direction it's very difficult to go the other direction and so using that and in and and using that in the in the sense of a public key cryptosystem you need some sort of a mathematical function mathematical you know foundation whereby you have a good trapdoor function to use for that public key cryptosystem one that's used extensively today is RSA and it's and it's based on prime number factorization where you take two random prime numbers you multiply them together you get this really big prime number and then the issue is multiplying those together is very easy which that's kind of that a2b level but then to factor those out coming back from B to a is very difficult that's why that's the that's kind of the really basic fund fundamentals of RSA and why it works so well today one one quick thing that I'll put on the elliptic curve and RSA I'll put ECC versus RSA right here and so with a with a key size and in elliptic curve cryptography if I were going to put let's say we talk about a 256 bit key size and elliptic curve cryptography in order to achieve that same level of security using an RSA key size you would need a 3072 bit key and so you can start to see that this is one of the one of the reasons that elliptic curve is is so much you know in demand today based on you know it's comparison to RSA the key sizes are much much smaller but you get the same level of security if we bump this up to 384 bits in ECC you'd have to go all the way up to 76 80 and RSA so you can see that as ECC you know keeps this small number of bits RSA he's got to get like huge in order to achieve the same level security this right here I'll put I'll put a little TS by that 384 the reason I put that is that's top secret level information in the US government NSA and the other government agencies have said that elliptic curve 384 bit keys are strong enough to protect top secret level information and so let's say you know there's no way you would get that same level protection with an RSA key at 384 bits it's just not going to happen so anyway alright so that's kind of ECC vs RSA but again what is ECC kind of how does it work you know what's the what's the magic behind the curtain as it were so what I'm going to do is take you through kind of a bit of an example of elliptic curve cryptography and I'm going to draw a math graph here kind of a math function where this is the x axis and this is the y axis all righty so you have this this is your normal you know you remember back to algebra or whatever and you're doing your math functions and so we're going to draw an elliptic curve on this graph and the elliptic curve has a few interesting characteristics and I'm going to do my best to draw an awesome one right here so we're going to come like this and that that's not too bad okay a few things that the elliptic curve has is that it is symmetric about the x-axis so here's the x-axis it looks the same on top and it's like a mirror image on top of bottom symmetric about the x-axis the other thing is that if you draw a straight line through this curve it will intersect the curve and no more than three points and so if I were to take a point right here a and now we're going to draw a line through it it would hit it in another couple of points and so let me go ahead and do that so if I were to draw this line let's say like that then it's going to intersect it right here let's call that point B and then you guessed it that point is going to be C all righty so an elliptic curve cryptography what happens is you have a curve that's defined by a math function and then you have a starting point a so I'll put a and then you have this note or this this idea of what what's called a dot function so I'll put dot the dot function right there okay so a dot something is going to yield a certain value so if you dot a with itself let's say I'm down today with itself and it yielded this you essentially you draw the straight line through the curve and it's going to intersect in these two points so if I said a dot B then that would yield C let's say so if I said a dot B then it yields C and then what you can do is if you want to do that dot notation again then you can drop the value from C because of the symmetric property of this curve about the x-axis you can drop it down to this it's the opposite value on the x-axis see and then you can draw a over to that point like that and so let's say that this is a this is a value D and then you notice that it intersected again right here we'll call that value E and then what you can do at that point you can dot it again and it's not a very good E okay there's e so you can dot it again and you can bring that up and now it's going to intersect it right there then you can do you can start back at a you can go through that point and then this thing just keeps going over and over and you can dot it a certain number of times and I'll say I'll say that will dot it in number of times so a dot B or a dot itself actually in number of times it's going to yield let's say a value I'll call it Z all righty another thing I want to point out is that you have the concept of what we'll call a max value out here and a max value on the x-axis so I'll just put this max line out here and if you can imagine as you do this dot function of this dot notation over and over and over some of these values that follow these on the curve may go like way out here on the x-axis like way out you know crazy huge numbers and so the idea is you can set a max and if you and if the value falls beyond the max as you're doing this dot notation then you essentially take the value that would go beyond the max you bring it back to the beginning and you come over that far and so the bottom line is you keep everything inside the max value and so the max value when you start talking about private and public keys in in this public key cryptosystem the max value is actually the key size some will say key size equals max okay so essentially what that does is it says you know as you as you increase the key size and and an elliptic curve Krypton you have increased the amount of space that you're able to work with now on this curve you increase the amount of values that would be able to be used as points on this curve so again as the max goes out then now you've got more points to work with it becomes more difficult to you know to undo this thing and try to crack whole thing but of course as max goes out you've got you've got one more numbers to work with so you've got to crunch through all those numbers as well so there's a give-and-take all right the other thing I was going to mention is the private key so I'll put private over here the private key and an elliptic curve cryptography crypto system you have a you have a function that's defined or you have a curve I'm sorry it's defined by a math function you have a starting point a you have an ending point Z and then you're going to dot this thing with itself a secret number of times so an N number of times and as it turns out it's kind of it's kind of interesting because if if you are given the actual curve itself the function that defines this curve and if you're given the starting point as well as the end point on the curve the Z point as it turns out it's extremely difficult to find out this number for in the the actual number of times that you've dotted the function with itself to get to that point and so that that provides the basis for this trapdoor function to be able to say hey I can give you out public and you know public information to everybody the starting point the the actual function that defines the graph or the curve but I'm going to keep some stuff private and that is this n number of times that this function is dotted with itself okay so that's so that's kind of the the basics behind it of course elliptic curve cryptography can get extremely complicated there are of course more details to it than all of that but this gives you kind of a kind of a basic understanding of what's going on sort of behind the curtain of elliptic key or elliptic curve cryptography and so so anyway as far as the big IP goes really quick we support going back to that RSA versus elliptic curve you know bit you know key size the the big IP supports both 256 and 384 size keys so get out there configure your big IP offer up that elliptic curve cryptography to those clients I'm we'll appreciate it because they got a lot less to deal with in terms of crypto you know functions that they have to compute and all that so so thanks for tuning in today hopefully you've learned a couple things about elliptic curve cryptography and we'll see you guys out there in the community
Info
Channel: F5 DevCentral
Views: 394,708
Rating: undefined out of 5
Keywords: f5, devcentral, Elliptic Curve Cryptography, Transport Layer Security (Protocol)
Id: dCvB-mhkT0w
Channel Id: undefined
Length: 11min 29sec (689 seconds)
Published: Wed Oct 14 2015
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.