First, it'll force enemy to allocate more resources for reverse engineering of the captured machine, and it also provides the opportunity for the manufacturer to charge the customer more
I forgot how much of a budget sink the military domain could be.
And I forgot about the case of reverse-engineering and protecting the design, as opposed to protect the signal in operation.
In the multi-cultural environment, misunderstanding is a frequent event. We all are aware of that but sometimes one can make a mistake, me included. I think this is a terminology issue, when each party has different understanding of the same term.
In my understanding, encryption is a measure that protects the message from being read by an unintended recipient. In the ideal world, it's just not necessary because it brings inconvenience to everyone and effectively makes our live harder. While the other measures, such as check summing to protect message integrity, scrambling and other spectrum-shaping techniques to improve EMC, are not usually called encryption because the pursued goals are entirely different.
Perhaps that's the root cause. I really have no idea how encryption can help within a single machine. Perhaps the best use of cryptography in that case would be a digital signing to prevent proliferation of counterfeit parts. That's my best guess,
I'm just trying to be open-minded to extract a bit of sense from every puzzling question. Sorry if you read something that I was not intended to convey.
In my understanding, encryption is a measure that protects the message from being read by an unintended recipient.
Editing was strange and different for me a couple of days ago (I've been on a short vacation so haven't been online much), but it has gone back to the old editor for me now.
Often, "secure" is a mix of three completely separate concepts:
- Privacy – the information is secure from observation by others
- Authenticity – the information is from a trusted party
- Integrity - the information was not modified or constructed by an untrusted party
It is the establishment of such keystreams between parties when outsiders can see all messages passed that is the hard part (and nowadays typically involves public key cryptography, which is quite slow/computation-intensive).
For things like intravehicular buses, in cars and aeroplanes and such, privacy is typically not an important goal; it is the authenticity and integrity that makes encryption desirable.
It is the establishment of such keystreams between parties when outsiders can see all messages passed that is the hard part (and nowadays typically involves public key cryptography, which is quite slow/computation-intensive).So small microcontrollers are likely to be kept away from anything like TLS and most handshakes.
For things like intravehicular buses, in cars and aeroplanes and such, privacy is typically not an important goal; it is the authenticity and integrity that makes encryption desirable.Signing might not be as cumbersome as encryption to debug, but the overhead remains, and I imagine some communication bus involve small microcontrollers driving a simple function.
I imagine these will have a rather efficient core, eventually with 32-bit ALU, or perhaps crypto acceleration cores.
However, there are cheap crypto chips like ATECC608A and ATECC608B that can do the handshake externally. With one of these, even public-key crypto is not outside small microcontrollers, even 8-bit ones.
However, even AES can be implemented on a small 8-bit microcontroller. For example, see AVR-AES-faster at github. While the achievable bandwidth is relatively low compared to 32-bitters, it can definitely be done for e.g. CAN message data (payloads only, treating each message as one 128-bit block) or UART.
As I described earlier, the reason for such encryption may not be 'secrecy', but really authenticity and integrity, which is easier to get right with encryption than it is with pure message authentication codes (due to the nonce stuff I mentioned).
I say for the most part because there is one gotcha: function pointers are only ever 16-bit, so if you try to take a pointer to a function stored in flash at an address greater than 0xFFFF, things won't work properly.
void (*p)(void);
void dummy(void) // A function just at the 64K boundary to give some tolerance to array size below.
{
dummy ();
}
void f(void)
{
}
const char array[32725] = {0}; // Large array to force f above 64 K.
void main(void)
{
p = &f;
(*p)();
}
Function pointers should be 24 bit in the large memory model.
So ...
I was browsing ST's website last night and ALL the STM8's are now marked as NRND! Oddly i couldn't find any mention from ST that these parts are being discontinued, has anyone here heard anything?
Not sure if you've heard/read Jay Carlson's "The amazing 1$ microcontroller" article / post : https://jaycarlson.net/microcontrollers/
I was browsing ST's website last night and ALL the STM8's are now marked as NRND! Oddly i couldn't find any mention from ST that these parts are being discontinued, has anyone here heard anything?
I was browsing ST's website last night and ALL the STM8's are now marked as NRND! Oddly i couldn't find any mention from ST that these parts are being discontinued, has anyone here heard anything?
I noticed a couple of weeks ago that the entire AF and AL lines had been marked NRND, but at that time the S and L lines had not been. But you're right, the entire STM8 line as has been now marked as NRND.So much for their 10 year lifetime guarantee. Although maybe this means that they will continue to make them for 10 years from now.
An acquaintance of mine works for a company that uses a lot of STM8 in some of their product lines, and they have heard nothing.
I had a feeling something was up, though, what with the launch of the new STM32C0 line that they have been pushing marketing recently for as "a cost-effective alternative to 8-bit microcontrollers".
I was browsing ST's website last night and ALL the STM8's are now marked as NRND! Oddly i couldn't find any mention from ST that these parts are being discontinued, has anyone here heard anything?
I noticed a couple of weeks ago that the entire AF and AL lines had been marked NRND, but at that time the S and L lines had not been. But you're right, the entire STM8 line as has been now marked as NRND.So much for their 10 year lifetime guarantee. Although maybe this means that they will continue to make them for 10 years from now.
An acquaintance of mine works for a company that uses a lot of STM8 in some of their product lines, and they have heard nothing.
I had a feeling something was up, though, what with the launch of the new STM32C0 line that they have been pushing marketing recently for as "a cost-effective alternative to 8-bit microcontrollers".
The 8051 core is popular in Asia, and seems to have many vendors offering STM8 pinout variants, and many with better peripherals. SiLabs have recently released their 5V wide Vcc 50MHz 8051's and smaller packages are coming in 2023.
Not sure if you've heard/read Jay Carlson's "The amazing 1$ microcontroller" article / post : https://jaycarlson.net/microcontrollers/
How unfortunate RP2040 did not make the list at the solid $1.00 price point, with >100,000 available to ship immediately from DigiKey