News Neue ARM-Prozessoren: Cortex-M23 und Cortex-M33


von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

ARM kündigt mit dem Cortex-M23 und Cortex-M33 zwei neue Prozessorvarianten der Cortex-M-Reihe an, auf deren Basis Chiphersteller Mikrocontroller mit verschiedenen Ausstattungen realisieren können. Zu den Herstellern die bereits Produkte angekündigt haben gehören u.a. Analog Devices, STMicroelectronics und Renesas.

Die neuen Prozessorkerne basieren auf der im vorigen Jahr vorgestellten ARMv8-M-Architektur. Als wichtigste Neuerung gegenüber der ARMv7-M(E)-Architektur, auf welcher Cortex M3 und M4 basieren, bietet ARMv8-M ein TrustZone genanntes Sicherheitsfeature, welches einen abgeschotteten Bereich für sicherheitsrelevante Systemsoftware darstellt, in dem z.B. Schlüssel, Authentifizierungsverfahren oder Bootloader getrennt von weniger vertrauenswürdigem Code untergebracht werden können. Mit diesem Sicherheitsfeature zielt ARM auf IoT (Internet of Things)-Geräte, wo einerseits die Sicherheit gegen Angriffe ein wichtiges Thema ist, andererseits Hersteller ihre Geräte aber auch gegen Einblicke oder Modifikationen von außen schützen möchten.

Der Cortex-M23 basiert auf der ARMv8-M "Baseline", und ist mit dem Funktionsumfang ungefähr mit dem Cortex-M3 vergleichbar. Cortex-M33 ("Mainline") bietet höhere Performance und optionale DSP- und FPU-Einheiten, vergleichbar mit Cortex-M4.


von Gerd E. (robberknight)


Lesenswert?

Eine etwas tiefer gehende Beschreibung der Neuigkeiten findet sich hier:
http://www.elektroniknet.de/halbleiter/mikrocontroller/artikel/135091/

von Stefan (Gast)


Lesenswert?

Trustzone Hardware schön und gut, schon heute gibt es Möglichkeiten ein 
IoT System auf der Applikationsschicht zu sichern, selbst den TLS zu 
verstärken. Das was fehlt ist die Zeit in Sicherung zu investieren, gar 
fehlt das Know-how. Man kann die beste hw haben, mit Trustzone, anti 
tampering und trotzdem ein ist die Software Implementierung das 
Sicherheitsleck. Trustzone ist in jedem Smartphone jedem cortexA5 
vorhanden und wird bisher nur kindlich genutzt wenn überhaupt. Trotz 
trustzone kann sich ein Trojaner in meinem Handy einnisten, sonst 
bräuchten wir gar keine Antiviren sw mehr.

von STler (Gast)


Lesenswert?

Andreas S. schrieb:
> Der Cortex-M23 basiert auf der ARMv8-M "Baseline", und ist mit dem
> Funktionsumfang ungefähr mit dem Cortex-M3 vergleichbar. Cortex-M33
> ("Mainline") bietet höhere Performance und optionale DSP- und
> FPU-Einheiten, vergleichbar mit Cortex-M4.


Das ist so sicherlich nicht richtig. In dem von Gerd E. zitierten 
Artikel wird das ja auch schön ausgeführt:
"Der M23 ist wie der M0+ extrem einfach aufgebaut. Er beinhaltet eine 
von Neumann-Architektur (einheitlicher I/O-Bus für Daten und Befehle), 
und unterstützt kein TCM."

Der Unterschied ist halt, dass bei den M23/M33 dieselbe Mikroarchitektur 
mit unterschiedlichen Subprofilen genutzt wird.

Richtig wäre also:
Der M23 ist der Nachfolger vom M0(+) und der M33 vom M3 oder M4 je nach 
Ausstattung (also mit/ohne DSP- bzw. mit/ohne FPU-Einheit) durch den 
MCU-Hersteller.

von M. K. (sylaina)


Lesenswert?

STler schrieb:
> Das ist so sicherlich nicht richtig. In dem von Gerd E. zitierten
> Artikel wird das ja auch schön ausgeführt:

Andreas hat nur zitiert, was ARM auf der Homepage geschrieben hat beim 
M23 ;)

von Robin E. (why_me)


Lesenswert?

M0+ Nachfolger stimmt beim M23 eher.
- 2 stage Pipeline
- low power
- etc.



Einzig ARMv8/TrustZone, AHBS statt AHB-lite und  eibe Trace Macro kamen 
hinzu. Zumindest auf Blockschaltbild-Ebene.

von STler (Gast)


Lesenswert?

M. K. schrieb:
> STler schrieb:
>> Das ist so sicherlich nicht richtig. In dem von Gerd E. zitierten
>> Artikel wird das ja auch schön ausgeführt:
>
> Andreas hat nur zitiert, was ARM auf der Homepage geschrieben hat beim
> M23 ;)

Oh, wo steht das denn?

Ich habe nur gefunden:
"ARM offers:

- Cortex-M0, Cortex M0+, and Cortex-M23 for applications requiring 
minimal cost, power and area
- Cortex-M3, Cortex-M4, and Cortex-M33 for all applications where a 
balance between 32-bit performance and energy efficiency is desirable
- Cortex-M7 is designed for embedded applications requiring high 
performance"

An der Stelle zumindest sortiert ARM selber den M23 als äquivalent zum 
M0(+) ein.

von Hans (Gast)


Lesenswert?

Naja IoT und dann (wieder) keine MMU...

73

von Peter K. (peter_kg)


Lesenswert?

Ich hab zwar überhaupt keine Ahnung von diesem neuen DRM-Gedöhns, aber 
wenn ich was von "Trust-Zone" lese, weiß ich immer schon, das wird 
unseriös. War mit UEFI auch so. Ich glaube das kriegen wir nie wieder 
weg.

von STler (Gast)


Lesenswert?

Peter K. schrieb:
> Ich hab zwar überhaupt keine Ahnung von diesem neuen DRM-Gedöhns,


Wenn man keine Ahnung hat, einfach mal ...


> aber
> wenn ich was von "Trust-Zone" lese, weiß ich immer schon, das wird
> unseriös. War mit UEFI auch so. Ich glaube das kriegen wir nie wieder
> weg.


So ein Unsinn. Das ist doch etwas völlig Unterschiedliches.
Trust Zone ist eine vernünftige Sache und hat mit UEFI überhaupt nix zu 
tun.

von (prx) A. K. (prx)


Lesenswert?

Peter K. schrieb:
> Ich hab zwar überhaupt keine Ahnung [...] aber wenn ich was von [...]
> lese, weiß ich immer schon

Ohne Kommentar.

von M. K. (sylaina)


Lesenswert?

A. K. schrieb:
> Peter K. schrieb:
>> Ich hab zwar überhaupt keine Ahnung [...] aber wenn ich was von [...]
>> lese, weiß ich immer schon
>
> Ohne Kommentar.

Aber ist das jetzt nicht doch ein Kommentar? :D

von (prx) A. K. (prx)


Lesenswert?

Nee, aber nicht doch. Ein Hinweis auf das postfaktische Zeitalter wäre 
ein Kommentar gewesen. ;-)

von Jack (Gast)


Lesenswert?

Peter K. schrieb:
> Ich hab zwar überhaupt keine Ahnung von diesem neuen DRM-Gedöhns,
> aber
> wenn ich was von "Trust-Zone" lese, weiß ich immer schon, das wird
> unseriös. War mit UEFI auch so. Ich glaube das kriegen wir nie wieder
> weg.

Da ist nichts unseriös dran. Die TrustZone ist speziell gesicherter 
Speicherbereich im Microcontroller und privilegierte Prozessorbefehle 
die darauf Zugriff haben. Was du mit diesen Funktionen machst ist dir 
als Programmierer überlassen.

Das Konzept gibt es sowohl bei ARM Cortex-A bzw. anderen Prozessoren 
schon "ewig". Bei Intel x86 sind es zum Beispiel die Protection Rings 0 
- 3. Bei x86 baut man damit zum Beispiel Hypervisor.

ARM arbeitet ebenfalls an einem Hypervisor auf Basis der TrustZone 
(uVisor, der ist allerdings noch nicht fertig sondern tut momentan nur 
so als ob). Was dich nicht davon abhält schon heute selber deine 
Software/Daten in schützenswerte Bereiche, wie zum Beispiel 
Verschlüsselungs-Keys und Algorithmen und normale Bereiche (LED blinke 
lassen ...) aufzuteilen. Erstere packst du in die TrustZone, letztere 
lässt du normal ausführen.

Warum du meinst das mit UEFI vergleichen zu müssen ... <kopfschüttel>

Wie sicher ist die TrustZone? Eine alte Cortex-A 
TrustZone-Impementierung in einem speziellen SoC wurde vor einiger Zeit 
geknackt. Da war es eine Mischung aus fehlerhafter Hardware- und 
Firmware. Kann also passieren. ARM sagt selber, dass die TrustZone nur 
dafür gemacht ist Angriffen unterhalb der Ebene "IC im Labor 
'spezialbehandeln'" zu widerstehen. Wer sich auch dagegen wappnen will, 
der muss deutlich mehr Geld für speziell gehärtete Mikrocontroller 
hinlegen.

Aus der Tatsache ergibt sich übrigens, dass man in einer TrustZone 
tunlichst keinen Master-Key oder ähnliches hinterlegen sollte, der für 
alle Geräte einer Serie gleich ist. Das ist eine ganz dumme Idee. Jedes 
Gerät braucht individuelle Keys. Liest dann ein Angreifer die Keys eines 
Gerätes aus, hat er nicht die Kontrolle über alle Geräte sondern kann 
nur das eine Geräte faken.

von Jack (Gast)


Lesenswert?

Jack schrieb:
> Da war es eine Mischung aus fehlerhafter Hardware- und
> Firmware. Kann also passieren. ARM sagt selber, dass die TrustZone nur
> dafür gemacht ist Angriffen unterhalb der Ebene "IC im Labor
> 'spezialbehandeln'" zu widerstehen.

Das kann man sicher falsch verstehen. Der Hack 
(http://bits-please.blogspot.de/2015/08/exploring-qualcomms-trustzone.html) 
war ein Software-Hack, kein Angriff mit Öffnen des ICs und Manipulieren 
des Dies oder so. Der Hack  hätte nicht funktionieren dürfen wenn die 
Cortex-A TrustZone Implementierung richtig gewesen wären.

von STler (Gast)


Lesenswert?

Jack schrieb:
> Da ist nichts unseriös dran. Die TrustZone ist speziell gesicherter
> Speicherbereich im Microcontroller und privilegierte Prozessorbefehle
> die darauf Zugriff haben. Was du mit diesen Funktionen machst ist dir
> als Programmierer überlassen.


Das ist so nicht richtig.
Lies mal die entsprechende Doku bei ARM dazu.


> Das Konzept gibt es sowohl bei ARM Cortex-A bzw. anderen Prozessoren
> schon "ewig". Bei Intel x86 sind es zum Beispiel die Protection Rings 0
> - 3. Bei x86 baut man damit zum Beispiel Hypervisor.


Auch das ist so nicht richtig, Trustzone ist ein anderes Konzept und 
funktioniert und wirkt ein bisschen anders.

Im Übrigen gibt es auch ein paar feine Unterschiede zwischen TrustZone 
ARMv8-A und TrustZone ARMv8-M.

von W.S. (Gast)


Lesenswert?

Jack schrieb:
> Was dich nicht davon abhält schon heute selber deine
> Software/Daten in schützenswerte Bereiche, wie zum Beispiel
> Verschlüsselungs-Keys und Algorithmen und normale Bereiche (LED blinke
> lassen ...) aufzuteilen. Erstere packst du in die TrustZone, letztere
> lässt du normal ausführen.

ROTFL

Also, wenn ich mir hier die überwältigende Mehrzahl von 
Programmier-Beiträgen anschaue, dann sehe ich, daß gefühlte 90% aller 
C-Programmierer es nicht mal schaffen, ihren Spaghetticode in 
vernünftige Module aufzuteilen. Keine wirklichen LoLevel-Treiber, die 
den Namen HAL verdienen, keine Trennung zwischen verschiedenen 
Funktions-Regionen, alles zusammengematscht.

Und du schlägst vor, Dinge die eigentlich sinnvoll sind, auch sinnvoll 
zu tun? JA, im Prinzip JA - aber doch nicht mit dem hier versammelten 
Publikum!

W.S.

von M. K. (sylaina)


Lesenswert?

W.S. schrieb:
> Und du schlägst vor, Dinge die eigentlich sinnvoll sind, auch sinnvoll
> zu tun? JA, im Prinzip JA - aber doch nicht mit dem hier versammelten
> Publikum!

Es werden hoffentlich alle lernfähig sein.

von W.S. (Gast)


Lesenswert?

M. K. schrieb:
> Es werden hoffentlich alle lernfähig sein.

Ich bemühe mich intensiv, an den Weihnachtsmann zu glauben. Gebe aber 
keine Garantie, daß dies mal klappen wird.

W.S.

von Stefan (Gast)


Lesenswert?

Lol. Sicherheit ist eine Illusion. Trusted computing hin oder her ;)

von Olpin H. (olpinhoopes)


Lesenswert?

Good job bro! https://olpinhoopes.com/

Beitrag #7335788 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.