Dual use microelectromechanical system (MEMS) device

JP2025022788APending Publication Date: 2025-02-14HONEYWELL INTERNATIONAL INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024119176
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-10
Filing Date
2024-07-25
Publication Date
2025-02-14

Smart Images

  • Figure 2025022788000001_ABST
    Figure 2025022788000001_ABST
Patent Text Reader

Abstract

To provide systems and methods that provide improved assurance as to both identity of hardware and randomness of sources within the systems.SOLUTION: A system 100 includes a microelectromechanical system (MEMS) device 102, a storage medium, and a processor in communication with the MEMS device and the storage medium. The MEMS device receives at least one input signal at an input and generates an output signal at an output. The storage medium stores a signal injection function and an output generation function. The processor runs the signal injection function to selectively modify the at least one input signal to produce a modified input signal, provides the modified input signal to the input of the MEMS device, and runs the output generation function to extract a random component and a unique component from the output signal. The random component and the unique component are generated by the MEMS device based on the modified at least one input signal.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] (CROSS REFERENCE TO RELATED APPLICATIONS) This application claims priority to U.S. Provisional Application No. 63 / 516,949, entitled “DUAL USE MICROELECTROMECHANICAL SYSTEM (MEMS) DEVICE,” filed August 1, 2023, the contents of which are incorporated by reference in their entirety herein.

[0002] This application is a continuation of U.S. patent application Ser. No. 18 / 661,400 (Attorney Docket No. H233692-US), entitled "CODEPENDENT PHYSICAL UNCLONABLE FUNCTION / RANDOM NUMBER GENERATOR PAIRING FOR PHYSICAL PROVENANCE", filed on the same day as this application, U.S. patent application Ser. No. 18 / 661,416 (Attorney Docket No. H233693-US), entitled "MEMS BASED PUF FOR MECHANICAL TRUST EXTENSION", and U.S. patent application Ser. No. 18 / 661,426 (Attorney Docket No. H233694-US), entitled "ACTIVE TRANSISTOR PHYSICAL UNCLONABLE FUNCTION (PUF) CIRCUIT WITH MEMS No. 18 / 661,437 (Attorney Docket No. H233699-US), filed on the same day, entitled "ACTIVE TRANSISTOR RANDOM NUMBER GENERATOR (RNG) CIRCUIT WITH MEMS ENTROPY," all of which are incorporated herein by reference in their entireties. [Background technology]

[0003] Cryptographic processes are used to provide data integrity verification and to protect both the confidentiality of data and the integrity of communication and control of such data stored in distributed electronic hardware systems. These cryptographic processes are designed to prevent attackers from compromising the system for purposes including command and control corruption, unauthorized maintenance, product cloning / spoofing, unauthorized data access, information loss, and eavesdropping.

[0004] To function properly, cryptographic processes require a source of random numbers that are neither predictable before use nor knowable after use when inspected by unauthorized parties. That is, random numbers must be unpredictable and used with low observability in cryptographic operations. If conceptual random numbers are open to attack, they will be vulnerable to powerful offline attacks on the associated cryptographic algorithm or its implementation. True random numbers (TRNs) are difficult to generate because the criteria for TRNs have rigorous proofs and are difficult to use. Therefore, many cryptographic systems default to pseudorandom number generators that have less strict requirements for formal proofs of randomness (e.g., Bell test). With advances in processing power (e.g., quantum volume) emerging in quantum computing, attacks will become more significant and effective if better sources of true random numbers are not developed.

[0005] Furthermore, to avoid compromising sensitive information, including the functionality of the embedded device, the system should have an identity that cannot be easily spoofed by an attacker who may gain physical possession of the embedded device. To this end, various functions, commonly referred to as "physically unclonable functions" or PUFs, have been developed. PUFs are designed to generate a unique output that identifies the system. However, many PUFs are vulnerable to manipulations that allow an attacker to gain access to the system and duplicate the output of the PUF, resulting in unauthorized replacement of the hardware.

[0006] What is needed is a system and method that provides improved assurance regarding both the identity of the hardware and the randomness of the sources within the system. Summary of the Invention

[0007] A system is provided that includes a Microelectromechanical Systems (MEMS) device for generating an output signal at an output of the MEMS device, the MEMS device receiving at least one input signal at an input of the MEMS device, a storage medium configured to store a signal injection function and an output generation function, and a processor in communication with the MEMS device and the storage medium, the processor configured to perform the signal injection function to selectively modify the at least one input signal to generate a modified input signal and provide the modified input signal to the input of the MEMS device, and further configured to perform the output generation function to extract a random component and a unique component from the output signal at the output of the MEMS device, the random component and the unique component being generated by the MEMS device based on the modified at least one input signal. [Brief description of the drawings]

[0008] When considered in light of the preferred embodiments and the description of the drawings that follow, embodiments of the invention may be more readily understood and further advantages and uses thereof may become more readily apparent. [Figure 1] FIG. 1 is a block diagram of one embodiment of a system having a microelectromechanical system (MEMS) device with a transformation function that allows for the generation of unique and random components in addition to the conventional output of the MEMS device. [Diagram 2] 2 is a flow chart of one embodiment of a process for the signal injection function of FIG. 1. [Diagram 3] 2 is a flow chart of one embodiment of a process for the output generation function of FIG. 1 . [Figure 4A]2 is a frequency domain graph illustrating an example signal generated by one embodiment of the signal injection function of FIG. 1 for injection into a MEMS device. [Figure 4B] 2 is a frequency domain graph illustrating an example signal generated by one embodiment of the signal injection function of FIG. 1 for injection into a MEMS device. [Diagram 5] FIG. 1 is a block diagram of a system having multiple redundant microelectromechanical systems (MEMS) devices with a transformation function that allows for the generation of unique and random components in addition to the mixed output of the redundant MEMS devices. [Figure 6] 6 is a flow chart of one embodiment of a process for an output generation function of the system of FIG. 5. [Figure 7] FIG. 1 is a block diagram of an embodiment of a system that provides secure communication between nodes using a MEMS device in each node to generate unique and random components that enable the secure communication.

[0009] According to common practice, the various features described are not drawn to scale but are drawn to emphasize features relevant to the present invention. Reference characters denote like elements throughout the figures and text. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] In the following detailed description, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of example specific exemplary embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized, and that logical, mechanical, and electrical changes may be made without departing from the scope of the invention. Accordingly, the following detailed description is not to be taken in a limiting sense.

[0011] Dual-use Microelectromechanical Systems (MEMS) Devices FIG. 1 is a block diagram of one embodiment of a system 100 having a microelectromechanical system (MEMS) device 102 with a transfer function that allows for the generation of unique and random components in addition to the conventional or standard output of the MEMS device. In one embodiment, the MEMS device 102 is a single MEMS sensor, while in other embodiments, the MEMS device 102 is a plurality of MEMS sensors, as described in more detail below. Furthermore, the MEMS device 102 may be any type of MEMS device, such as an accelerometer, a gyroscope, a pressure sensor, a temperature sensor, an airflow sensor, or other similar MEMS device. Each type of MEMS device generates an output signal during its normal operation. This output is referred to herein as a "standard output" or a "standard component." For example, accelerometers and gyroscopes generate a standard output related to sensed motion, and pressure sensors provide a standard output related to measured pressure. Temperature sensors and airflow sensors provide a standard output related to temperature and flow rate, respectively. A particular MEMS device may be used in system 100 if it allows for the collection of (1) an intrinsic component from the output of the MEMS device that is due to process variations during manufacturing that produce an aspect unique to the MEMS device, and (2) a random sequence from noise within the MEMS device. For educational purposes, system 100 is described in the context of a MEMS device that is a motion sensor as part of a navigation / guidance system, such as a MEMS accelerometer or a MEMS gyroscope. It is understood that the teachings of the present application are not intended to be limited to motion sensors.

[0012] The system 100 includes additional circuitry that allows it to collect the intrinsic and random components from the MEMS device 102. Specifically, the system 100 includes a processor 103 and executable code for two functions stored in a storage medium 105. The first function is a signal injection function 104 and the second function is an output generation function 116. The signal injection function 104, when executed on the processor 103, causes the processor 103 to generate and provide a digital stimulus signal 107 for the MEMS device 102. The digital stimulus signal 107 is combined at 109 with an input signal for the MEMS device 102, e.g., a bias signal for the MEMS device 102. The combination of the input signal and the digital stimulus signal 107 is provided to the MEMS device 102 via a digital-to-analog converter (DAC) 106 and an analog amplifier 108. The DAC 106 is configured to convert the combined signal to an analog stimulus signal, and the analog amplifier 108 amplifies the output of the DAC 106. One embodiment of the signal injection function 104 is provided in FIG. 2 and described in more detail below.

[0013] The analog stimulus signal initiated by the signal injection function 104 results in a corresponding analog output signal from the MEMS device 102 carrying data enabling the collection of intrinsic and random components from the MEMS device 102. The system 100 includes a transimpedance amplifier 112 coupled to the output of the MEMS device 102. In an embodiment having more than one MEMS device 102, one transimpedance amplifier 112 is provided for each MEMS device 102. The transimpedance amplifier 112 receives and amplifies the output of the MEMS device 102 and provides the amplified output to an analog-to-digital converter 114 to convert the amplified output to the digital domain. This digital version of the output of the MEMS device 102 is then processed by an output generation function 116, when executed on the processor 103, to resolve the three component output signal 110: a standard (e.g., motion) component, an intrinsic component, and a random component. One embodiment of the output generation function 116 is shown by way of example in FIG. 3.

[0014] The processor 103 may be implemented using one or more processors, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), controllers, or other circuits used to execute instructions in electronic circuits. The storage medium 105 may include any available storage medium (or computer readable medium) that can be accessed by a general purpose or special purpose computer or processor, or any programmable logic device. Suitable computer readable media may include storage or memory media such as semiconductor media, magnetic media, and / or optical media, and may be implemented as a program product that includes instructions stored in a non-transitory computer readable medium, such as a random access memory (RAM), a read only memory (ROM), a non-volatile RAM, an electrically erasable programmable ROM, a flash memory, or other storage medium.

[0015] In this embodiment, system 100 provides three component output signals 110 to separate functions. First, the standard (e.g., motion) components of the three component output signals 110 are provided, for example, to a navigation / guidance system 120 for use in providing data for the navigation / guidance system 120 to perform, for example, vehicle navigation and guidance functions. Additionally, system 100 provides a unique component of the three component output signals 110 to a provenance function 122 to provide data for verifying the integrity of system 100. Finally, system 100 provides a random component of the three component output signals 110 to a random number generator 124 for use, for example, in cryptographic processes.

[0016] The operation of the output generation function 116 and the signal injection function 104 are coordinated by the processor 103 such that the three component output signals 110 can be extracted from the output signal from the MEMS device 102 .

[0017] In operation, the signal injection function 104 generates a signal that is injected into the MEMS device 102. In one embodiment, this signal is used to modify an existing signal input to the MEMS device 102, such as a bias signal. The signal from the signal injection function 104 is passed to the MEMS device 102 via a digital-to-analog converter 106 and an analog amplifier 108. The injected signal is processed by the MEMS device 102 while the MEMS device 102 performs its normal or standard function. The output of the MEMS device 102 is then passed by a transimpedance amplifier 112 and an analog-to-digital converter 114 to an output generation function 116. The output generation function 116 then extracts the three component output signals 110 and provides these components to a navigation / guidance system 120, a provenance function 122, and a random number generator 124.

[0018] In some embodiments, the signal injection function 104 limits the injection of the signal into the MEMS device 102 to times when the system 100 is not operating to perform its standard functions, such as sensing motion. Yet, in other embodiments, it may be when the system 100 is performing its standard functions. For example, upon sensing motion, the signal injection function 104 may inject a signal into the MEMS device 102, thereby allowing the system 100 to collect the unique and random components, while discarding the standard (motion) components to avoid increasing the error rate of the system 100. Thus, in both cases, injecting the signal into the MEMS device 102 does not interfere with the normal or standard operation of the system 100.

[0019] In other embodiments, the signal injection function 104 may increase the rate of errors in the system 100. However, with proper design of the signal injection function 104 and the output generation function 116, the increased error caused by injecting a signal into the MEMS device 102 does not prevent the system 100 from operating properly. Furthermore, when the MEMS device 102 includes multiple redundant MEMS sensors, the redundant MEMS sensors can receive bias inputs at different times to allow for better error distribution.

[0020] 2 and 3 provide examples of functions implementing the signal injection function 104 and the output generation function 116, respectively, that allow the operation of the system 100 even when the system 100 is in motion (in motion). The functions shown in FIGS. 2 and 3 are described in more detail below. Note that FIGS. 2 and 4B show that the signal injection function 104 of FIG. 1 generates a modified bias signal by adding high frequency components to the bias signal. It is understood that this embodiment of the signal injection function is provided by way of example and not by way of limitation. In other embodiments, the signal injection function 104 may modify a different signal used in the MEMS device 102, may modify the signal by injecting a signal at a different frequency (lower or higher), or may modify the signal input to the MEMS device 102 in some other way, as long as the injected signal can be separated from the normal output of the MEMS device 102 by the output generation function 116.

[0021] As mentioned above, in some embodiments, the MEMS device 102 includes one or more MEMS sensors. For example, the system 100 may include a motion sensor on each axis (X-axis, Y-axis, and Z-axis) of the system 100 to track motion in each axis of three-dimensional space. In such an embodiment, the system 100 includes at least one MEMS device 102 for each axis. In operation, the output generation function 116 separates the three component output signals 110 (motion, intrinsic, and random) for each MEMS device 102 (X-axis, Y-axis, and Z-axis). In this embodiment, the output generation function 116 also combines the random and intrinsic components for the three axes, respectively, to generate an overall intrinsic and overall random component for the system 100.

[0022] Furthermore, it should be noted that system 100 may be implemented by upgrading existing navigation / guidance systems that include MEMS sensors to include the transformation functions implemented in signal injection function 104 and output generation function 116. In this manner, existing systems may be augmented with improved cryptography using a random component and an improved PUF using a unique component.

[0023] Figure 2 is a flow chart of one embodiment of a process 200 for the signal injection function 104 of Figure 1. The process 200 is configured to operate in two modes. In one mode, the process 200 uses a modified bias signal for the MEMS device 102. In a second mode, the bias signal is not modified such that the MEMS device 102 uses a conventional (motional) bias signal. When the process 200 operates only in this second mode, the MEMS device 102 operates in the conventional sense.

[0024] Which mode is used by the process 200 is defined by a time division sequence (TPS). When TPS is equal to 1, the process 200 injects a modified bias signal into the MEMS device 102, and when TPS is equal to 0, the process 200 injects a standard bias signal into the MEMS device 102. Advantageously, this allows for the generation of the random and intrinsic components only when needed. At all other times, the TPS can be set to 0 and the MEMS device 102 operates normally. Thus, any error in the standard (motion) component due to the injection of the modified bias signal is limited to when the process 200 is called upon to generate the intrinsic and random components. Otherwise, the MEMS device 102 operates within normal parameters.

[0025] The process 200 begins with the generation of a time division sequence (TPS) at block 202, which defines the time at which the bias signal is modified to generate unique and random components at the output of the MEMS device 102. The process 200 further generates a modified bias signal at block 204. In one embodiment, the modified bias signal includes a high frequency component (High Frequency Modulation Bias (HFMB)[M:0], where M is set equal to 1) that is added to the bias signal. In other embodiments, other signals, for example at other frequencies, can be added to the normal bias signal to generate the modified bias signal, as long as the signals do not introduce too much error into the operation of the MEMS device 102. Furthermore, using high frequency components has the advantage of providing a higher random bit rate in the random component of the output of the MEMS device 102.

[0026] 4A is a frequency domain graph of one embodiment of a standard bias signal 400A when TPS is equal to 0. As shown, the standard bias signal 400A has a low frequency component 402 (also called motional bias). Above this low frequency range (LP), the amplitude of the bias signal 400A is fairly stable, except for some noise in the region 404 above the low frequency component 402. Thus, the selection of the high frequency component should not interfere with the normal operation of the MEMS device 102, but rather with a potentially slight increase in the error of the MEMS device 102.

[0027] FIG. 4B is a frequency domain graph of the modified bias signal 400B when TPS is equal to 1. As shown, the modified bias signal 400B also has a low frequency component 402 corresponding to the normal operation of the MEMS device 102. The modified bias signal 400B also includes a high frequency component 406 (high frequency modulated bias (HFMB[M:0])) that is added to the bias signal to enable the generation of the intrinsic and random components. In this example, the frequency content of the high frequency component 406 spans the band pass (BP) and high pass regions of the frequency spectrum of the bias signal. Note that the amplitude of the high frequency component 406 is significantly smaller than the amplitude of the low frequency component 402. The amplitude of the high frequency component 406 is selected to be high enough to generate the intrinsic and random components, while being low enough to reduce errors introduced to the MEMS device 102 when used to generate both the motion component and the intrinsic and random components. Note that the modified bias signal 400B may include additional signals at frequencies other than the illustrated high frequency component 406.

[0028] At block 206, the process 200 determines whether the TPS value is equal to 1. If not, the process 200 sets the value written to the digital-to-analog converter 106 to the standard (motion) bias at 208. If not, the process 200 mixes the high frequency modulation bias with the standard (motion) bias and sets the value to be written to the digital-to-analog converter 106 at 210. In either case, the selected value is written to the digital-to-analog converter 106 at block 212.

[0029] FIG. 3 is a flow chart of an embodiment of a process 300 for the output generation function 116 of FIG. 1. The process 300 also uses the time division sequence defined above to distinguish between the two operating modes. Due to the processing delay between the signal injection function 104 and the output generation function 116, the process 300 generates a delayed time division sequence (DTPS) in block 302 that is used to determine the mode of the process 300. In block 304, the process 300 generates a delayed high frequency modulation bias (DHFMB)[N:0] signal. The DHFMB signal may be used to help correct some of the motion component errors introduced by injecting the HDMB signal into the bias signal. Modulating the bias input to the system 100 (e.g., block 210) can, as a by-product, introduce noise into the measured signal (see the description of block 306 below). In this example, modulation is introduced at a separate frequency to allow it to be removed later by filtering. However, some errors may still remain and this delayed copy of the signal (DHFMB) may be useful to compensate the output of the system 100. The DHFMB signal may also be useful in cases where such a clear separation between the frequency of the motion component and the frequency of the injected signal is not possible.

[0030] The process 300 reads the value in the analog-to-digital converter 114 in block 306. This data is buffered as ADC sequence [N:0] in block 308 so that the data from the MEMS device 102 can be block processed to generate the three component output signals 110 of the system 100 of FIG.

[0031] The data in the buffer is processed through three different filters to provide three component output signals 110. First, the data is processed through a low pass filter in block 310 to generate a normal (motion) component provided in block 312. The low pass filter substantially removes the effects of the high frequency modulation bias, and therefore the output of the low pass filter is simply the motion component of the output of the MEMS device 102. Secondly, in block 314, the data from the buffer is also passed through a band pass filter that passes the low portion of the high frequency modulation bias signal (see FIG. 4B) to generate a signal HFMB_L. The HFMB_L signal is used to provide a unique ID in block 316. Finally, the data from the buffer is processed by a high pass filter that includes the high portion of the high frequency modulation bias signal (HFMB_H), as seen in FIG. 4B. The HFMB_H signal is used to generate a random bit sequence provided in block 320.

[0032] Returning to block 318, the output of the high pass filter is further processed to generate a random bit sequence provided in block 320. To do this, the process 300 uses the parity of the HFMB_H signal data with the high frequency modulation bias added (DTPS=1) and the data without the high frequency modulation bias added (DTPS=0). In block 332, the process 300 determines whether DTPS is equal to 1, and if so, a variable A is set to the parity (HFMB_H[N / 2:0]). Otherwise, when DTPS is equal to 0, a variable B is set to the parity (HFMB_H[N / 2:0]) in block 336. In block 338, the process 300 compares A to B. If A≧B, a value 1 is output in block 340 and added to the random sequence in block 320. Otherwise, if A is less than B, a value 0 is output in block 342 and added to the random sequence in block 320.

[0033] Since the frequency of the signal HFMB_H is high, the output of block 320 is a random sequence. Furthermore, the parity of the HFMB_H signal is a random number that is highly dependent on the noise of the system. Since the value of the parity of the HFMB_H signal with modulation is compared with the HFMB_H signal without modulation, it is impossible to predict which one with HFMB or without HFMB will be larger to give a random bit output.

[0034] Returning to block 314, the output of the bandpass filter is further processed to generate a unique ID, which is provided in block 316. To do this, the process 300 uses an average of the HFMB_L signal data with the high frequency modulation bias added (DTPS=1) and the data without the high frequency modulation bias added (DTPS=0). In block 322, the process 300 determines whether DTPS is equal to 1, and if so, a variable A is set to AVG(HFMB_L[N / 2:0]). Otherwise, when DTPS is equal to 0, a variable B is set to AVG(HFMB_L[N / 2:0]) in block 324. In block 326, the process 300 compares A to B. If A≧B, a value of 1 is output in block 328 and added to the unique ID in block 316. Otherwise, if A is less than B, a value of 0 is output in block 330 and added to the unique ID in block 316.

[0035] The unique ID produces an output that is sensitive to the sum of the difference between the values ​​output by the bandpass filter (HFMB_L) with bias modulated and the values ​​output by the bandpass filter (HFMB_L) without bias modulated. By using a relative measurement technique, some common mode noise effects can be cancelled out. The bias modulation is selected such that MEMS device process variations produce different winners across different amplitudes and frequencies. Averaging is used to obtain a more stable result.

[0036] Note that in the embodiment of Figure 3, the unique ID is generated based on the output of a bandpass filter applied to the ADC buffer, and the random bit sequence is generated based on the output of a highpass filter. In other embodiments, the unique ID and random bit sequence may be generated by filtering data in other selected frequency ranges of the output of the ADC.

[0037] 5 is a block diagram of a system 500 having multiple redundant microelectromechanical systems (MEMS) devices 502-1-502-N with a transformation function that allows for generation of unique and random components in addition to the mixed output of the redundant MEMS devices 502-1-502-N. System 500 has similarities to system 100 of FIG. 1. For simplicity, common components of FIG. 5 are identified with the same reference numbers used in FIG. 1 and are constructed and implemented as described above. Accordingly, these components will not be described in detail herein.

[0038] It should be noted that redundant MEMS devices 502-1 through 502-N may be added to modify a system using a single MEMS device, or may already be available in an existing system to improve output resolution through averaging of the outputs of multiple MEMS devices.

[0039] As used herein, "redundant MEMS devices" refers to multiple MEMS devices configured to provide the same output measurement. For example, if the redundant MEMS devices are accelerometers, the multiple MEMS devices are configured to measure motion about the same axis, such as the X-axis, rather than a MEMS device aligned with a different axis. A function is applied to the output of redundant MEMS devices 502-1 through 502-N, for example averaging the outputs of multiple MEMS devices 502-1 through 502-N to provide a curved output for system 500.

[0040] In this embodiment, multiple MEMS devices 502-1 to 502-N may be used to help separate non-motion data from motion data where the non-motion data is common. Advantageously, redundant MEMS devices 502-1 to 502-N are used so that the common portions of the sensor outputs (non-motion data) can help the algorithm distinguish the motion components.

[0041] FIG. 6 is a flow chart of one embodiment of a process 600 for the output generation function 504 of the system of FIG. 5. The process 600 averages the outputs of the multiple MEMS devices 502-1-502-N in block 602. In block 604, the process 600 calculates the difference between the average of the outputs of the multiple MEMS devices 502-1-502-N and the output of each individual MEMS device 502-1-502-N to isolate the non-motion (non-standard) components. For each MEMS device 502-1-502-N, the non-standard components, which include both intrinsic and random components, may be processed by a low pass filter to obtain an intrinsic component in block 606 and through a high pass filter to generate a random component in block 608. The intrinsic and random components for each of the MEMS devices 502-1-502-N may then be combined to generate the intrinsic and random components of the system 500. Thus, redundant sensors may improve the above-described methods.

[0042] SYSTEM USING NODES HAVING MEMS DEVICES TO ENABLE SECURE COMMUNICATIONS - Patent application 7 is a block diagram of a system 700 that includes secure communications between nodes 701 in an exclusive community over a network 703 using unique and random components generated by one or more microelectromechanical systems (MEMS) devices 702 in the nodes 701. Example protocols for creating unique and random components from MEMS devices are described in more detail above with respect to FIGS. 1, 2, 3, 4A, 4B, 5, and / or 6.

[0043] In Figure 7, system 700 is shown with two nodes 701, labeled as node 701-A and node 701-B. It should be understood that system 700 may include any suitable number of nodes 701, and thus system 700 is not limited to a system having two nodes 701. Additionally, Figure 7 shows that node 701-A is coupled to node 701-B via a network 703. It should be understood that network 703 may comprise one or more of wireless access points, communication links, a wide area network (WAN), a local area network (LAN) such as an Ethernet network, a group of cables, optical fibers, direct connections, or any other suitable system for communicatively coupling the nodes 701 of system 700.

[0044] Node 701-A and node 701-B each include similar components for secure communications in system 700. Thus, for the sake of brevity and simplicity, only node 701-A will be described in detail using reference numbers for each component followed by the designator "-A." It will be understood that similar components are also included in node 701-B, which are identified by the same reference numbers followed by the designator "-B."

[0045] The node 701-A includes a MEMS device 702-A. In some embodiments, the MEMS device 702-A supports two or more functions for the node 701-A. For example, the MEMS device 702-A provides an output 704-A that includes a standard component, a unique component, and a random component. A first function supported by the MEMS device 702-A uses the standard component of the output 704-A. For example, the MEMS device 702-A may include a sensor, and the standard component of the output 704-A may be acceleration, rotational speed, pressure, temperature, airflow, or other measurements associated with the MEMS sensor. A second function supported by the MEMS device 702-A uses the unique and random components of the output 704-A for secure communication with other nodes 701 of the system 700. As described below, MEMS device 702-A is a device that allows for the collection of (1) an intrinsic component due to process variations during manufacturing that produce unique aspects of MEMS device 702-A, and (2) a random component from noise within MEMS device 702-A.

[0046] Node 701-A also includes a system 706-A having one or more processors and memory for storing software or instructions for implementing functions for node 701-A. Node 701-A includes a standard function 707-A for supporting a first function of node 701-A. Standard function 707-A uses, among other things, a standard component of output 704-A such that node 701-A implements its standard function implemented based on the output of MEMS device 702-A.

[0047] System 706-A of node 701-A also includes instructions or software for implementing a second function of node 701-A. Specifically, system 706-A also includes a provenance function 708-A, a random number generator (RNG) 710-A, an encryption / decryption circuit 712-A, and a verification / validation function 714-A. RNG 710-A uses a random component from MEMS device 702-A to generate random numbers used by encryption / decryption circuit 712-A to securely transmit and receive data over network 703. Furthermore, provenance function 708-A uses a unique component from MEMS device 702-A to implement a physically unclonable function (PUF) for node 701-A. Node 701-A also uses provenance function 708-A in conjunction with verification / validation function 714-A to implement authentication that data received or transmitted by node 701-A is from an authorized node in system 700.

[0048] In FIG. 7, the system 700 also includes a master node 800 that is used to set up or manage trust relationships between the nodes 701 of the system 700 that are in the exclusive community. Specifically, in one embodiment, the system 700 uses registry entries to set up / manage the trust relationships. To do this, for example, each respective node 701 uses a unique component of the provenance function 708 and the output 704 of the MEMS device 702 of each respective node 701 to generate several registries (e.g., thousands or tens of thousands of registries). These registries uniquely identify the particular node 701 as part of the trusted system 700. The master node 800 takes the registries generated by each node 701, for example, when the node is configured, and provides the registries to all other nodes 701 in the system 700. These registries are stored as part of the provenance function 708 of each node 701 in the exclusive community, and effectively become a library of authorized users in the exclusive community of the system 700. By using these registry values, a given node will only recognize data received from similarly equipped nodes. When data is received over the network 703, the receiving node uses the registries in the provenance function 708 in conjunction with the verification / validation function 714 to authenticate that the input originated from an authorized user. For example, the receiving node may verify that the node 701 sending the data generated an output of the provenance function 708 that corresponds to one of the registries provided by the master node 800 and included in its own provenance function 708.

[0049] Node 701-A also includes a transceiver 716-A that provides an interface for communicating with other nodes 701, such as node 701-B, over network 703. Although a single transceiver 716-A is shown in Figure 7, it should be understood that the single transceiver 716-A may be replaced with separate and distinct transmitter and receiver components.

[0050] In other embodiments, the master node 800 may use mechanisms other than registry values ​​to set up or manage trust relationships between nodes 701. For example, in another embodiment, the master node 800 acts as a certificate authority (CA) for applications using asymmetric cryptography and where a CA can issue digital certificates.

[0051] Glossary The following terms are defined for purposes of this specification and apply to the various embodiments described in more detail above.

[0052] Random Bit Generator (RBG): A device or algorithm that outputs a random sequence that is virtually indistinguishable from statistically independent and unbiased bits.

[0053] Deterministic Random Bit Generator (DRBG): A RBG that includes a DRBG mechanism and has (at least initially) access to a source of entropy input. A DRBG generates a sequence of bits from a secret initial value called a seed, along with other possible inputs. A DRBG is often called a pseudorandom number (or bit) generator.

[0054] Entropy Source: A combination of a noise source, a health test, and an optional tuning component that generates the random bitstring used by the RBG.

[0055] Noise Source: A component of an entropy source that contains non-deterministic entropy generating activity (e.g., thermal noise or hard drive seek times).

[0056] True Random Number Generator: A device or algorithm that generates numbers by extracting randomness from physical phenomena.

[0057] Random Number Generator: A device or algorithm that produces a sequence of numbers or symbols that cannot be reasonably predicted better than random chance.

[0058] Exemplary embodiments Although specific embodiments have been illustrated and described herein, it will be understood by those skilled in the art that any configuration which is expected to achieve the same purpose may be substituted for the specific embodiments shown. Therefore, it is manifestly intended that this invention be limited only by the claims and the equivalents thereof.

[0059] Example 1 includes a system including a microelectromechanical systems (MEMS) device for generating an output signal at an output of the MEMS device, the MEMS device receiving at least one input signal at an input of the MEMS device, a storage medium configured to store a signal injection function and an output generation function, and a processor in communication with the MEMS device and the storage medium, the processor configured to perform the signal injection function to selectively modify the at least one input signal to generate a modified input signal and provide the modified input signal to the input of the MEMS device, the processor further configured to perform the output generation function to extract a random component and a unique component from the output signal at the output of the MEMS device, the random component and the unique component being generated by the MEMS device based on the modified at least one input signal.

[0060] Example 2 includes the system of Example 1, wherein the MEMS device is capable of collecting (1) an intrinsic component resulting from process variations during manufacturing that produce unique aspects in the MEMS device, and (2) a random sequence from noise in the MEMS device.

[0061] Example 3 includes the system of any of examples 1 and 2, wherein the MEMS device is a motion sensor, and the signal injection function is configured to modify at least one input signal for the MEMS device when the MEMS device is not operating to detect motion.

[0062] Example 4 includes the system of any of Examples 1-3, further including a digital-to-analog converter; an amplifier coupled in series with the digital-to-analog converter; the digital-to-analog converter configured to receive a modified input signal from the signal injection function, an output of the amplifier configured to be coupled to an input of the MEMS device; a transimpedance amplifier; and an analog-to-digital converter coupled in series with the transimpedance amplifier, the transimpedance amplifier configured to receive the output of the MEMS device, and the analog-to-digital converter configured to provide an input to the output generating function.

[0063] Example 5 includes the system of any one of Examples 1-4, wherein the signal injection function is configured to inject a digital stimulus signal in a frequency range selected to enable the output generation function to extract a unique component, a random component, and a standard component from an output signal at the output of the MEMS device.

[0064] Example 6 includes the system of any one of examples 1-5, wherein the signal injection function is configured to inject a high frequency component into the bias signal of the MEMS device based on the time division sequence.

[0065] Example 7 includes the system of example 6, wherein the processor coordinates operation of the output generation function with the signal injection function.

[0066] Example 8 includes the system of example 6, wherein the output generating function is configured to generate the unique component based on an output of a band pass filter applied to an output signal of the MEMS device, and to generate the random component based on an output of a high pass filter applied to the output of the MEMS device.

[0067] Example 9 includes the system of any of Examples 1-8, wherein the output generating function also generates a standard component that corresponds to a standard function of the MEMS device.

[0068] Example 10 includes the system of any of Examples 1-9, wherein the MEMS device includes a plurality of MEMS devices, each of the plurality of MEMS devices generating the unique component and the random component.

[0069] Example 11 includes the system of example 10, wherein the output generating function combines the respective random and unique components from each of the plurality of MEMS devices to generate the unique and random components for the system.

[0070] Example 12 includes a method for generating a unique component and a random component at an output of a microelectromechanical system (MEMS) device, the method including receiving an input signal for the MEMS device, selectively modifying the input signal, providing the modified input signal to the MEMS device, receiving an output signal from the MEMS device, and extracting the random component and the unique component from the output signal of the MEMS device, wherein the unique component is generated based on process variations during manufacturing of the MEMS device and the random component is generated from noise in the MEMS device.

[0071] Example 13 includes the method of example 12, in which receiving the input signal for the MEMS device includes receiving a bias signal for the MEMS device.

[0072] Example 14 includes the method of any of examples 12 and 13, wherein selectively modifying the input signal includes adding a digital stimulus signal to the input signal in a frequency range selected to enable extraction of unique components, random components, and standard components from the output signal at the output of the MEMS device.

[0073] Example 15 includes the method of any of examples 12-14, wherein extracting the unique component and the random component includes extracting a standard component.

[0074] Example 16 includes the method of any of Examples 12 to 15, wherein selectively modifying the input signal includes generating a time division sequence, generating high frequency components, modifying the input signal using the high frequency components when the time division sequence is high, and not modifying the input signal when the time division sequence is low.

[0075] Example 17 includes the method of example 16, in which extracting the random component includes applying a high pass filter to the output signal, extracting the characteristic component includes applying a band pass filter to the output signal, and extracting the standard component includes low pass filtering the output signal.

[0076] Example 18 includes a system including a plurality of nodes and a master node in communication with the plurality of nodes, the master node configured to set up a trusted community among the plurality of nodes, each of the plurality of nodes including a MEMS device that generates an output including a standard component, a unique component, and a random component; a transceiver communicatively coupled to a corresponding transceiver of another of the plurality of nodes, the transceiver configured to transmit data to the transceiver of the other of the plurality of nodes and receive data from the transceiver of the other of the plurality of nodes; a processor coupled to the MEMS device to receive the output of the MEMS device and coupled to the transceiver, the processor configured to execute code of a random number generator configured to generate a random number using the random component of the output of the MEMS device; an encryption / decryption function configured to use the random numbers from the random number generator to securely transmit and receive data via the transceiver; a provenance function configured to implement a physically unclonable function (PUF) for the node using the unique component from the output of the MEMS device; and a verification / validation function configured to authenticate data received or transmitted by the transceiver in conjunction with a prevention function.

[0077] Example 19 includes the system of example 18, wherein the source function, when executed on the processor, is further configured to generate a plurality of registry values ​​using the unique components and provide the registry values ​​to the master node, and the source function is further configured to receive the registry values ​​from other nodes in the system.

[0078] Example 20 includes the system of example 18, wherein the master node acts as a certificate authority and issues digital certificates to nodes for use in secure communications within the trusted community.

Claims

1. A system (100), comprising: a microelectromechanical system (MEMS) device for generating an output signal at an output of the MEMS device (102), the MEMS device receiving at least one input signal at an input of the MEMS device; a storage medium (105) configured to store a signal injection function and an output generation function; a processor (103) in communication with the MEMS device and the storage medium, configured to perform the signal injection function (104) to selectively modify the at least one input signal to generate a modified input signal and provide the modified input signal to the input of the MEMS device, and further configured to perform the output generation function (116) to extract a random component and a unique component from the output signal at the output of the MEMS device, wherein the random component and the unique component are generated by the MEMS device based on the modified at least one input signal.

2. The system of claim 1 , wherein the MEMS device comprises a MEMS device that allows for the collection of (1) an intrinsic component due to process variations during manufacturing that produce unique aspects in the MEMS device and (2) a random sequence from noise within the MEMS device.

3. 1. A method for generating unique and random components at the output of a micro-electro-mechanical system (MEMS) device, the method comprising: receiving an input signal for the MEMS device; selectively modifying the input signal; providing the modified input signal to the MEMS device; receiving an output signal from the MEMS device; extracting the random component and the intrinsic component from the output signal of the MEMS device, the intrinsic component being generated based on process variations during manufacturing of the MEMS device and the random component being generated from noise within the MEMS device.