@tomkxy The concept of whitelisting I have developed is to protect from the case when someone actually obtained your key. Typically by stealing a node with a personalized ATSHA onboard or even one with soft signing.
According to Atmel, it is not possible to extract the HMAC key from an ATSHA but it is from a software based node.
For this reason, my recommendation is to never use soft signing for nodes "outside".
Now, although it is not considered possible to extract the HMAC key from an ATSHA, the attacker can still use it as it is already personalized for you. So he can just flash whatever and be able to send valid signatures.
However, if you enforce whitelisting on your network, then the receiver of signed messages has to keep a list where each node is listed, and with each node a unique serial. That serial is salted into the signature by the sender and therefore not sniffable. But the attacker will be able to determine the serial from the node stolen. But using that info, he will not be able to deduce the serial of other nodes in the system that you also have decided to accept. So if you detect that a node has been stolen, you remove it from your whitelist, and the attacker will then have to guess both the nodeId and the serial of a node in your whitelist table. The nodeId can be sniffed, but the serial cannot. And therefore I do not under any circumstance allow the serial to be easily accessible by any means.