Welche von ihnen werden unter welchen Umständen bevorzugt?
Ich würde gerne die Liste der Bewertungskriterien für die verschiedenen Modi sehen und vielleicht eine Diskussion über die Anwendbarkeit der einzelnen Kriterien.
Zum Beispiel, Ich denke, eines der Kriterien ist die "Größe des Codes" für die Ver- und Entschlüsselung, was für eingebettete Systeme mit Mikrocode, wie 802.11-Netzwerkadapter, wichtig ist. WENN der für die Implementierung von CBC erforderliche Code viel kleiner ist als der für CTR (ich weiß nicht, ob das stimmt, es ist nur ein Beispiel), dann könnte ich verstehen, warum der Modus mit dem kleineren Code bevorzugt wird. Aber wenn ich eine Anwendung schreibe, die auf einem Server läuft, und die AES-Bibliothek, die ich verwende, implementiert ohnehin sowohl CBC als auch CTR, dann ist dieses Kriterium irrelevant.
Sehen Sie, was ich mit "Liste der Bewertungskriterien und Anwendbarkeit der einzelnen Kriterien" meine?
Das hat nicht wirklich etwas mit Programmierung zu tun, sondern mit Algorithmen.