This invention relates generally to systems, apparatuses and methods for retrieving data from an event data recorder (“EDR”) of a motor vehicle. More specifically, the invention relates to systems, apparatuses and methods for extracting the data and storing the extracted data in a forensically sound manner.
Modern vehicles often have event data recording capabilities built into different electronic control modules (“ECMs”) of the vehicle. Whether integrated into an existing ECM, or working as a standalone device, EDRs may contain information of importance to help answer legal questions. In these cases, the data must be extracted and preserved in a forensically sound manner. As of yet, data captured from these devices may not be preserved in a forensically sound way. Furthermore, a cumbersome process is needed to gather EDR information, especially from heavy trucks (see e.g., William Messerschmidt et al., Minimizing the Risk of Losing Valuable Forensic Data When Downloading the Electronic Control Modules (ECMs) of Heavy Commercial Vehicles (2011), available from Messerschmidt Safety Consultants; Timothy Austin and William Messerschmidt, Electronic Control Module Field Guide (January 2010 ed.), available from Harris Technical Services; Plant et al. Data Extraction Methods and their Effects on the Retention of Event Data Contained in the Electronic Control Modules of Detroit Diesel and Mercedes-Benz Engines, SAE Paper 2011-01-0808). The data extraction process uses original equipment manufacturer software designed for maintenance, not forensic use. The most common way to access the EDR and its data is through the vehicle network using a vehicle diagnostic adapter (“VDA”) interfacing a PC with the vehicle.
There are three main methods for downloading event data from ECMs when they cannot be accessed through the vehicle network: reprogramming harness, surrogate vehicle download, and a passive interface system (see e.g. Boggess et al., A New Passive Interface to Simulate On-Vehicle Systems for Direct-to-Module (DTM) Engine Control Module (ECM) Data Recovery, SAE Paper 2010-01-1994).
Use of a reprogramming harness involves disconnecting the vehicle harness and then connecting the reprogramming harness, which is powered by an external power source, directly to the ECM. The problem with this method is that it almost always creates new fault codes which are completely unrelated to the crash or event of interest. Depending on the ECM, these new fault codes can overwrite previous fault codes that may have had useful data.
A surrogate vehicle download requires that the ECM be removed from the subject vehicle; placed into an undamaged, substantially similar vehicle; and then downloaded using the in-cab diagnostic connector. This method is reliable but finding a suitable surrogate vehicle can be difficult and expensive. Further, this method is feasible only for large fleets of similar vehicles, but the opportunity cost of not having the surrogate vehicle in service can be considerable.
The passive interface system is a specialized custom-configured device built using either actual truck components, simulated truck components or both. The interface system simulates the normal connections between a vehicle and an ECM and does not create new fault codes when the ECM is being downloaded. This method is limited to the truck configuration which the box is designed to simulate and is expensive because of the cost of the truck components used to build the box.
Data from the ECM that is interpreted and stored by the original equipment manufacturer's software are usually stored on a general purpose host computer running a Windows operating system. These data file formats are not encrypted or hashed with a verifiable hash. As such, the data can be manipulated after it is obtained from the ECM without being detected. Furthermore, the ECM may be put back into service, which means the original digital record is no longer available. This means there is no rigorous method available to verify the authenticity and integrity of the ECM data, other than having agreements in place before the download occurs.
Original Equipment Manufacturer software contains provisions to reset data within an ECM, like the date and time stamps. Because the time record of an ECM is useful in correlating data to an event, resetting these data is detrimental to being able to verify the time of the recorded data. As such, some sort of command filtering mechanism is needed. International Publication No. WO 2013/144962 A1 (PCT/IL2013/050290) Security System and Method for Protecting a Vehicle Electronic System provides some overarching concepts regarding the idea of message filtering from a cyber-security perspective. That application and its references are hereby incorporated by reference.
Therefore, a need exists for a general purpose wheeled vehicle EDR forensic recovery and preservation system that is less expensive and more reliable (and, as a result, defensible in a court of law) than existing recovery methods.
A wheeled vehicle event data recorder (“EDR”) forensic recovery and preservation system made according to this invention includes hardware and software components. The hardware components include a “smart sensor simulator” that produces signals equivalent to a fault free truck and a “forensic link adapter” that initiates communication with an ECM, protects or firewalls communication with the ECM, provides cryptographic hashing of the data, uses external references to keep accurate time, and interfaces with the user.
The “smart sensor simulator” makes the ECM containing the forensic data think that it is still in an actual vehicle or in communication with a vehicle similar to the one that was in the crash. Unlike the passive interface devices described in the background of the invention, a simulator made according to this invention is a general purpose one and not specific to a truck or engine. The simulator includes a bank of resistors that simulate resistor-based sensors and one or more microprocessors and supporting electronics that can simulate active signals. The one or more microprocessors can adjust certain voltage and network values to produce a fault free system when interacting with an ECM. One or more serial interfaces are included to communicate with the ECM.
In the forensic link adapter one or more microprocessors filter communication traffic from external communication (e.g. from the diagnostic software) to prevent accidental system resets, data clearing, or other message traffic that generally disrupt the forensic data extraction. Variations of this write-blocking apparatus can also be implemented as security devices in vehicle communication systems that block network traffic from being transmitted from one side of a network to another.
The one or more microprocessors respond to values sent to it through a vehicle diagnostic adapter (“VDA”) used by the software component or other diagnostic software. In a preferred embodiment, the VDA hardware is RP1210 compliant and integrated into the forensic link adapter. The time is set in the forensic link adapter by referencing an external signal, like a GPS, radio, or cellular signal. External geospatial referencing is also performed automatically in the forensic link adapter so the user does not have to enter time or geospatial data into the system.
There are two or more software components: one that runs on one or more of the embedded microprocessors of the “smart sensor simulator” and another that runs on an embedded device managing the communications with the ECM (the “forensic link adapter”). The forensic link adapter refers to any multi-use computing platform like an embedded computer, laptop computer, tablet computer, mobile device (e.g. Android or iPhone), and the like. The software component that runs on the host forensic link adapter replaces or supplements the ECM's diagnostic software and provides secure extraction, storage, and verification of digital forensic data. The software component on the forensic link adapter does not purposefully delete diagnostic information by default and does not require a user to engage in ad-hoc processes to retrieve and record critical information. The software component communicates with the simulator using standard communication protocols, records all relevant diagnostic information, and provides cryptographic functionality to ensure the integrity of evidence in storage.
A software component of the forensic link adapter may include a network traffic replay mechanisms that enables a historical record of vehicle network traffic to be replayed to a VDA. This enables the forensic link adapter to emulate the behavior of an electronic control module and represent the data on that module according to the history of the network traffic.
The forensic link adapter may have an external interface in which it can acquire a time reference and automatically set its internal real-time clock. Likewise, the system may include an external interface to acquire geospatial information and automatically record its location. A preferred embodiment would use a GPS satellite based system for both time and geospatial systems. Other embodiments may use cell tower triangulation or FM time stamp signals.
The software component on the embedded devices of the forensic link adapter will filter messages and requests sent from the host PC to the ECM. The messages will be compared against a list of messages not allowed to be sent to the ECM, which is known as a blacklist. Typical messages that are blacklisted are messages that request fault data to be cleared or for clock data to be reset or changed. The embedded software component may have message storage capabilities and other multipurpose information services.
The vehicle diagnostic adapter (“VDA”) is the link between the PC software and the embedded software. A VDA is prior art and complies with the American Trucking Association's Truck Maintenance Council's Recommended Practice Number 1210, which describes the application programming interface (API) for an interface device to communicate with a Windows computer. The RP1210 compliant VDA can be included in the forensic link adapter. The RP1210 device enables the user to use RP1210 compliant software along with the forensic link adapter. The VDA can also be used just with the smart sensor simulator.
Objects of this invention include providing an EDR forensic recovery and preservation system and method that:
Referring first to
A vehicle diagnostic adapter (“VDA”) provides an interface from existing diagnostic software to forensic link adapter 20. If existing diagnostics software is used (e.g. DDEC Reports), then software 30 will examine and filter the messages coming from the VDA to adapter 20 and block any message that can disrupt the forensic process (e.g. a command to reset the time) (see
A preferred embodiment of the forensic link adapter 20 of
Appendices 1-3 provide examples of the types of signals and communication between the ECM, simulator 10, adapter 20 running the forensic preservation software 30. An alternative embodiment would implement the forensic preservation software on a general purpose computer and use a commercial off-the-shelf VDA to interface with the vehicle or the smart sensor simulator. The requirement to filter, store, hash, and replay the message data would remain the same.
The simulator 10 is configured in such a way so that when it is in communication with the ECM, the ECM senses that it is still in a vehicle similar to the one from which it was removed. This is important because an ECM that is not in a vehicle will query missing sensors and produce new fault codes. Because some forensic data is stored as fault freeze frame data, a new fault code alters the digital record in the ECM. Furthermore, on some ECMs, a new freeze frame may overwrite the data of interest and make it irrecoverable.
Referring to
The forensic preservation software 30 replaces or augments the vehicle's engine diagnostic software and provides secure extraction, storage, and verification of digital data (see
Engine diagnostic software is designed with maintenance, rather than forensic, applications in mind. Therefore, the diagnostic software may delete diagnostic information by default. Second, the diagnostic software does not provide functionality to easily record all necessary information. This necessitates the use of ad-hoc processes to record the information, such as taking screenshots of information displays.
Referring to
Referring to
The simulator 10 has at least one bank of resistors 21 (see
Software 30 makes use of memory mapping and forensic replay to emulate the previously recorded data to the engine diagnostic software. This enables the user to interpret the data using his or her own software while still maintaining the forensic soundness of the original verifiable network message traffic. The diagnostic software reads data from the engine by requesting blocks of data using a memory address and a requested number of bytes. Replying to these messages from the replay mechanism (see
In software 30, sparse data are represented by creating “bins,” with each bin indexed by the first byte of the memory address. When the diagnostic software requests data from the replay mechanism, the replay software or indexes into the appropriate bin using the first byte.
The replay mechanism (see
When the diagnostic software issues a request for a memory block, the replay mechanism responds to the request by mapping the request data to the correct portion of the image file (using the process described above), reading it, and then formatting a response as though it were a network response from a truck ECM. In this way, the diagnostic program is cannot distinguish between the data from the ECM and the data from the forensic image being replayed.
Referring to
If the electrical system of the vehicle is still intact, the ECM is connected to adapter 20 via a diagnostic port in the vehicle cab (see
Step 202 requests user input for case-specific information, including but not limited to the ECM type. In step 203, the user inputs the case-specific information and ECM type. Step 205 then verifies support of that ECM by querying the OEM specific database 307, copying that ECM-specific information to the extraction database 301 and, in step 207, sending a configuration command to simulator 10.
Step 209 adjusts ECM-specific signals using simulator 10 and the simulator 10 generates emulated dynamic signals. Those emulated dynamic signals enable the ECM to sense that it is still in communication with vehicle systems or, if the ECM has been removed, in a similar vehicle. Step 211 sends a “key-on” command to simulator 10 and step 213 activates the key switch circuit to simulate a drive turning on the ignition key. An alternative embodiment may omit this process and rely on the user to activate the key-on signal manually.
Once the key-on command has been sent to simulator 10, step 215 establishes ECM presence and records baseline message traffic to the extraction database 301. Steps 217 to 223 poll the databases 303, 305, 307, respectively, and record the recovered data in the extraction database 301. Step 225 uses a hashing algorithm to provide a verification record of the recovered data (see also e.g.,
Referring to
Referring to
A hashing algorithm provides a verification record of the recovered data (see step 225 of
Appendix 1 is a table mapping the ECM connector pinouts and signal names for a CATERPILLAR® C15 MSX engine controller (ADEM III). This represents a typical ECM.
Appendix 2 is a table listing the change in resistance values corresponding to fault codes of the ECM of Appendix 2. This represents the results of the methods used to obtain specific values for the components in the smart sensor simulator device 10.
Appendix 3 is a table showing a partial mapping of ECM pin outs for various diesel engine manufacturers to the simulator of
While preferred embodiments of the system and method have been described, the invention itself is defined by the following claims, including elements equivalent to those specifically listed in the claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2014/033634 | 4/10/2014 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
61811004 | Apr 2013 | US |