mirror of
https://github.com/kristoferssolo/cipher-workshop.git
synced 2026-02-04 06:42:11 +00:00
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
use crate::Block128;
|
||||
|
||||
/// Mixes each column using matrix multiplication in GF(2^8) ([`MixColumns`] step).
|
||||
/// Mixes each column using matrix multiplication in GF(2^8) (`MixColumns` step).
|
||||
///
|
||||
/// Each column is treated as a polynomial and multiplied by a fixed polynomial
|
||||
/// modulo x^4 + 1. This provides diffusion across the rows.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use crate::{Block128, key::Subkey};
|
||||
|
||||
/// XORs the state with a round key ([`AddRoundKey`] step).
|
||||
/// XORs the state with a round key (`AddRoundKey` step).
|
||||
///
|
||||
/// Each round of AES combines the current state with a derived subkey
|
||||
/// using bitwise XOR. This operation is its own inverse.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use crate::Block128;
|
||||
|
||||
/// Cyclically shifts rows of the state matrix ([`ShiftRows`] step).
|
||||
/// Cyclically shifts rows of the state matrix (`ShiftRows` step).
|
||||
///
|
||||
/// Row 0: no shift, Row 1: shift left 1, Row 2: shift left 2, Row 3: shift left 3.
|
||||
/// This provides diffusion across the columns.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use crate::{Block128, sbox::SboxLookup};
|
||||
|
||||
/// Substitutes each byte using the AES S-box ([`SubBytes`] step).
|
||||
/// Substitutes each byte using the AES S-box (`SubBytes` step).
|
||||
///
|
||||
/// Provides non-linearity by replacing each byte with its S-box lookup value.
|
||||
/// The S-box is derived from the multiplicative inverse in GF(2^8).
|
||||
|
||||
Reference in New Issue
Block a user