Files
k-mood/crates/domain/src/testing/fakes/cipher.rs
Gabriel Kaszewski 23d052278a
All checks were successful
CI / ci (push) Successful in 19m38s
changes
2026-08-26 20:58:14 +02:00

19 lines
590 B
Rust

use crate::errors::DomainError;
use crate::provider::{CredentialCipher, EncryptedCredential};
const MASK: u8 = 0x5a;
pub struct FakeCredentialCipher;
impl CredentialCipher for FakeCredentialCipher {
fn encrypt(&self, plaintext: &[u8]) -> Result<EncryptedCredential, DomainError> {
Ok(EncryptedCredential::from_persistence(
plaintext.iter().map(|byte| byte ^ MASK).collect(),
))
}
fn decrypt(&self, credential: &EncryptedCredential) -> Result<Vec<u8>, DomainError> {
Ok(credential.value().iter().map(|byte| byte ^ MASK).collect())
}
}