29 lines
1.0 KiB
Rust
29 lines
1.0 KiB
Rust
use xor_cryptor::XORCryptor;
|
|
|
|
fn main() {
|
|
// Key for decryption
|
|
let key = String::from("CSUCKS"); // How do we end statements in Rust?
|
|
|
|
// Encrypted flag values
|
|
let hex_values = ["41", "30", "20", "63", "4a", "45", "54", "76", "01", "1c", "7e", "59", "63", "e1", "61", "25", "7f", "5a", "60", "50", "11", "38", "1f", "3a", "60", "e9", "62", "20", "0c", "e6", "50", "d3", "35"];
|
|
|
|
// Convert the hexadecimal strings to bytes and collect them into a vector
|
|
let encrypted_buffer: Vec<u8> = hex_values.iter()
|
|
.map(|&hex| u8::from_str_radix(hex, 16).unwrap())
|
|
.collect();
|
|
|
|
// Create decrpytion object
|
|
let res = XORCryptor::new(&key);
|
|
if res.is_err() {
|
|
return; // How do we return in rust?
|
|
}
|
|
let xrc = res.unwrap();
|
|
|
|
// Decrypt flag and print it out
|
|
let decrypted_buffer = xrc.decrypt_vec(encrypted_buffer);
|
|
println!(
|
|
"{:?}", // How do we print out a variable in the println function?
|
|
String::from_utf8_lossy(&decrypted_buffer)
|
|
);
|
|
}
|