search.noResults

search.searching

dataCollection.invalidEmail
note.createNoteMessage

search.noResults

search.searching

orderForm.title

orderForm.productCode
orderForm.description
orderForm.quantity
orderForm.itemPrice
orderForm.price
orderForm.totalPrice
orderForm.deliveryDetails.billingAddress
orderForm.deliveryDetails.deliveryAddress
orderForm.noItems
ADVERTISEMENT FEATURE COVER STORY


Improved Security in IoT Systems


Words by Christian Krieber & Thibault Richard, EBV Elektronik T


he rapid growth of the Internet of Things (IoT) is making increasing demands on microcontrollers (MCUs) for both performance and connectivity. Local processing is needed at the edge to perform ever more complex processing of data from a range of sensors, often using machine-learning techniques. Many systems consist of networks of IoT nodes. Data is also sent to the cloud for monitoring, storage and more detailed analysis. These systems require a high level of security to protect them from attacks and malware. Security is essential to authenticate IoT nodes, protect data confidentiality and system functionality. It is also important in safety-critical systems, such as advanced driver assistance systems and autonomous vehicles, to ensure that safety functions are not compromised.


SECURITY REQUIREMENTS IN IOT There are regular news stories of cyber- attacks, by criminals or governments, on industrial and commercial systems. The attacks are becoming more sophisticated and targeting larger numbers of devices. In 2010, the Stuxnet worm is thought


to have caused significant damage to Iran’s nuclear processing plants. This may have been a deliberate attack by another state. The Heartbleed bug in the OpenSSL security software (used by many websites) was discovered in 2014. It was used to steal information from several systems, including the Canada Revenue Service and a large US health service provider. The 2016 Mirai malware turned large numbers of online consumer devices, such as surveillance cameras and routers, into ‘bots’. These botnets have been used to launch very disruptive distributed denial of service (DDoS) attacks on many systems. Researchers regularly find new vulnerabilities. These can be software bugs, such as Heartbleed, or hardware problems, like the Meltdown flaw found in various microprocessors, including some Arm cores.


8 DECEMBER/JANUARY 2020 | ELECTRONICS


Malicious access to a single IoT node is damaging enough by itself. But the larger risk is that, by spoofing the identity of communications, an unlimited number of devices could be compromised, thus enabling the rapid proliferation of malicious software. There are several features that can improve the security of a system: providing every device with a unique identity for authentication that cannot be faked; implementing secure authentication and sharing of credentials between a node and the network; assuring the functionality of a device by validating the installed software and updates; using cryptography for all network communication, to protect information stored in memory. To achieve the required level of security, the design of the MCU must take input from multiple domains: software, security, systems analysis, etc. This is no longer just a silicon design problem, as designers also need to consider human factors and interactions with the outside world. However, IoT is a price-constrained market, and so the extra security must be achieved without significant increases in complexity or cost.


HARDWARE SECURITY FEATURES There are several hardware functions that can be used to increase the security of a system. These can be provided by an external security element, or, in some instances, integrated in the MCU. Secure boot is an essential feature for guaranteeing that the firmware being executed by the processor is genuine, and has not been tampered with. The MCU starts by executing a bootloader from ROM that verifies the signature of the code in flash before running it. The code may be further protected by enabling flash encryption.


“To achieve the


required level of security, the design of the MCU must take input from multiple domains: software, security, systems analysis, etc. This is no longer just a silicon design problem...”


A physical unclonable function (PUF) utilises the random variations in semiconductor devices to create a hardware structure that acts as a unique identifier, in the same way that random variations in the lines on your skin give you a unique fingerprint. A PUF and associated logic can be used for secure key generation and management. PUF enables secure device authentication, flexible key provisioning and asset management. It protects the root of trust and the end- to-end security required for communication. And it ensures that data encrypted by a specific device can only be decrypted by the same device, so that data is secure, even if copied to another system. Subsequently, the Arm processor core implements a hardware security


system called TrustZone. This can be used for runtime protection of assets, such as private data and passwords, by ensuring that they are only ever handled in a secure environment. TrustZone implements two hardware “worlds”: secure and non-secure. The non-secure world provides a flexible execution environment with no access to security-critical registers and data. Non-secure code can only access secured resources via specific interfaces exposed by the secure world. The operating system and applications typically run in the non-secure world, while a smaller subset of trusted code runs in the secure world. This reduces the amount of code that needs to be carefully written and audited to ensure security. A true random number generator


(TRNG) is necessary to provide high entropy and ensure that handshake procedures are not vulnerable to replay attack. Other possible features include tamper detection to protect against physical access, a memory protection unit (MPU) for task isolation, hardware


/ ELECTRONICS


Page 1  |  Page 2  |  Page 3  |  Page 4  |  Page 5  |  Page 6  |  Page 7  |  Page 8  |  Page 9  |  Page 10  |  Page 11  |  Page 12  |  Page 13  |  Page 14  |  Page 15  |  Page 16  |  Page 17  |  Page 18  |  Page 19  |  Page 20  |  Page 21  |  Page 22  |  Page 23  |  Page 24  |  Page 25  |  Page 26  |  Page 27  |  Page 28  |  Page 29  |  Page 30  |  Page 31  |  Page 32  |  Page 33  |  Page 34  |  Page 35  |  Page 36  |  Page 37  |  Page 38  |  Page 39  |  Page 40  |  Page 41  |  Page 42  |  Page 43  |  Page 44  |  Page 45  |  Page 46  |  Page 47  |  Page 48  |  Page 49  |  Page 50  |  Page 51  |  Page 52