# An Embedded Sensor Node Microcontroller with Crypto-Processors
## 1 Introduction
The attacks on the link layer can purposely introduce data collisions. By these collisions bits are flipped in the collided packets, which will cause a rejection during packet reception. The repeated collisions can lead to resource exhaustion and unfairness [13]. A typical solution for handling packet collisions is to use error-correcting-codes [14]. However, an attacker can theoretically introduce more errors as compensated by the code. The exhaustion attempts can be somewhat prevented by applying rate limits in the Media Access Control (MAC) protocol or by using time-division multiplexing. A further approach to prevent an unfairness threat is the usage of shorter frames so that an individual node can capture the channel for a short time only. Figure 1: Attacks will try to compromise the security on all communication layers. The network and routing layer is also prone to different types of malicious attacks [15]. Straight attacks on the routing layer are data spoofing, altering and replaying. Those attacks may disrupt the network traffic by creating routing loops, generating false error messages, extending and shortening routing paths, changing end-to-end latency, _etc._ An efficient countermeasure against data spoofing and altering is the introduction of a message authentication code. In addition, an adversary may attempt to create a sinkhole or a wormhole in the network topology by introducing malicious nodes. Sinkhole attacks use malicious nodes, which look more attractive to the neighbouring nodes according to the routing algorithm. Thus, the data traffic is forwarded towards a metaphorical sinkhole with an adversary in its centre. The wormhole attack uses two malicious nodes that create a low-latency link to a base station. Nodes located multiple hops away from the base station are convinced to forward their data to the created wormhole and, therefore, the data from distant nodes is tunnelled towards the wormhole created by an adversary. The wormhole attack is usually combined with the Sybil attack [16], where the compromised node provides multiple identities to the network or with the selective forwarding attack, where a malicious node refuses to forward messages and drop them. Hello flooding is an attack that targets the sensor networks, which use the broadcast of HELLO packets for announcing the node presence in the network [17]. By sending a HELLO packet from a powerful laptop-class sender to all nodes in the network, the attacker can convince some nodes in the network that they are in the range of the adversary node and make them to send their data into oblivion. An acknowledgment spoofing attack targets the protocols that rely on sending link layer acknowledgments to confirm the quality of a link. Spoofing the acknowledgment information may help an attacker to manipulate the network by presenting weak links as strong or dead nodes as alive. The resilience against the routing and network layer attacks can be improved by authentication, identity verification, link-layer encryption, authenticated broadcast and bidirectional link verification. However, the sinkhole and the wormhole attacks are sometimes difficult to defend. They may require a careful design of routing protocols. Protocols can potentially improve the resilience against wormhole attacks using geographic information [18]. Flooding and desynchronization are two possible attacks at the transport layer. The flooding attack uses a malicious sender, which sends a large number of connection requests to the victim. The victim allocates resources to maintain a state of the connection. The attack results in the exhaustion of memory resources of the victim node. Limiting the number of available connections or using the form of a puzzle solving algorithm [19] may help to defend flooding attack. Desynchronization refers to the attempts to disrupt an existing connection between nodes. As a consequence, the end node will repeatedly request for data retransmission. A possible solution is to require an authentication of the packets communicated among hosts.