RustCrypto CMOV предоставляет встроенные функции ЦП условного перемещения, которые на основных платформах гарантированно выполняются в постоянное время и не перезаписываются компилятором в виде ветвей. До версии 0.4.4 компилятор Thumbv6m-none-eabi (Cortex M0, M0+ и M1) выдает ассемблер с непостоянным временем при использовании cmovnz (портативной версии). Эта уязвимость исправлена в версии 0.4.4.
Показать оригинальное описание (английский)
RustCrypto CMOV provides conditional move CPU intrinsics which are guaranteed on major platforms to execute in constant-time and not be rewritten as branches by the compiler. Prior to 0.4.4, the thumbv6m-none-eabi (Cortex M0, M0+ and M1) compiler emits non-constant time assembly when using cmovnz (portable version). This vulnerability is fixed in 0.4.4.