Solid State Drives (SSDs) have become industry standard for data storage due to their compact form factor, high data transfer speeds, and low power consumption. However, each SSD manufacturer uses their own proprietary firmware, meaning the user does not know how data is stored on the SSD. The primary contribution of this work is the demonstration of the capability to classify activity (read and write) on an SSD versus non-activity (idle) using the temperature side-channel. In addition, we present promising initial results using temperature signatures obtained from an infrared camera to classify read, write, and idle operations. Read and write operations were evaluated at 100 MB, 500 MB, and 1000 MB on four industry standard M.2 SSDs. This study demonstrated the ability to determine when an SSD was inactive with 100% recall, while being able to identify an active SSD with at least 94 % sensitivity for each of the four SSDs. We were able to classify operations with an accuracy of 80% on three of the four SSDs.
Real-time support for an iris recognition algorithm is a considerable challenge for a portable system that is commonly used in the field. In this paper, an efficient parallel and pipeline architecture design for the feature extraction and template matching processes in the Ridge Energy Direction (RED) algorithm for iris recognition is presented. Several techniques used in the proposed architecture design to reduce the computational complexity while supporting a high performance capability include (i) a circle approximation method for the iris unwrapping process, (ii) a parallel design with an on-chip buffer for 2D convolution in the feature extraction process, and (iii) an approximation method for log(2) and inverse-log(2) conversion in the template matching process. Performance analysis shows that the proposed architecture achieves a speedup of 881 times compared to the conventional method. The proposed design can be integrated with an embedded microprocessor to realize a complete system-on-chip solution for a portable iris recognition system.
Solid State Drives (SSDs) have gained significant market share among data storage options in recent years due to increased speed and durability. But when compared to Hard Disk Drives (HDDs), SSDs contain additional complexity which must be managed in firmware. Some manufacturers make firmware updates available, but their proprietary protections leave end users unable to verify the authenticity of the firmware post installation. This means that attackers who are able to get a malicious firmware version installed on a victim SSD are able to operate with impunity, as the owner will have no tools for detection. We use a method for performing side channel analysis of the current drawn by an SSD to compare its behavior while running genuine firmware against its behavior when running modified firmware. We further test this method for robustness against changes in external factors such as temperature and supplied power. In each case, we train a binary classifier with samples of genuine as well as modified firmware activity and are able to discriminate between them with over 90% accuracy in most experiments. Solid State Drives are trusted to store and protect critical data, so verification of SSD firmware is an important step towards having trust and confidence in the growing landscape of embedded devices used for critical operations.
Modern Advanced Driver Assistance Systems (ADAS) require the ability to sense and process information in real-time. More specifically, these devices need to accurately and quickly detect lanes in images. The Hough transform (HT) is a very accurate method of finding lines in a still image. In order to meet real-time requirements and low power consumption, a proposed hardware architecture design for the Hough transform in a real-time lane detection system is presented. This design efficiently and aggressively utilizes the DSP and embedded memory blocks in a configurable platform to speed up the HT calculation as well as reduce the resource requirements of the system. The proposed design utilized a parallelpipeline architecture to allow for full area coverage of all line possibilities while optimizing for hardware restrictions. Initial results have shown that the proposed design achieve a normalized processing rate of 6.06 ns per pixel which is suitable for real-time lane detection application.
Ever-increasing data rate demands on the electromagnetic spectrum have become a staple of the 21st century. Additionally, the demand for underwater communication has seen dramatic growth as both the military and industry work to reap the benefits of employing unmanned underwater vehicles. Exploration of the viability of relatively untapped portions of the electromagnetic spectrum to transmit data is crucial to potentially alleviate congested spectrums as well as provide high data rate, low detect probability, and low probability of intercept modalities of data transmission. This research explores the use of visible light communication methods to transmit data in an underwater medium. Specifically, this research proposes and analyzes the performance of an underwater free-space optical transmission scheme based on twodimensional, multi-colored grids. We explore the effects the underwater medium has on the transmitted image and evaluate link performance using metrics that include data rate and bit error rate. Additionally, this work evaluates the potential performance improvements that can be gained through the employment of adaptive equalization, which is designed to minimize bit error rate at the receiver.
Increase in number of embedded systems which are interconnected has created need for mechanisms which can detect malicious exploits in a lightweight yet speed efficient fashion. Recent approaches that addressed this challenge focused on utilizing either high level or low level features along with machine learning algorithms to analyze behavior of unknown programs. However, the high level mechanisms are less tamper resistant and low level approaches result in high false positive. Moreover these approaches often consume high computational and storage resources, which are less suitable for embedded systems. In this paper, we present a custom hardware realization of a lightweight malware analysis approach. This approach analyzes an unknown program using a judicious combination of high level and low level features along some with statistical methods. We achieve an average of 3.06x reduction in power consumption and an average of 2.52x improvement in detection speed, when compared to existing hardware-based malware detection techniques and also a speed up of 1.8x compared to its software based realization.
Solid state drives (SSDs) are coming under increased scrutiny as their popularity continues to grow. SSDs differ from their hard disk drive predecessors because they include an onboard layer of firmware to perform required maintenance tasks related to data location mapping, write performance, and drive lifetime management. This firmware layer is transparent to the user and can be difficult to characterize despite its clear potential to impact drive behavior. Flaws and vulnerabilities in this firmware layer have become increasingly common. In this work, we propose and analyze a technique to classify different versions of proprietary firmware on an SSD through the use of current draw measurements. We demonstrate that major groupings of firmware can be classified using current draw measurements not only from explicitly active drive states such as read and write but also from the low power idle state. We achieve pairwise classifications rates near 100% between firmware examples in these different major groupings. Coupling these results with firmware release information, we are able to infer major updates in the firmware timeline for the SSD we examined. We also develop an anomaly detector and achieve detection rates of 100% for samples that reside outside of the reference grouping.
Many applications make use of the edge devices in wireless sensor networks (WSNs), including video surveillance, traffic monitoring and enforcement, personal and health care, gaming, habitat monitoring, and industrial process control. However, these edge devices are resource-limited embedded systems that require a low-cost, low-power, and high-performance encryption/decryption solution to prevent attacks such as eavesdropping, message modification, and impersonation. This paper proposes a field-programmable gate array (FPGA) based design and implementation of the Advanced Encryption Standard (AES) algorithm for encryption and decryption using a parallel-pipeline architecture with a data forwarding mechanism that efficiently utilizes on-chip memory modules and massive parallel processing units to support a high throughput rate. Hardware designs that optimize the implementation of the AES algorithm are proposed to minimize resource allocation and maximize throughput. These designs are shown to outperform existing solutions in the literature. Additionally, a rapid prototype of a complete system-on-chip (SoC) solution that employs the proposed design on a configurable platform has been developed and proven to be suitable for real-time applications.
Principal Component Analysis (PCA) has been a major tool in performing characterization of environmental data where in, the data is typically a hyper spectral image. Using statistical methods, PCA is often capable of reducing the dimensionality of data. On the other hand Nonlinear Iterative PArtial Least Squares (NIPALS) algorithm provides an efficient alternative for extracting the principal components with a minimum penalty on processing speed. In this work we provide the hardware implementation of NIPALS algorithm on an FPGA, for extracting principal components of a given dataset. Experimental results of our approach on various hyper spectral images show 92.31% average reduction in dimensionality with 0.1% average loss on information of the dataset. The results obtained from XILINX Artix-7 FPGA implementation show the advantage of the proposed method. More particularly, the proposed architecture gives an improvement in speed by factor of 15.71x compared to the state of art approaches.
Solid State Drives (SSDs) are increasingly replacing traditional computer hard drives. However, SSDs are controlled by complex and potentially vulnerable firmware, and users cannot directly confirm if the firmware is behaving properly. This paper studies whether current draw analysis could identify suspicious firmware behavior. Specifically, we studied encryption, a frequent submodule of malware. We created four different firmware variants for an open-source SSD, two of which performed encryption, and then recorded their current draw as the firmware variants performed write operations with files of varying size. 1280 recordings were used to train three types of classifiers, which would attempt to distinguish between these firmwares. Using these recordings and the classification methods of previous researchers yielded just 51% and 58% accuracy when detecting simple (XOR) and industrial-level (AES) encryption, respectively. In contrast, we introduced a different classification pipeline that provided little gain with XOR but increased accuracy with the more realistic AES to better than 95%. These results demonstrate the potential of current draw analysis for detecting some malicious firmware and provide a basis for future development of more complex detection methods.
Solid State Drives (SSDs) are a form of non-volatile computer memory that have become ubiquitous in the information technology industry, replacing traditional magnetic Hard Disk Drives (HDDs) in numerous conventional systems and enabling new applications in the fields of embedded systems and data infrastructure. Compared to HDDs, modern SSDs have competitive storage density, faster read and write times, lower power consumption, and greater impact resistance. However, compared to HDD technology, SSDs have a more complex data storage architecture, which necessitates integrated firmware that interfaces between a host system and the hardware of the SSD, called the Flash Translation Layer (FTL). Because the host system interacts only with the FTL and not the SSD itself, the SSD can be viewed as a black box system, with known input and output but no information about its inner workings. Characterizing internal operations of an SSD is relevant for forensics, diagnostics, and security applications. One possible solution to this problem is to observe the side-channel current draw of the SSD as it operates. If firmware variants have distinguishable differences in their current signatures, a classifier can be trained to make class predictions. Investigating this proposed solution, the current draw of two firmware versions of a Crucial SSD were analyzed as the drive executed a series of file operations. Identifying relevant signal features, standard machine learning techniques were employed to develop models that correctly classified the firmware loaded on the SSD with over 98% accuracy given only a recording of their current draw signals during file operations.
Modern embedded devices are getting cheaper, easier to produce, and smarter. These smarter devices are able to store and process data locally at a scale that would have been infeasible until recent years. Functions that used to be performed on more powerful, dedicated systems and servers with security features are now being pushed to these unsecured commercial embedded devices. In the Internet of Things (IoT) space, this problem is manifesting itself with almost daily reports of compromise of network-connected embedded systems. While IoT device insecurity makes for attention-grabbing headlines, there are entire classes of embedded devices which do not have direct Internet connectivity for which security is still vitally important. One such class of systems are Solid State Drives (SSDs). Whereas once the bulk of computer data was stored on simpler, mechanical Hard Disk Drives (HDDs), SSDs now offer the best speed and latency performance on the market. These performance improvements are partly due to architectural and design advancements, but also to smart on-board controllers that optimize drive operations. SSD manufacturers are now responsible not only for performance but for security as well, since the complex firmware that controls these smart drives presents vectors for attack beyond what was possible with mechanical HDD firmware. If an attacker were able to alter or replace the firmware on an SSD, the potential damage could be severe. To make matters worse, the visibility of installed firmware on SSDs is intentionally restricted by manufacturers to protect intellectual property. In this work, we make source code modifications to an open source SSD development board firmware and demonstrate an automated method for discriminating the modified version from the authentic firmware using side channel analysis of observed current draw. Using cross-validation with Quadratic Discriminant Analysis and Principal Component Analysis, we are able to confirm whether firmware contains our modification with 95% certainty. This work shows that despite the lack of readily available tools for detecting malicious behavior, there are perhaps steps that customers can take to have reasonable assurance that their SSD firmware is genuine.
Solid-state drives (SSDs) are pervasive in modern computing and have supplanted hard disk drives in many applications. Substantial changes in architecture have brought about not only improvements in speed and energy usage but also new security concerns. The presence of proprietary firmware onboard SSD controllers in particular raises the possibility that data believed by a user or operating system to be deleted physically remains on the drive and can thus be recovered. This security issue has a direct application to malware detection, digital forensics, and consumer privacy. To begin to address this, we propose a novel, noninvasive side-channel approach to infer the SSD trim operation. We demonstrate that it is possible to infer the trim operation with better than 99% accuracy using current probe measurements in conjunction with machine learning techniques. We find that the sampling frequency can be reduced to 200 kSps while maintaining greater than 80% of the total power in the 0-1 MHz band. The classifier accordingly uses only information in the frequency range between 0 and 100 kHz in achieving its high accuracy. We also validate our current probe measurement technique by comparing it with an in-line resistor.
Face detection is the determination of the positions and sizes of faces, primarily human, within digital images and videos, often as a component of a broader facial recognition system. It is seen as technologically mature, yet its operational performance typically remains sub-optimal, even within the less difficult frontal face detection tests. Empirical evidence shows that the Viola–Jones framework, a standard face detection solution with generally superior performance and other desirable properties, underdetects in some instances. Some true faces survive all but the final stages of the rejection cascade, resulting in missed faces. A hybrid framework consisting of a neural network following a truncated Viola–Jones cascade is constructed in an attempt to recover the undetected faces. Presumably, the neural network could fine tune and augment the face decision. Its inputs are a subset of the thresholding (detection) values of a rejection cascade's intermediate stages. Experiments reveal significantly improved performance, with increased detection rates if no false alarm increases are tolerated, with a greater detection rate increase if some false alarm increases are acceptable, and with a substantial false alarm reduction with no detection reduction. These improved face detection results could address shortcomings in widely-varying applications.
With the increasing demand for faster reliable secondary storage, Solid State Drives (SSDs) have provided a viable replacement for Hard Disk Drives (HDDs). SSDs contain NAND flash memory components and a processor that executes firmware at the device level to optimize performance. The on-board processor and firmware handle operations such as garbage collection and encryption with no visibility to the user. Therefore, classifying SSD internal behavior can help identify compromised devices. This paper utilizes high precision measurements of power used by an SSD via an oscilloscope, to infer a drive's file system format. We consider four file systems (NTFS, exFAT, FAT32 and EXT4) and demonstrate that frequency analysis of power consumption can identify the system in use. In particular, we show that transforming the frequency-domain power signature with principal components analysis can produce a small number of highly predictive features. Using a k-NN classifier, we then demonstrate that these features enable an SSD's power signature to identify the correct file system 94.3 percent accuracy on a Samsung SSD and with 96.5 percent accuracy on a Crucial SSD.
This paper presents the development of an in situ measurement system known as the Debris Resistive Acoustic Grid Orbital Navy/NASA Sensor (DRAGONS). The DRAGONS system is designed to detect impacts caused by particles ranging from 50 mu m to 1 mm at both low-earth and geostationary orbits. DRAGONS utilizes a combination of low-cost sensor technologies to facilitate accurate measurements and approximations of the size, velocity, and angle of impacting micrometeoroids and orbital debris (MMOD). Two thin layers of kapton sheets with resistive traces are used to detect the changes in resistance that are directly proportional to the impacting force caused by the fast-traveling particles. Four polyvinylidene fluoride-based sensors are positioned in the back of each kapton sheet to measure acoustic strain caused by an impact. The electronic hardware module that controls all operations employs a low-power, modular, and compact design that enables it to be installed as a low-resource load on a host satellite. Laboratory results demonstrate that in addition to having the ability to detect an impact event, the DRAGONS system can determine impact location, speed, and angle of impact with a mean error of 1.4 cm, 0.2 km/s, and 5 degrees. The DRAGONS system could be deployed as an add-on subsystem of a payload to enable a real-time, in-depth study of the properties of MMOD.
For digital imagery, face detection and identification are functions of great importance in wide-ranging applications, including full facial recognition systems. The development and evaluation of unique and existing face detection and face identification applications require a significant amount of data. Increased availability of such data volumes could benefit the formulation and advancement of many biometric algorithms. Here, the utility of using synthetically generated face data to evaluate facial biometry methodologies to a precision that would be unrealistic for a parametrically uncontrolled dataset, is demonstrated. Particular attention is given to similarity metrics, symmetry within and between recognition algorithms, discriminatory power and optimality of pan and/or tilt in reference images or libraries, susceptibilities to variations, identification confidence, meaningful identification mislabelings, sensitivity, specificity, and threshold values. The face identification results, in particular, could be generalized to address shortcomings in various applications and help to inform the design of future strategies. (C) 2016 SPIE and IS&T
Solid-state drives (SSDs) have become pervasive in modern computing and are replacing hard disk drives in many applications. However, the mechanism by which SSDs store and modify data is intrinsically different from hard disk drives. For example, a memory location on a SSD must be erased prior to being written. The main contribution of this paper is a set of measurement and analysis techniques for inferring the behavior of a SSD by observing its power consumption. This paper measures and analyzes the energy consumption of the TRIM command for three separate SSDs. Energy and time models are derived for all three SSDs and it is shown that these models are approximately linear as a function of the size of the file being trimmed. Additionally, empirically obtained signatures are presented to identify when a TRIM command is issued to the SSD based on the observed waveform. Our findings support the hypothesis that energy and time models, as well as power signatures, differ among drive manufacturers.
For the past 40 years, Moore's law has predicted the rapid growth of the computer industry. In the past few years, however, this growth has slowed for central processing units (CPUs). Instead, there has been a shift to multicore computing, specifically with the general purpose graphic processing units (GPUs). Conventional CPUs have between two and eight cores, but the GPUs can have hundreds, even thousands of cores. By parallelizing code, the computing power of these cores can be utilized to greatly accelerate the performance of certain algorithms. The GPUs, however, have been known to consume more power than the conventional processing units. While previous research has focused on the impact that the GPUs have on performance, there are much fewer studies on the impact of GPUs on energy consumption and efficiency. Some researchers have hypothesized that if the performance of an algorithm was sufficiently increased on a GPU, then the accelerated time would actually cause the GPU to consume less energy. For the first time to our knowledge, we study the energy efficiency of a GPU with an application to iris recognition. Using GPU-based code written in the C++ compatible compute unified device architecture language, energy consumption tests are performed on basic image processing techniques, including image inversion, thresholding, dilation, erosion, and memory/computationally intensive calculations, such as the template matching. We demonstrate that the portions of these algorithms implemented on the GPU reduce energy consumption by as much as 272 times.
The demand for Solid-State drives (SSDs) has risen as their speed, size, and architecture have improved. SSDs introduce a security risk because they contain a separate processor to optimize the SSD's lifespan. The lack of transparency of the operations conducted by this onboard processor creates a challenge to users, particularly in digital forensics settings. This paper utilizes non-destructive voltage measurement techniques to monitor the occurrence of read and write operations on an SSD. An automated cross-drive, cross-operating system classifier is presented which is capable of correctly identifying both read and write operations with up to 100 percent accuracy across four different experimental configurations.