Slides

330 views

Published on

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
330
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Steve Bono1 Matthew Green1 Adam Stubblefield1 Avi Rubin1 1 The Johns Hopkins University Information Security Institute Baltimore, MD 21211, USA Ari Juels2 Michael Szydlo2 2 RSA Laboratories Bedford, MA 01730, USA Original Images by Paul Sagona
  • First I’m going to give you an introduction, discussing a little about RFID: types, give a brief overview of this project and the authors attack strategy to tackle this problem Talk about some related work, mainly dealing with reverse engineering and key cracking examples. Significance and implications to discuss the implications of performing and presenting such results, as wells as providing example scenarios where events like this could take place. Then I’ll go into their Reverse engineering procedure, lots of details I will also discuss their key cracking methods And lastly I’ll discuss their analysis and simulation, and present their conclusion.
  • This research has had a broad impact on this technology When people refer to the scrutiny of this some RFID technology, they refer to this paper. Very similar to the harvard group that cracked a voting machine. (and showed how security by obscurity failed again)
  • One of the top forms of RFID that is receiving a lot of scrutiny are EPCs. Walmart is a huge player, requiring in 2005 that its top 100 vendors to include EPC on products. “… difficulties implementing RFID systems. In practice, the successful read rates currently run only 80%, due to radio wave attenuation caused by the products and packaging. In time it is expected that even small companies will be able to place RFID tags on their outbound shipments.” http://en.wikipedia.org/wiki/RFID
  • Alien Technology provides UHF Radio Frequency Identification (RFID) products and services to customers in retail, consumer goods, manufacturing, defense, transportation and logistics, pharmaceuticals and other industries. Organizations use Alien's RFID products and services to improve the effectiveness, efficiency and security of their supply chains, logistics and asset tracking operations. Alien's products include RFID tags, RFID readers and related training and professional services. Alien's patented Fluidic Self Assembly (FSA) technology and related proprietary manufacturing processes are designed to enable the manufacture of high volume, low cost RFID tags. Alien was founded in l994. Alien’s facilities include: its corporate headquarters in Morgan Hill, CA; RFID tag manufacturing facility in Fargo, ND; the Alien RFID Solutions Center in the Dayton, Ohio area, Quatrotec’s offices at the San Francisco International Airport (SFO); and its sales offices in the US, Europe and Asia. Alien is a member of EPCGlobal.
  • The main form of wireless RFID device that the authors focus on is the Digital Signal Transponder More than 150 million vehicle immobilizer keys shipped with many current automobiles, including e.g. 2005 model Fords [7], use Texas Instruments low-frequency RFID transponders RFID transponder embedded in the ignition key as a condition of enabling the fuel-injection system of the vehicle. The devices have been credited with significant reductions in auto theft rates, as much as 90% DSTs are used in the Exxon- Mobil SpeedPassTM system, with more than seven million cryptographically-enabled keychain tags accepted at 10,000 locations worldwide [2]. It was originally developed by Verifone . As of 2004 , more than seven million individuals possess Speedpass tags, which can be used at approximately 10,000 Exxon , Mobil and Esso gas stations worldwide. At one point, Speedpass was deployed experimentally in fast-food restaurants and supermarkets in select markets. McDonald's alone deployed Speedpass in over 400 Chicagoland restaurants. Additionally, Stop & Shop grocery chain tested Speedpass at their Boston area stores and removed the units in early 2005. The test was deemed a failure and McDonald's removed the scanners from all their restaurants in mid 2004 . Speedpass has also been previously available through a Speedpass Car Tag and Speedpass-enabled Timex watch. [2] [2]. http://en.wikipedia.org/wiki/Exxon-Mobil_Speedpass
  • “ It is thus the secrecy of the key that ultimately protects the DST against cloning and simulation”
  • Authors Successfully attacked the Texas Instruments DST system. able to recover the secret cryptographic key from a target DST device after harvesting just two challenge-response pairs. A field-programmable gate array is a semiconductor device containing programmable logic components called "logic blocks", and programmable interconnects http://en.wikipedia.org/wiki/Field-programmable_gate_array Chosen-response attack will appear in future work Hellman. A cryptanalytic time-memory trade-off. What does this mean for DTS’s????
  • Essentially hot-wiring the car. Purpose: To show again, that “security by obscurity” is ineffective for large-scale cryptographic systems. And to provide security community with guidance for requirements for secure RFID systems. Not to bring down the entire speedpass netowrk.
  • Hellman. A cryptanalytic time-memory trade-off. 12] HELLMAN, M. A cryptanalytic time-memory trade-off. IEEE Transactions on Information Theory 26, 4 (July 1980), 410–416.
  • machine without ever having physical access to one [13]. There are a number of well known contemporary examples of the reverse-engineering of proprietary cryptographic algorithms. For example, the RC4 cipher, formerly protected as a trade secret by RSA Data Security Inc., was publicly leaked in 1994 as the result of what was believed to be reverse-engineering of software implementations [4]. The A5/1 and A5/2 ciphers, employed for confidentiality in GSM phones, were likewise publicly disclosed as a result of reverse engineering. The exact method of reverse-engineering has not been disclosed, although the source was purportedly “an actual GSM phone” [6]. There are also numerous
  • network has on-line fraud detection mechanisms loosely analogous to those employed for traditional credit-card transaction processing. Thus an attacker that simulates a target DST cannot do so with complete impunity; suspicious usage patterns may result in flagging and disabling of a SpeedPassTM device in the network.
  • Up to 90% decrease. If criminals get there hands on this that’ll change significantly Over 1 mill boosts a year.
  • From the standpoint of an attacker, active scanning has the advantage of permitting a chosen-challenge attack. Hence this type of attack permits the use of precomputed Hellman tables as touched on above. In principle, therefore, it would be possible for an attacker with appropriate engineering expertise to construct a completely self-contained cloning device about the size of an Apple iPod. When passed in close proximity to a target DST, this device would harvest two chosen-challenge transcripts, perform a lookup in an on-board set of precomputed Hellman tables in the course of a minute or so, and then simulate the target DST. We estimate that the cost of constructing such a device would be on the order of several hundred dollars.
  • From the standpoint of an attacker, active scanning has the advantage of permitting a chosen-challenge attack. Hence this type of attack permits the use of precomputed Hellman tables as touched on above. In principle, therefore, it would be possible for an attacker with appropriate engineering expertise to construct a completely self-contained cloning device about the size of an Apple iPod. When passed in close proximity to a target DST, this device would harvest two chosen-challenge transcripts, perform a lookup in an on-board set of precomputed Hellman tables in the course of a minute or so, and then simulate the target DST. We estimate that the cost of constructing such a device would be on the order of several hundred dollars. It is worth noting purported U.S. Department of Homeland Security reports, however, of successful eavesdropping of this kind on 13.56 Mhz tags at a distance of some tens of feet [24]. The DST, as we explain below, operates at 134 kHz. Signals at this considerably lower frequency penetrate obstacles more effectively, which may facilitate eavesdropping. On the other hand, larger antennas are required for effective signal interception. Lower freq have a longer wavelength
  • Why not just steal the keys then?
  • inconvenient, and would probably prove an unworkable imposition on most users
  • The only substantive technical information we were able to locate on DST40 was a rough schematic available in a presentation by Dr. Ulrich Kaiser, which was published on the Internet [14], and in a published conference paper [11] coauthored by Dr. Kaiser with Texas Instruments employees. We show the schematic here in Figure 1
  • The full collection of units operating in a single round (operating on a single set of inputs with no feed back) is referred to as F. F has three logical layers: First layer: represented as f 1 to f 16 ( f -boxes) in the figure, these 16 functional units take a small number of bits from the key reg. and the challenge reg. Each f -box either takes 3 key bits and 2 challenge bits or 2 key bits and 3 challenge bits Two special f -boxes take only 2 bits from each reg. as an input The second layer is represented as f 17 to f 20 , referred to as g -boxes, which are four functional units that takes the outputs of set of four f -boxes as inputs The authors refer to these units as a g -box The third layer is a single unit, f 21 , in which takes in the outputs of the g -boxes This last unit, the h -box, returns the output of the full function F
  • In other words, there is no indication of which bits in the challenge and key registers are input to which fboxes
  • Obtaining a Single-Round Output From the figure, if a string of ‘0’ bits were entered, they would remain unchanged in the key register throughout the execution The authors used the string of ‘0’ bits for their starting experiments, since it is possible to see each step of the algorithm independent of the round
  • See paper for a little more detail Based on our observation above, after a single cycle, the challenge register in the DST contains one of two possible sequences, either C0 = 0|C or C1 = 1|C, where | denotes concatenation. Therefore, recovering the output of the h-box can be reduced to a determination of whether the challenge register assumes the value C0 or C1 after the first cycle.
  • By querying The black box, they determined that the key is updated every three cycles, beginning with the second cycle – not the first, as suggested by the Kaiser diagram. also determined that while four bits are indeed exclusive-ored together, they are not the bits shown in the dia-gram
  • DST can process 6-8 challenges per second, so this test requires a minimum of 8 seconds or so. It is thus significantly more time-consuming than previous tests, although it returns the output of three execution cycles, rather than one.
  • Let ci denote the ith bit of the challenge register, starting with 0. The first notable feature of our graph is the effect of bits c38 and c39 of the challenge register. While the other key and challenge bits have limited influence on the output of a single round, these two bit always affect the output of the h-box. Further experimentation revealed that the two bits affect the first and second bit of the two-bit round output respectively. This indicated that the cycle output derived from the exclusive-or of these bits with the output of the F function.
  • After identifying the general structure of the cipher, our next step was to uncover the internal routing network of bits, i.e., which bits act as inputs to each of the f-boxes, as well as the boolean functions computed by each fbox. The structure of the Kaiser cipher is such that h receives a single input bit from each of the g-boxes, and produces one or four possible output values. This fact lays the groundwork for identifying which bits of the challenge and key are routed to each of the g-boxes Recovering the Bit Routing Networks Allows the identification of which bits of the challenge and key are routed to each g -box Altering a single input bit of h can at most generate two distinct outputs Altering the output of only one g -box can never cause h to output more than two values (altering the output of more than one can produce up to 4 distinct values)
  • If at any time these four bit combinations produce more than two different outputs, then they cannot possibly be routed through the same g-box. It should be noted that this test of g-box membership produces false positives. In particular, it is very possible (and indeed common) that for two test bits that are not routed to the same g-box, and for a given set of fixed bits, different value assignments to the test bits still produce two or fewer distinct outputs from the h-box. Therefore this test requires many repetitions with different sets of fixed bits. We employed this test first so as to exclude all bits that are not in the same g-box as bit 0 of the challenge. After excluding 60 such bits, we discovered all of the bits that are routed to g1. We repeated the test for the remaining g-boxes, ignoring bits previously associated with a g box so as to decrease the search space. To our benefit, the routing network of bits that go through each g-box is arranged in a rather regular pattern, and it was not necessary to perform an exhaustive search. After uncovering most of the bits related to g1, we were able to infer and then quickly verify the remainder of the g-boxes. Recovering the Bit Routing Networks More in-depth task for determining the challenge and key register bits that serve as each f -box input Let B = {b1 . . . b5} be a set of challenge and key-register bits Let B denote all other bits registers The output of the cipher will show an invariant if B is the set of input bits to a single f -box
  • On first inspection, it would appear as though there is a large number of possible sets of input bits to any given f-box. In fact, though, we can narrow the pool of candidate sets thanks to two observations: (1) The set of inputs to a single f-box must also serve as inputs (at one remove) to the same g-box; and (2) For any f-box, three input bits come from the challenge register and two from the key register (or vice versa). By working with inputs corresponding to a single g-box and by searching in particular for the f-box that includes bit 0 of the chall enge register, we started with a search space of size only 19 2 × 20 2 + 19 1 × 20 3 = 54150. Moreover, once we identified the inputs to one f-box, each subsequent fbox corresponding to the same g-box had far fewer combinations of input bits to test. Furthermore, again to our benefit, the f-box inputs in DST40 are ordered in a very regular manner. In particular, given the structure of inputs associated with one gbox, we were readily able to infer those for the remaining g-boxes.
  • See Appendix A for the full DST40 algorithm description.
  • We also wished to test our implementation against actual fielded tags in SpeedPassTM tokens and automobile ignition keys. The cryptographic keys in these devices are immutable once locked at the factory. Without knowing the key on a fielded tag, we had no way to determine whether the algorithm used by such tags was as hypothesized. Therefore, recovering an actual key became necessary.
  • At the time of writing of this paper, we are in the process of table building and hope soon to report results of this work.
  • Once the transponder has fully received and processed a command, it discharges its stored power, while transmitting its response using frequency modulated frequency shift keying (FM-FSK). It communicates a bit via 16 RF cycles, specifying a ‘0’ or ‘1’ bit by transmitting at 134.2 kHz or 123.2 kHz respectively.5 A preamble of ‘0’ bits followed by a start byte (7E hex) indicates the start of a transmission and allows the reader to synchronize
  • Using the shared encryption key (which it may look up based on the transponder serial number) and secret CRC start value, the reader can verify that the signature is correct. The CRC appended to each transmission is intended to be an additional security measure as well as an error checking device. The DST protocol specification defines this as a 16-bit reverse CRC-CCITT that is initialized with a secret 16-bit start value. However, this feature provides no such security. A single interaction with a DST allows for the recovery of a transmission and accompanying keyed CRC. As this secret start value is shared among all DSTs, it is only a matter of trying the 216 possible start values and computing the CRC of the data returned to uncover the secret start value. The computational time required for this is less than a second. Therefore, the security of authentication in this system depends on the supposition that the 40-bit secret key contained in a valid transponder is available only to the transponder and to valid readers, and that only knowledge of this shared secret allows the correct generation of
  • The system architects specified as a design criterion that having access to a transponder or reader for short periods of time should not lead to recovery of the secret key [11]. Their stated aim was to make the DST system resistant to signature-guessing attacks, dictionary attacks using known challenge-response pairs, cryptanalytic attacks, and exhaustive key search – even for an attacker with full knowledge of the encryption algorithm
  • Currently the most effective protections against this attack rely on user vigilance, e.g., protecting transponder keys, auditing Speedpass invoices for fraud, and optionally using a metallic shield (such as aluminum foil ) to prevent unauthorized scanning of DST tags. This vulnerability has also spawned the creation of the RSA Blocker Tag and RFID Blocking Wallets.
  • Slides

    1. 2. Overview <ul><li>Introduction </li></ul><ul><li>Related Work </li></ul><ul><li>Significance and Implications </li></ul><ul><li>Reverse Engineering </li></ul><ul><li>Key Cracking </li></ul><ul><li>RF Protocol Analysis and Simulation </li></ul><ul><li>Conclusion </li></ul>
    2. 3. Introduction: RFID <ul><li>Radio-Frequency Identification </li></ul><ul><ul><li>Identification method for storing and remotely retrieving data using an RF device </li></ul></ul><ul><ul><li>Mass deployment and global adoption plans have spawned a large amount of attention from the scientific and commercial communities </li></ul></ul><ul><ul><li>Studies such as this have brought its large-scale usage into question </li></ul></ul>
    3. 4. Introduction: RFID <ul><li>EPC (Electronic Product Code) Tags </li></ul><ul><ul><li>Class 1 Generation 2 standard </li></ul></ul><ul><ul><li>Inexpensive (5 cents/unit) </li></ul></ul><ul><ul><li>Wal-Mart and the United States Department of Defense have published requirements that their vendors place RFID tags on all shipments [1] </li></ul></ul><ul><ul><li>“ Wireless Barcodes” </li></ul></ul><ul><ul><li>Limited circuitry, unable to implement any cryptographic primitives </li></ul></ul>
    4. 5. Introduction: RFID <ul><li>EPC (Electronic Product Code) Tags </li></ul><ul><li>ALN-9540 - &quot;Squiggle™&quot; </li></ul><ul><li>World Tag: global operation 860 to 960 MHz </li></ul><ul><li>The EPC Class 1 Gen 2 price/performance benchmark </li></ul><ul><li>High performance solution for most packaging including products containing metal and water </li></ul><ul><li>97mm x 11mm </li></ul><ul><li>ALN-9529 - &quot;Squiggle®-SQ&quot; </li></ul><ul><li>Global operation - 860 to 960 MHz </li></ul><ul><li>Ideal for item level tagging of plastic packaging such as pharmaceutical pill bottles and apparel hang tags </li></ul><ul><li>Near-field and far-field communication modes </li></ul><ul><li>23mmx 23m </li></ul>
    5. 6. Introduction: RFID <ul><li>Digital Signal Transponder </li></ul><ul><ul><li>Manufactured by Texas Instruments </li></ul></ul><ul><ul><li>Vehicle immobilizer keys </li></ul></ul><ul><ul><ul><li>RFID ID embedded in Key </li></ul></ul></ul><ul><ul><ul><li>Condition for enabling Fuel-Injection system </li></ul></ul></ul><ul><ul><li>Electronic Payment </li></ul></ul><ul><ul><ul><li>Exxon-Mobil SpeedPass™ </li></ul></ul></ul>
    6. 7. Introduction: RFID <ul><li>Digital Signal Transponder </li></ul><ul><ul><li>Consists of microchip and antenna cased in plastic or glass </li></ul></ul><ul><ul><li>Passive RFID device </li></ul></ul><ul><ul><ul><li>Allows for small design and long life </li></ul></ul></ul><ul><ul><li>Contains secret 40-bit Key </li></ul></ul><ul><ul><li>Reader initiates connection, DST emits 24-bit identifier (factory-set) </li></ul></ul><ul><ul><li>DST authenticates itself via a Challenge-Response protocol </li></ul></ul>
    7. 8. Introduction: RFID <ul><li>Digital Signal Transponder: Challenge-Response protocol </li></ul><ul><ul><li>Reader initiates protocol with 40-bit challenge </li></ul></ul><ul><ul><li>DST encrypts challenge using its key and truncates resulting cyphertext to return a 24-bit response </li></ul></ul>
    8. 9. Introduction: ATTACK! <ul><li>Able to break system by recovering secret key after collecting two challenge-response pairs </li></ul><ul><li>With arbitrary challenge, able to find key in less than an hour using array of 16 FPGAs </li></ul><ul><li>Pairs derived from predetermined-challenges (chosen-plaintext) can be cracked in minutes due to a time-space trade-off </li></ul>
    9. 10. Introduction: ATTACK! <ul><li>Team showed that with cheap commodity hardware, an attacker could break the DTS system </li></ul><ul><ul><li>Recover key by actively scanning at short range for fraction of a second (skimming) </li></ul></ul><ul><ul><li>With FPGA, attacker can simulate target after capturing multiple transcripts </li></ul></ul>
    10. 11. Introduction: ATTACK! <ul><li>To validate: </li></ul><ul><li>Team found key from their purchased SpeedPass™ and simulated the DTS to successfully make a purchase at an Exxon-Mobil Station </li></ul><ul><li>Team found cryptographic key from DST ignition key, and was able to start a vehicle </li></ul>
    11. 12. Introduction: ATTACK! <ul><li>Phase 1: Reverse Engineering </li></ul><ul><li>After obtaining rough schematic of the block cipher for the challenge response, they were able to determine all details of the cipher </li></ul><ul><li>Required experimental observation of inputs and outputs </li></ul>
    12. 13. Introduction: ATTACK! <ul><li>Phase 2: Key Cracking </li></ul><ul><li>Assembled array of 16 FPGA’s working in parallel </li></ul><ul><li>Able to crack arbitrary challenge in less than an hour </li></ul><ul><li>Also assembled FPGA for time-space trade-off [12] </li></ul>
    13. 14. Introduction: ATTACK! <ul><li>Phase 3: Simulation </li></ul><ul><li>Given the key and serial number for a DST device, they were able to simulate its output </li></ul><ul><li>Simulation in software radio </li></ul><ul><li>Required careful analysis of the DST reader output </li></ul>
    14. 15. Related Work <ul><li>Classic Black-box example: Duplicating the Purple encipher machine to reconstruct the Japanese Foreign Officer cipher during second World War </li></ul><ul><li>Reverse-engineering of RC4 cipher as well as A5/1 and A5/2 ciphers in GSM phones </li></ul><ul><li>No published black-box reverse-engineering of recent ciphers; developed custom techniques </li></ul>
    15. 16. Related Work <ul><li>Key Recovery more well known </li></ul><ul><li>FPGA scheme similar to Deep Crack for recovering DES keys </li></ul><ul><li>Chosen-challenge pairs uses time-space tradeoff as Hellman describes in his work </li></ul><ul><li>Authors also use “distinguished point” enhancement of Rivest </li></ul>
    16. 17. Significance and Implications <ul><li>Purpose is not to undermine the SpeedPass™ network, nor to allow easier theft of vehicles </li></ul><ul><li>Exxon-Mobil has several layers of security, including fraud detection </li></ul><ul><li>Largest threat to SpeedPass™ is attacker simulating multiply DSTs (suspicious use disables it) </li></ul>
    17. 18. Significance and Implications <ul><li>Serious threat to Vehicles </li></ul><ul><li>Renders vehicle as vulnerable as one without the immobilizer </li></ul><ul><li>Significant decline in auto-thefts is attributed to the immobilizers </li></ul>
    18. 19. Significance and Implications <ul><li>Effective Attack Range </li></ul><ul><li>Two different methods for capturing signals from DST: Active Scanning and Passive Eavesdropping </li></ul><ul><ul><li>Active Scanning : attacker brings their own reader within range of DST (up to several inches) for only a few seconds </li></ul></ul><ul><ul><ul><li>This type of attack could allow for an attacker to harvest two chosen-challenge transcripts and perform look-ups on Hellman tables on the cracking device </li></ul></ul></ul>
    19. 20. Significance and Implications <ul><li>Effective Attack Range </li></ul><ul><li>Two different methods for capturing signals from DST: Active Scanning and Passive Eavesdropping </li></ul><ul><ul><li>Passive Eavesdropping : an attacker listens to legitimate communication between DST and reader during authentic session </li></ul></ul><ul><ul><ul><li>Range depends on the ability to intercept signal from DST </li></ul></ul></ul><ul><ul><ul><li>Range not found in this study </li></ul></ul></ul>
    20. 21. Significance and Implications <ul><li>Example Attack Scenarios </li></ul><ul><li>Example 1: Auto theft via eavesdropping </li></ul><ul><ul><li>Eve owns can with necessary equipment </li></ul></ul><ul><ul><li>Parks close enough to target to eavesdrop </li></ul></ul><ul><ul><li>Observe two successful session, Eve can extract key at her convenience using FPGA </li></ul></ul><ul><ul><li>Eve returns to steal vehicle by picking door lock, disabling immobilizer with found, and hot-wiring ignition </li></ul></ul>
    21. 22. Significance and Implications <ul><li>Example Attack Scenarios </li></ul><ul><li>Example 2: Auto theft via active attack </li></ul><ul><ul><li>Eve gets access to valet key storage to scan immobilizer keys of patrons </li></ul></ul><ul><ul><li>Record registration numbers (to get owner info) </li></ul></ul><ul><ul><li>Eve then can simulate devices and steal the vehicles from owner’s home </li></ul></ul>
    22. 23. Significance and Implications <ul><li>Example Attack Scenarios </li></ul><ul><li>Example 3: SpeedPassTM theft via active attack </li></ul><ul><ul><li>Eve brings reader and short-range antenna on subway </li></ul></ul><ul><ul><li>Harvests challenge-response pairs and serials from SpeedPass™ devices </li></ul></ul><ul><ul><li>Eve can recover crypto keys at her convenience </li></ul></ul><ul><ul><li>Uses key in software radio to purchase gasoline </li></ul></ul>
    23. 24. Significance and Implications <ul><li>Fixes </li></ul><ul><li>Underlying protocols should be based on publicly scrutinized standards with sufficient key length, such as the Advanced Encryption Algorithm </li></ul><ul><li>Problems: </li></ul><ul><ul><li>Cost to make capable devices would significantly increase </li></ul></ul><ul><ul><li>Backwards compatibility (significant cost to refit/recall existing devices) </li></ul></ul>
    24. 25. Significance and Implications <ul><li>Fixes </li></ul><ul><li>Faraday shielding provides a partial solution </li></ul><ul><ul><li>Users can encase DSTs in adequate shielding like aluminum foil to reflect radio while not in use </li></ul></ul><ul><ul><li>Protects against active scanning, but not eavesdropping </li></ul></ul><ul><ul><li>Possible shielding around reader to defend against eavesdropping </li></ul></ul>
    25. 26. Reverse Engineering
    26. 27. Reverse Engineering <ul><li>Authors found schematic by Dr. Kaiser and TI in a presentation </li></ul><ul><li>Functional components were clear, but critical details of logic and interconnects were not </li></ul><ul><li>Certain features in schematic were wrong </li></ul><ul><li>Chose “black-box” approach by examining logical outputs </li></ul><ul><li>Authors Purchased TI Series 2000 – LF RFID Evaluation Kit and DST devices </li></ul>
    27. 28. Reverse Engineering <ul><li>DST 40 is essentially a feedback shift register </li></ul><ul><li>During each round, inputs from challenge register and key register pass through collection of logical units </li></ul><ul><li>These units produce an output that is put back into the challenge register </li></ul>
    28. 29. Reverse Engineering <ul><li>Single round as all units is referred to as F. F has three logical layers: </li></ul><ul><ul><li>First layer: represented as f 1 to f 16 ( f -boxes) </li></ul></ul><ul><ul><li>The second layer is represented as f 17 to f 20 , referred to as g -boxes, which are four functional units that takes the outputs of set of four f -boxes as inputs </li></ul></ul><ul><ul><li>The third layer is a single unit, f 21 , in which takes in the outputs of the g -boxes, called the h-box, returns the output of the full function F </li></ul></ul>
    29. 30. Reverse Engineering <ul><li>There are two main technical details missing from the schematic: </li></ul><ul><ul><li>Does not describe the logical operations of the f , g , and h -boxes </li></ul></ul><ul><ul><li>Does not describe the routing array for the mapping of key and challenge bits to the f -boxes </li></ul></ul>
    30. 31. Reverse Engineering <ul><li>Obtaining a Single-Round Output </li></ul><ul><li>Since the contents of the f- boxes and critical routing was unknown, the authors could not directly verify if their DSTs followed the Kaiser schematic </li></ul><ul><li>Required to treat evaluation DST as a “Black-box” </li></ul><ul><li>From the schematic, the authors noted that the only round dependence is in the key scheduler </li></ul><ul><li>used the string of ‘0’ bits for their starting experiments </li></ul>
    31. 32. Reverse Engineering <ul><li>Obtaining a Single-Round Output </li></ul><ul><li>After each cycle, there were only small changes to contents of the challenge register: </li></ul><ul><ul><li>Each was shifted right one bit </li></ul></ul><ul><ul><li>The output of the h- box was inserted into the left-most bit position </li></ul></ul><ul><ul><li>Challenge/Response </li></ul></ul><ul><ul><ul><li>two possible sequences, either: C0 = 0|C or C1 = 1|C, where | denotes concatenation </li></ul></ul></ul><ul><ul><ul><li>after the first cycle, h-box output assumes challenge register is either C0 or C1 after first cycle </li></ul></ul></ul>
    32. 33. Reverse Engineering <ul><li>Obtaining a Single-Round Output </li></ul><ul><li>Tests failed, indicating that the DST40 differs from the Kaiser cipher </li></ul><ul><li>Authors found that testing next-state challenge response values succeeded when they modeled the h -box output as two bits </li></ul><ul><li>Authors then questioned elements of the schematic including number of rounds and key update schedule </li></ul>
    33. 34. Reverse Engineering <ul><li>Obtaining a Single-Round Output </li></ul><ul><li>Since the authors were able to recover the output of F on a single iteration, they were able to observe the entirety of each round of a cipher execution by repeatedly guessing the next state of challenge register </li></ul><ul><li>They established that the encryption took over 200 cycles and the DST gets its response from the right-most 24 bits of the challenge register </li></ul>
    34. 35. Reverse Engineering <ul><li>Recovering the Key Schedule </li></ul><ul><li>Using the ‘0’ bit key would restrict ability to experiment with algorithm internals </li></ul><ul><li>They required the ability to observe single-round outputs based on different values in the challenge and key registers </li></ul><ul><li>Using a non-zero key makes the algorithm round dependent </li></ul><ul><li>Needed to provide black-box with equivalent next key register state </li></ul>
    35. 36. Reverse Engineering <ul><li>Recovering the Key Schedule </li></ul><ul><li>By following the diagram, the authors assumed new key bits were computed by exclusive-or of several bits of the key every few seconds </li></ul><ul><li>They determined the key is updated every three cycles (beginning with the second cycle) </li></ul><ul><ul><li>Let k i denote the i th bit in the key register beginning with 0 </li></ul></ul><ul><ul><li>The key update is defined by: k 0 = k 39 k 37 k 20 k 18 </li></ul></ul><ul><li>Using this model in place of the ‘0’ bit key, they were able to simulate steps for any key </li></ul>
    36. 37. Reverse Engineering <ul><li>Recovering the Key Schedule </li></ul><ul><li>Previously only had to guess each possibility for a 2-bit output of single round </li></ul><ul><li>For a non-zero key, need to guess six successive bits (three bit-pairs) of output for the h- box at the same time, since the key schedule only repeats every 3 cycles </li></ul><ul><li>This meant testing 64 possible candidate challenge-response states </li></ul><ul><li>To test, they set the k’ corresponding to the key-register state after 6 cycles applied to k </li></ul>
    37. 38. Reverse Engineering <ul><li>Uncovering the Feistel Structure of DST40 </li></ul><ul><li>To measure the effect, the authors generated a random key and challenge, and determined the output of F </li></ul><ul><li>For each of the 40 challenge bits, they determined whether F changed upon flipping a bit </li></ul><ul><li>Repeated 150 times </li></ul>
    38. 39. Reverse Engineering <ul><li>Uncovering the Feistel Structure of DST40 </li></ul>
    39. 40. Reverse Engineering <ul><li>Uncovering the Feistel Structure of DST40 </li></ul><ul><li>The XOR of bits c 38 and c 39 showed that the algorithm was an invertible permutation and it is a form of Unbalanced Feistel Network </li></ul><ul><li>The authors speculate that the round function was chosen so that collisions would not multiply and responses would have uniform distribution </li></ul>
    40. 41. Reverse Engineering <ul><li>Recovering the Bit Routing Networks </li></ul><ul><li>Next step was to recover internal routing network of bits </li></ul><ul><li>Assumption that the h -box (f 21 ) was the only box with a 2-bit output </li></ul><ul><li>Structure of Kaiser cipher shows that h gets a single bit from each of the g -boxes and returns one or four possible outputs </li></ul>
    41. 42. Reverse Engineering <ul><li>Recovering the Bit Routing Networks </li></ul><ul><li>Using this observation, the authors devised a test to see which groups of input bits of the challenge and key are routed to each of four g- boxes </li></ul><ul><li>Test requires many repetitions since two test bits could be routed to different g-boxes, and different value outputs still produce two or fewer distinct outputs </li></ul><ul><li>The routing network was arranged in a regular pattern, and after uncovering most of the bits dealing with g 1 and the authors were able to infer and validate the remainder of g -boxes </li></ul>
    42. 43. Reverse Engineering <ul><li>Recovering the Bit Routing Networks </li></ul><ul><li>An f -box uses a fixed boolean function z on five bit inputs </li></ul><ul><li>Suppose that B is the set of inputs to this f-box: </li></ul><ul><ul><li>Then let’s define A 0 to be the set of value assignments to the bits in B such that z ( b 1 . . . b 5 ) = 0 </li></ul></ul><ul><ul><li>Also, define A 1 analogously for z ( b 1 . . . b 5 ) = 1 </li></ul></ul><ul><ul><li>Notice that for a fixed setting of B , the output of h will be invariant for the setting of B to any value in A 0 . </li></ul></ul><ul><ul><li>Likewise, for a fixed value assignment to B , the output of h will be invariant for any setting of B to a value in A 1 . </li></ul></ul>
    43. 44. Reverse Engineering <ul><li>Recovering the Bit Routing Networks </li></ul><ul><li>Using the invariant, the authors performed tests to exclude combinations of bits that can’t be inputs the same f-box </li></ul><ul><li>Next step was to Iterate over all 32 value assignments to B and record the output pattern from F </li></ul><ul><li>They then repeated the experiment over B </li></ul><ul><li>If no invariant like described, the B cannot consist of inputs to a single f -box </li></ul><ul><li>Test repeated until excluded all possible inputs except for correct ones </li></ul>
    44. 45. Reverse Engineering <ul><li>Building Logical Tables for the f, g, and h -boxes </li></ul><ul><li>Once the corresponding bits to each f -box were identified, the authors constructed tables to represent logical functions computed by all the boxes </li></ul><ul><li>To calculate the f -box tables, they simply iterated through 32 possible input value for the set B that corresponds to the f -box </li></ul><ul><li>To calculate a given g -box, four corresponding f -boxes and iterated over all 2 4 = 16 combinations of their output values </li></ul><ul><li>It’s essentially the same method to construct the h -box table; though the h -box outputs two bits instead of one </li></ul>
    45. 46. Key Cracking <ul><li>The DST40 Keycracker </li></ul><ul><li>First implemented in software </li></ul><ul><li>To slow for a keycracker </li></ul><ul><li>Software could only compute less than 200,000 encryptions per second on 3.4 GHz Pentium </li></ul><ul><li>Time would take more than 2 weeks for a 10 node cluster </li></ul><ul><li>Decided to implement the keycracker in hardware </li></ul>
    46. 47. Key Cracking <ul><li>The DST40 Keycracker </li></ul><ul><li>Each node consisted of a single Xilinx XC3S1000 FPGA </li></ul><ul><li>32 cores per FPGA </li></ul><ul><li>Since DST40 outputs 24 bits per 40 bit challenge, at least two challenge/response pairs are needed to determine a unique key </li></ul><ul><li>Clock on board was fixed to 100 MHz, allowing for 16 million keys per second </li></ul><ul><li>Entire 40 bit key-space can be exhausted in less than 21 hours </li></ul>
    47. 48. Key Cracking <ul><li>The DST40 Keycracker </li></ul><ul><li>Single FPGA board was enough to verify testing </li></ul><ul><li>Cracker recoverd key from SpeedPass™ in under 11 hours </li></ul><ul><li>Bought a total 16 evaluation boards to get a significantly reduced crack time </li></ul><ul><li>Cracked 5 TI DST tags and recovered all keys in less than 2 hours </li></ul>
    48. 49. Key Cracking <ul><li>The Hellman Time-Space Tradeoff </li></ul><ul><li>As described, Software key cracker uses Hellman tables </li></ul><ul><li>Estimates suggest a 99+% success rate </li></ul><ul><li>Requires 10 GB of storage </li></ul><ul><li>Should finish in under one minute on fast PC </li></ul><ul><li>Table construction requires a large amount of pre-computation </li></ul>
    49. 50. RF Protocol Analysis and Simulation <ul><li>A reader in the DST system transmits power to the transponder at a 15-to-50 ms electromagnetic pulse at 134.2 kHz </li></ul><ul><li>Once powered, transponder can perform session tasks </li></ul><ul><li>Reader transmits as a sequence of amplitude-modulated bits </li></ul><ul><li>Once transponder has received and processed a command, it discharges its power while transmitting response </li></ul>
    50. 51. RF Protocol Analysis and Simulation <ul><li>Sniffing the Protocol </li></ul><ul><li>The team configured a portable PC with a digital-to-analog board </li></ul><ul><li>Designed to send and receive desired analog signals </li></ul><ul><li>The authors wrote routines for modulation and demodulation to produce the signals produced by the reader and FM-FSK signals produced from the transponder </li></ul><ul><li>Using this equipment can allow for successful eavesdropping or actively participate by emulating either reader or transponder </li></ul>
    51. 52. RF Protocol Analysis and Simulation <ul><li>Putting Together the Pieces: the Full DST Protocol </li></ul><ul><li>First, the reader transmits a challenge request to the transponder </li></ul><ul><ul><li>Consists of an 8-bit opcode followed by the 40-bit challenge (opcode specifies type of request being made) </li></ul></ul><ul><ul><li>The transponder encrypts the challenge using the shared secret 40-bit key </li></ul></ul><ul><ul><li>The least significant 24 bits in the transponder challenge register consitutes a 24-bit Signature </li></ul></ul>
    52. 53. RF Protocol Analysis and Simulation <ul><li>Putting Together the Pieces: the Full DST Protocol </li></ul><ul><li>The transponder then responds </li></ul><ul><ul><li>Replies with 24-bit serial number, 24-bit signature, and a keyed 16-bit CRC of the transmitted data </li></ul></ul><ul><li>Using the shared encryption key and secret CRC start value, the reader can then verify </li></ul><ul><li>The CRC is intended to add extra security as well as provide error checking </li></ul>
    53. 54. RF Protocol Analysis and Simulation <ul><li>Putting Together the Pieces: the Full DST Protocol </li></ul><ul><li>The stated aim of DST was to make it resistant to: </li></ul><ul><ul><li>Signature-guessing attacks </li></ul></ul><ul><ul><li>Dictionary attacks </li></ul></ul><ul><ul><li>Attacks using known challenge-response pairs </li></ul></ul><ul><ul><li>Cryptanalytic attacks </li></ul></ul><ul><ul><li>Exhaustive key search </li></ul></ul>
    54. 55. RF Protocol Analysis and Simulation <ul><li>Simulating a DST Device </li></ul><ul><li>The authors software performs the following: </li></ul><ul><ul><li>It analyzes the A/D conversions received from the DAC board </li></ul></ul><ul><ul><li>Decodes the AM signal containing the challenge sent from the reader </li></ul></ul><ul><ul><li>Performs an encryption of this challenge using the recovered secret DST key </li></ul></ul><ul><ul><li>Codes the FM-FSK signal representing the correct response </li></ul></ul><ul><ul><li>Outputs this FM-FSK signal to the DAC board </li></ul></ul>
    55. 56. Conclusion <ul><li>The weakness of DST40 cipher demonstrated by the authors is primarily due to an insufficient key-length </li></ul><ul><li>Further cryptanalysis may reveal weaknesses in the cipher </li></ul><ul><li>Systems with the strongest security are generally standard cryptographic algorithms with adequate key lengths </li></ul>
    56. 57. Questions?
    57. 58. References <ul><li>[1]. http://en.wikipedia.org/wiki/RFID </li></ul><ul><li>[2]. http ://en.wikipedia.org/wiki/Digital_Signature_Transponder </li></ul>

    ×