1 >>: Welcome. Thank you for something. I'm happy to introduce Guang Gong to you today, Guang is a professor at the University of Waterloo. She's the director of the Communication Security Lab and also of the Center For Applied Cryptographic Research. Her research interests are broad. They span theory, information theory and combinatorics, all the way to very practical research, network security, communication security. Today, I think the topic is in the more practical side. So with that, I'll let you start. >> Guang Gong: Okay. Peter, for hosting. Thank you, Greg, for that introduction and thank you, So today, I would like to introduce some work we did in University of Waterloo so the title is securing RFID systems using lightweight stream cipher. So first I think I will spend some time giving introduction to RFID and how they restrict in the RFID systems. Then I will give the review for the lightweight cryptographic solution for the RFID security. Then we will introduce our own solutions. So we were using the stream cipher and show how we can provide the privacy, reserving authentication for the RFID systems. Then I will show you some related research activities which conducted the University of Waterloo, especially in the Communication Security Lab. So what is RFID? So it's shorthand for radio frequency identification. I believe the first people will introduce this, I met this guy in a conference, and he told me, our idea is to try to give ID to every items in the universe. So that's why -- so ef object will have the ID. But this ID will be using the radio frequency. Okay. So the currently, this RFID technology basically is one of the most promising technology to enable ubiquitous and the internet things computation. So possibility you already see some of those tags. However, currently, it's not RFID. If an RFID tag, that will cause a problem so that's why the research always should be a few years before those technologies really deploy the [indiscernible] department to store [indiscernible] which sell the really expensive things. And how it works. So basically, the RFID contains three components. So those 2 RFID tags so each of those tags consists of a micro chip attached to a radio antenna, then they will have the reader. So reader unit is a device which can emit the radio waves and the receive signals back from the tag. Then the communication between the reader and the database, so this is wired network. So unit will assume this part is secured. So the only part is wireless part. So which means the communication between the tag and the reader so this is only part we think is currently [indiscernible] didn't mention how they can secure those parts. However, this part will be secured and like the -- could implement the SSAO, secure socket [indiscernible] so this is [indiscernible] something. Okay. And for the characteristic of the RFID system, so I already mentioned so channel between the reader and the back-end database might be wired channels that are usually assumed to be secure. Also, both reader and back-end server can implement the crypto algorithm and the strong crypto protocols. So this is also the reason we can assume this link is secure. So the weakest lipping is the wireless link between the reader and the tag. So usually, the tag are constrained devices so the constrained every aspect of the computing and the communication and the storage. The reason is they ask so little. For example, some company, when they approach us, they said okay, we want you have some [indiscernible] for our RFID product and then they said our tag only sale for the ten cents. They only give you one cent for security design. Then I said no way. One cent for security design, we can do anything. So that's the reason, because the cost of the tag itself is so cheap. Then you also want the security. How they can distribute. So they distribute only for one cent. Yeah. So I believe that's the challenging part. Okay. So for the different RFID tags, they divide it into the three different tags. To one cannot -- I'm sorry. One can see the active tags and the semi-passive and the passive ones. So active tags, basically they have battery, so this one can treat it as a general wireless device. So they can initialize communication, but those are very expensive. The transmission range also very high. And the second class is the semi-passive tag. So for those tags, they have battery. However, this battery only use the [indiscernible] chip's circuit. For the communication, you have to par vest the power from the reader signal. 3 So those also expensive, but not as expensive as this one. And the third class, this is the class people were interested, because those are the passive tag. So those passive tag basically no battery inside. So if no battery, basically, limited maintain this for those devices because they don't have battery. So how can they do the computing and the communication? They harvest power from the signal sending from reader. So that's the, also the reason they are -- they cannot implement the strong crypto. So for these two classes, so their weak in computing, but they can be operated in a large range. So this class called the EPC tags. This is a class I will focus on. And there's a second class is they could perform intensive computation in near proximity, for example, [indiscernible] you're very close to the reader, just one centimeter. So this can grab the power strongly. So they even can do the elliptical cryptography for those, we call the near field communication. For example, currently, for the cell phone, like Google, Samsung implemented the Google -- the Google phone, and they have that near field communication mode. And the Blackberry also have this mode already implemented. But I think the iPhone didn't. The iPhone 5. >>: Windows Phone 8 does. >> Guang Gong: Yeah, Windows Phone 8 does have this near field mode, which means you can switch your phone as a reader, also switch your phone as your QWERTY call so you can do both. But those are very cheap and smaller, and the distance is shorter. So supposedly, you already see some of those product. >>: Do the EPC tags have any long-term storage? >> Guang Gong: Yes. No, long-term communication distance, because they can do maybe one meter to four meters. Like the [indiscernible] different prices, the reader could need to be far away and still read their product. Yeah. But [indiscernible] is one centimeter, close by. So this graph shows that if the active ones, they have battery for both communication and the computing. And for the semi-passive ones, they have battery, but those only for power up the tag. Cannot do the communication. So the powerful communication also harvest from the reader signal. And for the 4 passive one, do not have battery. So whatever they power up or do the communication, all get power from the signal sending from the reader. So this is a [indiscernible]. And for the radio frequency, then we look at this classification. For the low frequency tags, so the reader frequency range is 125 to 134 kilohertz. Reading range could be the ten centimeter. The application, like it's smart cards and ticketing and also those [indiscernible] keyless entry. So those are also we see this category. And the other two classes are high frequency tags now. So this class operating on the 13.56 megahertz, and this class operated on the 866 to 915 megahertz. And the distance also increased. >>: You get this number like seven meters, did someone write 20 feet? Because it's [indiscernible] precision. I'm sure if you were six meters, eight meters too, inverse square is inverse square. >> Guang Gong: Those take from standard so I don't know how they measured, but they specified in the different frequency range what is the distance could arrange. But I do not know if -- because those current -- all those in the reserve area, not really manufactured. But this type is already in the application. So all of the near field FC tags is already there. So this is the different RFID tags. So in this talk, I will focus on the EPC tag. So because this is the class currently in the standard that didn't specify any security. I think they are waiting for they got a problem, they come to rescue there. For the NFC tags. So this is the -- they have the capability to implement the public key, such as the elliptical public key. So this is also in the standard and in the NFC standard so they said we can do the public key. So like the [indiscernible] possible because right now your key is embedded. When you have AES they are so the key is embedded. Supposedly in the near term can be also shared key and using the public key approach. And for the EPC tag, so this is -- so they call this the EPC global class generation 2. Shorthand is the EPC Gen2. This was approved by ISO 18000-6C in July of 2006. However this is class people think possibly later on will be widely deployed. 5 So in this standard, what is specified? So it is specified four types of memory in the EPC tags. So first class is reserved memory. So those for store the password, which has 32 bit. However, those password here basically is for the kill the tag. For example, a tag not working well, they do not other people could -- other reader could read the information from this tag so they issue the command, kill this tag. So this is not really password we use for access computer or the servers. And the EPC memory -- the next category is EPC memory. So this contain 96-bit. So this part use the for identify the tag. However, this memory is locked. So you only can read out. You cannot write. So although they said you can have 96-bit. I'm sorry. And another is TID memory, and this is a 64-bit. store the information that can identify the tag. 64-bit. This is the part you for Also, this can be used, this User memory, this is optional memory. So most of tag I think in the market they do not have this one there yet. Also, for the communications and the EPC standard also specify the restricted number of the command, which is basic functionality of the RFID enabled application. So the command is select, this command is used by the reader to select a subset of tag population. And the second command is the inventory. So these commands are used to establish communications between different tags and the reader. And there's a third class command is access control command. So those you can have the five different things. So this is request the tag to return 16-bit random number. So this is one restriction. Any communication between reader and the tag is 16-bit. So that's why if you want to use AES, then you have to run AES once. You get 128 bit. Then you need to throw away others. If you use ECC, for example, you field smallest one, 160 bit. Then you get the number is 160 bit, but you only can use 16. So this is what restriction they have there. Of course, you can read the memory the tag, you can write to the memory on the tag, and the kill. This is what the security function this was. The security means this kill command. So you can, no longer can read the tag so they call this a kill. And this is permanently disable the tag. And the lock is lock the memory. So that's two function they call the security 6 function in the RFID tag. >>: So you could lock and you could also kill the tag. So does request RN respond the same ran document number every time? >> Guang Gong: No, different, which means communications only each time only transmit 16 bits. That's it. That's the restriction. And the attacks, I think our general attack which can apply to wireless communication also apply to her. And here also has some special concern. For example, RFID technology raises two main privacy concern for users. One is the clandestine, those physical tracking of tags and the inventory of tags, okay. And also behavior readers can harvest the information from the well-behaved RFID tags. So those are -- can read the privacy. So because between the communication, the communication between RFID tag and the RFID reader is RFID tag -- RFID reader basically is sending the command continuously. So the tag will automatically respond to the interrogation from the reader without alerting the owner. So basically, you do not know your device is replying, okay. So that's the part. So the person carrying the RFID tag is prone to clandestine physical tracking. So this is the, I think, from this behavior, the adversary equipped with RFID readers can effectively trace a person carrying a tagged item by linking different sightings of the same RFID tag. For example, if like in the Macy's department store, then if you buy something and someone want to tracking you, then they can [indiscernible] the reader. So currently, you can spend possibly I think 200 U.S. dollar that you can build the reader, then they can read what you purchased. So that, I think that's something need to be [indiscernible] someone know your behavior, your spending behavior, they could. Also, cost not that high. I think five years ago, if someone wants to build a reader, it costs more than $2,000. But now, only $200 you can build one. And I think here has a store called the Fry's, you go there, you only need to spend about $200. >>: When it comes to carrying a tag, if I know it is RFID, I'm not able to break it with a hammer. But what I do worry about is like mail order. There's a package on my door step and every single person can figure out something about what I'm buying without even getting too near my house. 7 >> Guang Gong: >>: No, no. You said seven meters. >> Guang Gong: That's a sidewalk. Yeah, they can just stand on your sidewalk. >>: They can stand there and say oh, this guy is buying pornographic magazines. >> Guang Gong: Yeah, see exactly. So that's with the RFID technology [indiscernible] deployed, I think the privacy issue first they need to solve. Otherwise, people will get check anywhere. If someone want to know what you buy or your life behavior, then they can. Also, the cost is so little for those [indiscernible], right. $200 is just nothing for their spending, yeah. Also, those industry [indiscernible] in supply chain applications, so individually tagged objects in stores allow competitors to learn about the stock turnover rates, like those inventory. So those are not in our paper, but these are more serious. Also, those are [indiscernible] so this is also another. And a second problem is authentication. So authentication is focused on the problem of well-behaved readers receiving information from the misbehaving tags, like those counterfeit tags. So, for example, I think I believe this problem is more serious in China. If some brand is very good and [indiscernible] that brand. And then they just forge the tag. So this is how you can check your tag is [indiscernible] then definitely the crypto problem they you do the authentication to check this tag is [indiscernible] or not. So this is basic RFID. For example, for the EPC tag, are vulnerable to simple counterfeiting attack or cloning attacks. So the attacker can skim the electronic product code from the target tag and then program it to a counterfeit tag. So this is much easier. Now, before that, they made some -the tag that you need [indiscernible] to do many things. But if it is electronically, then you just need to grab the information that you can produce and not new ones. Okay. So authentication, basically is important issue when the RFID tags are used for access control or as security devices to detect counterfeit products such as medicines, electronics accessories, and high valued items. 8 So this is the, I think in general, if you erased this problem, then people think you can implement the crypto. So the main problem is those very cheap RFID tags, they cannot implement the crypto. So for the communication attack, as I mentioned, any attack which apply to the wireless communications also apply to her. So like the spoofing and the replay, eavesdropping and jamming and the traffic analysis. So those is general for any wireless twice. Because as communication between tag and reader is wireless parts so all of those attack apply to here. And the countermeasures. So this is the [indiscernible] in the [indiscernible] because they have those countermeasures so they think that we'll be okay. So physical protection, so they could some distance measurement. For example, if that signal comes from the distance not [indiscernible], you could suspect has some misbehaved reader is trying to read the information. Or called the Faraday cage approach, which means you put the tag into some cage. But I think those not for the signaling applications. Those are only applicable for the government or miniature applications. Then the second function is deactivation. So you could have the killing operator, sleeping operator, or hash lock. Question? >>: You mentioned government. But in [indiscernible] driver's license emotional state, there's a Faraday cage. So. Can't read it unless you would take it out. >> Guang Gong: Also, I think the password, like the U.S. password, then they have the RFID. That one does not have the cage implemented. Yeah, uh-huh. Faraday cage implemented. Or could be renaming. And user-oriented so that they will think that was crypto-based approaches. So this is what I will introduce. Or using the watch dog tag or RFID guardian. So those are similar approaches Faraday cage. And for the jamming. So jamming is a currently is a very serious attack. So basically, not much good measured. If you want the blocking those jamming signal, then you have to introduce another type of communication called the spread spectrum communication. But if you introduce the spread spectrum communication, then the tag cannot do this. So that's why there's not much solution here yet. 9 And the entity authentication, so those basically should be using cryptographic approach. So that I will show you later [indiscernible]. So for the identification authentication, so the identification protocol is a standard they combined. They call the privacy-preserving authentication. But that's divided into two steps. First is to the identification. So the identification protocol allows the reader to obtain the identity of a queried tag but no proof is required. So that's -- so you just query the tag and the tag reply with his ID. So this is currently the standard. No security at all. So basically, once the reader got the queried once, then everyone for the tag [indiscernible] get own IDs. So [indiscernible] whatever she want to do, he can use those information of the ID. So currently, like those application, localization and the stock management so those need identification information. And the authentication, so this is the same as a general communications, which allow the reader to be convinced of the identity of the queried data or queried tag. On the other hand, also allow tag to be convinced of the identity of the querying reader. So usually, if that two satisfied, that's a mutual authentication. So in this sense, if there's a symmetric key approach, then they both should care [indiscernible]. So this is also the case for the symmetric-key based approach. So we know for the authentication from the cryptographic approach, you use [indiscernible], use a symmetric key approach. Then both parties should share the key or use a public key, using the digital signature to create the response, okay. So that's your authenticating protocol. So for example, you can do these access control, E-document, and anti-clone and anti-counterfeiting. So those are currently authentication. Okay. So for the performance requirements, you need low computational costs. And also the low communication cost and the low storage requirement, and the scaleability. So back end database should be able to efficiently identify an individual tag even though the tag population is huge. So all of those is restricted. So that's the reason in the standard they didn't want to specify the secretive part, because everything is constrained. The limited power and the limited bandwidth, and the memory also extremely constrained. 10 And for the cryptographic solutions, what is a zip goal for implementing the security mechanisms on resource-constrained smart devices like RFID tags. So this is what we need to consider, so three performance attributes. The size of the implementation as measured by gate equivalents, the peak and average power consumption, the time required to complete a computation. So what is available on an RFID tag? So this is depends on the security level, intended market, cost of fabrication and deployment. So usually, then they will think around 2,000 gate equivalents. That's the marketing you could do. If your algorithm cannot be implemented within 2,000 equivalent gets, so basically, those pack cannot handle those crypto. So this is what we were thinking. Anything designed should be, we think, this range. And for the crypto primitives, symmetric-key approach, block cipher, stream cipher, hash and the MAC. And the public key, you also have public key encryption, but usually it's [indiscernible]. Most [indiscernible] is deck tal signature nature and the identification schemes. However, classical crypto primitives designed for the full-fledged computers my not be suited for RFID tags, especially as an EPC classes. So for the EPC class, it definitely not possible. Sometimes you read some paper, that said is for RFID. But I believe [indiscernible] is nor the NFC. So [indiscernible] EPC basically is not possible for the public key. So [indiscernible] is a symmetric key. Symmetric key, so the lightweight cryptographic primitives. So which can perform strong authentication and encryption for ultra low-power RFID. So recently, four or five years, many, many work already conducted in this area, although some [indiscernible] it's not lightweight. However, they're not all lightweight. But at least people know you have to have lightweight for RFID application, at least this is the signal everyone realize. You cannot use the standard crypto primitives here. So the symmetric key approach is the present. So it's the block cipher, which has a 64-bit block. And they also implemented the DES and the KATAN, also KATAN is two classes of the block cipher and the AES also implemented in the optimization area. So [indiscernible] you know, you perform 16 S boxes, but each of them are identical. So you only need to implement one inverse function, which is the eight-bit finite field, the GF-228. And the stream cipher, that's the WG families introduce, which is we propose 11 the several years before and the Grain and the Trivium and the Mickey. So this is the E-stream, he call the stream cipher standard in tools on the fly. Finally, they have three which they call the, I think that's the top three candidates. And the Hummingbird -- question? >>: [indiscernible]. >> Guang Gong: No, because this is symmetrical. Yeah, uh-huh. So then Hummingbird is a combined design. So it's between the block cipher and the stream cipher. And the hash, so it present based or AES-based. Basically, the standard hash function [indiscernible] classes is not suitable. Because they are hardware implementation [indiscernible]. And so those are the initial attempts for using lightweight identification schemes based on the public key approach. For the general case, it's, as I mentioned, not suitable. And reason is hardware implementation of public key schemes usually requires many [indiscernible]. However, there's two types when they implement, they think possibly is good. So it's one uses a variation of the Rabin system, or called SQUASH that Shamir proposed, and the other is called WIPR. So this is the Oren proposed. And also, another group, [indiscernible] proposes a token-based approach using the elliptical curve. Okay. So did -- so this is public key approach, although those are much bigger than what the standard requested anyway. They are in the research, they have those. And I think I will just roughly introduce this. So the privacy-preserving RFID authentication protocols can use a block cipher public key and also HB-family. So you look at how -- if that's using AES as I mentioned, AES is 128-bit. But this EPC tag only allow you accepted the 16 bit. So how do they adjust to the pipeline? So for example, you parallel reading multiple tags, then you schedule your interleaving the transmission time for each of the tag. So you see what is the [indiscernible] here, because you have to have scheduling here now, how you read it to read, how you do the transmission, because they try to come out the timing. 12 And the AES is very slow. This is best implementation, 1032 cycles per block. Because they have 28 bit after computation, one to two years or 128 bit. So that's why they're using the interleaving authentication method here. So this one is based on the ECC, and what they try to play here is trying to use the exponents has very small [indiscernible] weight. For example, timing weight two, you just do two -- one multiplication. So that's what they play here. Maybe the reader do more computation. I think this idea is also used in the wireless communications, uses in mobile phone to a very small computation and the [indiscernible] large computation. So this is in the same line. Okay. So I will skip this one. Then I will introduce you the stream cipher WG family. Also, the WG -- the stream cipher based privacy reserving authentication. So the stream cipher will be different now. So I will show you. So for the WG stream cipher family, basically the synchronous stream cipher. Based on the Welch-Gong transformation sequences, which is well studied in sequence design for communications. So those sequences basically when I was in the University of Southern California, I think more than 16 years ago, then we found those sequences, but we couldn't prove that. It end up with two people, Stapleton, during that time -- he passed away about four years ago, right. But during then, he was working with German security agency. Another guy is [indiscernible], national security agency of U.S. government. So the two proved this -- those sequences has a two-level [indiscernible]. We only found by computer search. We can't prove. But two proved that. So those key stream possesses a cryptographic properties of WG sequences. And later on, we figure out we could also output multiple bit instead of one bit. So that's another class is multiple output WG. So the stream cipher basically, based on what argument Shannon did in 1949. Shannon said that one-time pad is unbreakable. What is one-time pad? Which means every time you do the encryption, you will use different key stream than that one-time pad. And he proved, he said it's unbreakable, if you can do this. Okay. Be then in general, in the design of the stream cipher, then you divide it into the two phases. One, at first phase is the key initialization algorithm. So then for the key initialization algorithm, you will have a two 13 input. One is IV, another is the key. Then you run multiple times. So the goal of the KIA is to scramble key bits with the IV in order to get a bit stream as random as possible. Then after that, you put this as an internal state of the [indiscernible] random sequence generating, this is where outer bit. So this bit exclusive always a message bet, you get ciphertext bit. So for the decryption, you do the same, but the [indiscernible] will be exclusive always ciphertext and you recovered your message bit. So this is the stream cipher mode. And what is the function used in the WG stream cipher family? So basically, we need the linear feedback shift register. So those are LFSR sequences is not work on the binary field is that is in the extension field. So usually, this extension field is the power of the two. So we take the polynomial, which is a primitive polynomial over this extension field, then we generate the linear recursive sequences called the AT. So it's generally [indiscernible] recursive relation. So the sequence generated by primitive polynomial has a [indiscernible] which is a maximum Q to the N minus one. So this is -- those are LFSR. Then what is WG permutation and the WG transform? So we learn that the HX has the five term, then WG permutation, we basically do the transform X plus one. Then you get this is a permutation. Then you add in the trees. So here is M bit so you map to one bit we call the WG transform. So this four exponents looks like this. It's a little bit magic. Basically, we found by computer search. Then later on, [indiscernible] proved that. Okay. So this is we called this one is the Welch-Gong transformation from the GF 2 to the M to GF 2 and this one is the permutation. Then we can generate the two sequences when we evaluate WG transform over a primitive element. Then we get the two sequences. And those sequences has ideal two-level auto correlation, which means they are -- so ideal two-level auto correlation. What is correlation, is you measure the similarity between the sequences and its shift [indiscernible]. So idea of two level is whatever which shift will have the same correlation 14 value, which means they are not giving out any information. Okay. So this is the general WG generator. So you have LFSR over extension field, then you apply the WG transform at last stage. If that's the initialization phase, then this is feedback. After finish the initialization, then you output to the key stream. So this is the general role block for the WG general reader, and the M the is the size for each entry. L is how many [indiscernible] block, okay. So then this is how you corporate in K initialization phase and this is where we feedback. If not in the running phase, then all output from WG function not feedback. So this is the architecture of the WG. And the WG stream cipher has all of the design randomness property. For example, we can show the period is two to the N minus one. So [indiscernible] is M times L and also the K stream bit is [indiscernible] has a two-level auto correlation function. And if you look at the T-tuple, which means the T bit together and this is the appears the [indiscernible]. So the T [indiscernible]. And the linear span, what's the linear span? It's you can, using the [indiscernible] algorithm, then you can, given the K stream [indiscernible], you can find the LFSR, which generate this key stream. So what's that to the [indiscernible] of the LFSR, designed as a linear span. So this linear span is exponentially increased with M. Also can be determined exactly. And also the cryptographic properties of WG transform has all of those good properties. It is one-order resilient and the algebraic category is one third and the nonlinearity can be determined and the additive correlation basically prevent the differential crypto analysis, because you look at the correlation this and this. Then this is also very good. So that's why WG stream cipher process all of the desired randomly property. And this is the hardware implementation amp texture. I think I will skip. for the feature of the WG stream cipher. It has guaranteed key stream randomness properties and also secure against time memory data trade-off attacks, algebraic correlation attacks, also many new attacks like the And 15 [indiscernible] attack. We also gave analysis. And the most importantly, can be implemented in hardware with low complexity for some parameters. Not all, but we can pick up some. For example, as an instance, I think I was [indiscernible] once so this is what is a good correlation property which WG have. Can provide certain countermeasure for different attacks. It is tamper resistant and side channel attacks, those can be provided by the good correlation property of the WG. So I think I will skip this one. Now, I will give you the example. >>: [indiscernible] is coming in and sorting in bit pieces. problem algorithm matter? So why is the >> Guang Gong: Yes, because for example, if correlation is good, then your poor spectrum is flat. So you do not know your device is doing things or not. So that's why you cannot temper, because you do not realize they are doing anything or not, yeah, in this sense. So they this is the WG-8. So which we use 80-bit key and the 80-bit initial vector. So the LFSR has 20 stages, and the finite field is F 28. So then this is architecture. 28 stages over GF 228. Then this is WG 8 here, but we add in one more function, which is the, we call the decimation is to the power of the X. So this is to the power 19. Then those decimation identical for general WG. Then so for the initialization, basically, we need feedback from here before the trees. And for the [indiscernible] by adding the trees function, okay. So this is WG function for the parameter 8 case. They for this, what is the period. Then we get to the period 2 to 160 minus one, and the key stream is balanced, and because the [indiscernible] all properties of the WG family. The linear span is about 2 to 33.32. So what's that mean? That you need to know this many bits to reconstruct rest of the bit. However, this is RFID application. You never have this many bit to be collected. They we also did the cryptanalysis for all known crypto attacks. Algebraic attack, correlation attack, differential attack, cube attack, and the 16 distinguishing attack, the discrete Fourier transform attack and the time memory trade-off attack. So we did the solver analysis for different attacks for WG-8. Those part we have to do because the parameter is small now. inherited the general WG stream cipher. So those cannot Then this is our implementation. So that's also the comparisons. I think at first we implemented the WG server and so today I give you WG-8. Because [indiscernible] we implemented as a [indiscernible] which use a different measure. So year, we did a much, much better. So those performance for the throughput generally is 2 to 15 times higher than the [indiscernible] crypto ciphers and our energy consumption is 2 to 220 times smaller. So for the WG-8 implementation, okay. So if you're interested, so we have the full paper in the NSERC technical report. So that's on the website. You can access that. Okay. And then we can use it as privacy preserving authentication now. So how we do this as a stream server now. So the reader first get the 80-bit IV. Or could be the random number. Then this tag has SSID. Then we write as TI. And the reader query the tag and he sends this information and the tag will choose an 80-bit IV 2 and the C1 uses the TI plus IV2. So IV2 is [indiscernible] although it's not the key stream. So now we solve, this is the IV. This is as a key into the WG stream cipher. Then we [indiscernible] WG stream cipher and then we get C2. So C2 because WG output one pit. In the RFID application, you need 16 bit, so that's why we get 16 bit. So this is you can get as many bit as you wish block cipher. Then I put 128 bit and then you have to throw out 94 bit because you only need 16 bit, okay. So now the privacy not know which tag Once he get match, convinced this tag preserving, what's that mean? So the reader basically does responds. So he will search for the key. So he search. he knows his key belongs to this tag. Then he will be has been identified, okay. Then the following -- then it's a mutual authentication, then you will continue to run it. Okay. So then they continue to do the authentication so because this is a stream cipher, so we keep the internal state, not change it. Not every time 17 you are running the initialization phase. So ef time you continue your process, and get your 16-bit output. So then your tag will be authenticated. Also, the reader will be authenticated if you do the mutual authentication. Then the last step, the command execution. So this is also specified in the [indiscernible] then we also continue to run the WG stream cipher, then the -all of the command can be secure. So we have implemented the practical and the four bit and the eight bit microprocessors, and the database, we use the laptop. In fact, this is a very old one. And for both WG-7 and the WG-8. And the protocol is meet the time constraint for EPC tag. And for the server, basically could be much faster, because we used this Thinkpad, because my student, because he just use his own laptop as a server. So we execute our protocol, could be executed in less than three millisecond when the tag population is 104, and in the standard request, you can execute for the 103 tags per second. But we have that three minute, we can authenticate 104 tags. So then we also implemented using the tag, which is provided by the Intel. Also, the reader we're using a software defined radio. So this is a tag, because the commercial tag cannot be -- cannot do the programming. So this is [indiscernible] research we have those testing tag. So they provided to us. This is software-defined radio so we can easily change the frequencies. So this is a [indiscernible] reader so that's what our timing regards there. So this is -- I will conclude what I introduced. So this is RFID is one of the most promising technologies in the field of ubiquitous and pervasive computing. And the EPC standard has put forward the challenge for designing security mechanisms for RFID systems. We will synching the lightweight crypto algorithm and protocol are crucial for the RFID security. And the WG family is guaranteed randomness property and provides a wide spectrum of possible levels of trade-off between security and area and optimality in hardware implementation. This is references so that the WG material, I took from those papers. All published. You can download from our website. And we also did work on the RFID security not using crypto, but also using the physical near security to secure the RFID [indiscernible] work using the frequency [indiscernible] and we 18 also found some new attack we use the active eavesdropping, not passive. active. It's So in order to eavesdrop, you first need to send out something. So that's why we called it active. So those are physically approach, not the crypto approach. And also, so that's our research supported by NSERC, also many companies, and also this is different research activities conducted in the Communications Security Lab so this is part of the Center of Applied Cryptographic Research in Waterloo. I think I will stop here now. I don't know how many minutes I should give the talk. But thank you. Any questions? >>: So can the tags generate random numbers? >> Guang Gong: Right now, no. Right now, so like we did one work, that showed a random number generator for the EPC tag. So they cannot. They cannot currently. But a lot of research happen here is that you use [indiscernible] random generator, but you do not have. Because [indiscernible] random number generator will come from the [indiscernible] physically [indiscernible] function. But that one is very, very expensive. So EPC tag cannot do that. But how you can get the random [indiscernible], I believe that's very challenging. >>: So does this cost one cent? >> Guang Gong: Much more. Much more. So that's why I told them no, I cannot do. You schedule basically ten percent of resource for security I believe is too little. Too little. Ten percent of resource. Should have at least 20 percent. So here we're talking about the entire system now. Your entire system cost is one, they should give the security 20 percent. Otherwise, you cannot do. That's what I think. I don't know what you're thinking. You're thinking you can do, ten percent of resource? >>: Are there any other questions? Let's thank Guang.