pub struct Rsa<'d, Dm: DriverMode> { /* private fields */ }Expand description
RSA peripheral driver.
Implementations§
Source§impl<'d> Rsa<'d, Blocking>
impl<'d> Rsa<'d, Blocking>
Sourcepub fn new(rsa: RSA<'d>) -> Self
pub fn new(rsa: RSA<'d>) -> Self
Creates a new instance in Blocking mode.
Optionally an interrupt handler can be bound.
Sourcepub fn into_async(self) -> Rsa<'d, Async>
pub fn into_async(self) -> Rsa<'d, Async>
Reconfigures the RSA driver to operate in asynchronous mode.
Sourcepub fn enable_disable_interrupt(&mut self, enable: bool)
pub fn enable_disable_interrupt(&mut self, enable: bool)
Enables or disables the RSA interrupt.
When enabled rsa peripheral would generate an interrupt when a operation is finished.
Sourcepub fn set_interrupt_handler(&mut self, handler: InterruptHandler)
Available on crate feature unstable only.
pub fn set_interrupt_handler(&mut self, handler: InterruptHandler)
unstable only.Registers an interrupt handler for the RSA peripheral.
Replaces any previously registered interrupt handlers.
§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.
Source§impl<'d> Rsa<'d, Async>
impl<'d> Rsa<'d, Async>
Sourcepub fn into_blocking(self) -> Rsa<'d, Blocking>
pub fn into_blocking(self) -> Rsa<'d, Blocking>
Reconfigures the RSA driver to operate in Blocking mode.
Source§impl<'d, Dm: DriverMode> Rsa<'d, Dm>
impl<'d, Dm: DriverMode> Rsa<'d, Dm>
Sourcepub fn disable_constant_time(&mut self, disable: bool)
pub fn disable_constant_time(&mut self, disable: bool)
Enables or disables constant time operation.
Disabling constant time operation increases the performance of modular exponentiation by simplifying the calculation concerning the 0 bits of the exponent. I.e. the less the Hamming weight, the greater the performance.
Compromises security by enabling timing-based side-channel attacks.
For more information refer to the Technical Reference Manual
Sourcepub fn search_acceleration(&mut self, enable: bool)
pub fn search_acceleration(&mut self, enable: bool)
Enables or disables search acceleration.
When enabled it would increase the performance of modular exponentiation by discarding the exponent’s bits before the most significant set bit.
Compromises security by effectively decreasing the key length.
For more information refer to the Technical Reference Manual
Trait Implementations§
Source§impl InterruptConfigurable for Rsa<'_, Blocking>
Available on crate feature unstable only.§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.
impl InterruptConfigurable for Rsa<'_, Blocking>
unstable only.§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.