Reversed cfb8 arrays
This commit is contained in:
parent
521c5aa9e0
commit
9ff2e95c66
|
@ -61,17 +61,17 @@ impl McCipher {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn shift_left(mut arr: [u8; 16], new: u8) {
|
fn shift_left(mut arr: [u8; 16], new: u8) {
|
||||||
for i in 0..arr.len() - 1 {
|
for i in 1..arr.len() {
|
||||||
arr[i] = arr[i + 1];
|
arr[i] = arr[i - 1];
|
||||||
}
|
}
|
||||||
arr[arr.len() - 1] = new;
|
arr[0] = new;
|
||||||
}
|
}
|
||||||
|
|
||||||
fn encrypt_block(&self, data: u8) -> u8 {
|
fn encrypt_block(&self, data: u8) -> u8 {
|
||||||
let cipher = Aes128::new(GenericArray::from_slice(&self.key));
|
let cipher = Aes128::new(GenericArray::from_slice(&self.key));
|
||||||
let mut block = GenericArray::clone_from_slice(&self.state_en);
|
let mut block = GenericArray::clone_from_slice(&self.state_en);
|
||||||
cipher.encrypt_block(&mut block);
|
cipher.encrypt_block(&mut block);
|
||||||
let data = data ^ block[0];
|
let data = data ^ block[15];
|
||||||
Self::shift_left(self.state_en, data);
|
Self::shift_left(self.state_en, data);
|
||||||
data
|
data
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ impl McCipher {
|
||||||
let mut block = GenericArray::clone_from_slice(&self.state_en);
|
let mut block = GenericArray::clone_from_slice(&self.state_en);
|
||||||
cipher.decrypt_block(&mut block);
|
cipher.decrypt_block(&mut block);
|
||||||
Self::shift_left(self.state_de, data);
|
Self::shift_left(self.state_de, data);
|
||||||
let data = data ^ block[0];
|
let data = data ^ block[15];
|
||||||
data
|
data
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue