Yapay zekâ tarafından English dilinden çevrildi ·
İki farklı soru, bu yüzden iki cevap.SPECK ve SIMON neden küçük: ikisi de S-kutusu içermeyen ARX tasarımlarıdır (toplama, döndürme, XOR). AES, arama tabloları ya da oldukça karmaşık bayt yer değiştirmesi gerektirir; bu da 8 bitlik bir işlemcide flash ve RAM maliyeti getirir ve tablolarla yapılırsa zamanlama sızıntısına yol açar. SPECK’in turu birkaç 16/32/64 bitlik toplama, döndürme ve XOR işleminden ibarettir, bu yüzden tam bir uygulama birkaç yüz bayta sığar. İki tane olmasının nedeni farklı hedefler için ayarlanmış olmalarıdır: SIMON donanım için (çok az kapı), SPECK mikrodenetleyicilerde yazılım için. Ayrıca çok sayıda blok ve anahtar boyutunda gelirler (32/64’ten 128/256’ya kadar), bu da küçük paketler için kullanışlıdır. Teziniz için ISO standartlaştırma tartışması ve eksik tasarım gerekçesi de bir bölüm olmayı hak ediyor.TLS’in neden SPECK ile değiştirilemeyeceği: blok şifre tek bir yapı taşıdır. TLS anahtar değişimi, sunucu kimlik doğrulaması ve mesaj bütünlüğü sağlar; platform da kimlik bilginizi bu oturum içinde kontrol eder. Bir yükü SPECK ile şifreleyip gönderirseniz, yine biri sizinle bir anahtar üzerinde anlaşmak zorundadır ve broker opak bir veri yığını görür. Hermetry’de cihaz tarafı en az TLS 1.2 (tercihen 1.3) ile ileri gizlilik sağlayan paket takımlarını kullanır: AES-GCM veya ChaCha20-Poly1305; RSA anahtar değişimi yok, CBC yok. 1883 üzerinden düz MQTT yalnızca bir yönetici profil için Düz MQTT’yi açarsa çalışır ve dokümanlar bunu, özel ağda veya VPN üzerinde TLS yapamayan cihazlar için bir istisna olarak ele alır. 1883 testinizin reddedilmesinin nedeni budur. Tamamı cihaz taşıma güvenliği sayfasında yer alıyor.Pratik taraf: ESP32’nin AES donanımı vardır, TLS biraz RAM ve bağlantı başına bir saniye kadar el sıkışma süresi maliyeti getirir, sonrasında sensör hızlarında fark etmeyeceğiniz bir yük olmaz. ATmega ise dürüstçe bir sorundur. Ya ChaCha20-Poly1305 yaklaşımını kullanın (o da ARX’tir ve donanımsız da hızlıdır) ya da ATmega’nın TLS oturumunu tutan bir ağ geçidiyle konuşmasını sağlayın.
Two different questions, so two answers.
Why SPECK and SIMON are small: both are ARX designs (add, rotate, xor) with no S-boxes. AES needs lookup tables or a fairly involved byte substitution, which costs flash and RAM on an 8-bit part and leaks timing if you do it with tables. SPECK’s round is a handful of 16/32/64-bit adds, rotates and xors, so a full implementation fits in a few hundred bytes. There are two because they were tuned for different targets: SIMON for hardware (very few gates), SPECK for software on microcontrollers. They also come in many block and key sizes (32/64 up to 128/256), which is handy for tiny packets. For your thesis, the ISO standardisation fight and the missing design rationale are worth a chapter too.
Why you can’t swap TLS for SPECK: a block cipher is one building block. TLS gives you key exchange, server authentication and message integrity, and the platform checks your credential inside that session. If you encrypt a payload with SPECK and send it, someone still has to agree a key with you and the broker would see an opaque blob. On Hermetry the device side is TLS 1.2 minimum (1.3 preferred) with forward-secret suites: AES-GCM or ChaCha20-Poly1305, no RSA key exchange, no CBC. Plain MQTT on 1883 only works if an admin switches Plain MQTT on for the profile, and the docs treat that as an exception for devices that can’t do TLS on a private network or VPN. That’s why your 1883 test was refused. It’s all on the device transport security page.
Practical side: the ESP32 has AES hardware, TLS costs you a bit of RAM and a second or so of handshake per connection, and after that it’s nothing you’d notice at sensor rates. The ATmega is the honest problem. Either use ChaCha20-Poly1305 thinking (it’s ARX too and fast without hardware), or let the ATmega talk to a gateway that holds the TLS session.

