Programmering III Experthold
Generelt:
Torsdag
Sådan importeres en .exe fil ind i et application domain:
static void Main(string[] args)
{
AppDomain appDomain = AppDomain.CreateDomain("New Domain");
appDomain.ExecuteAssembly("HelloWorld.exe");
}
Hent denne fil, og lav et program der bruteforcer kodeordet. kodeordetindeholder kun lowerCase bogstaver, som ikke indeholder æ, ø eller å (hint: kodeordet er "hot"):
Efter at du har hentet filen, højreklik da på den og vælg egnskaber/properties. Nederst i venstre hjørne er der et flueben som skal fjernes i "fjern blokering".
https://drive.google.com/file/d/1KuRDP74fuzuChf4RfFNq2E5pRw6MH2Wp/view?usp=sharing
Eksempel på kode:
static void Main(string[] args)
{
AppDomain encryptedFile = AppDomain.CreateDomain("New Appdomain");
string[] key = {"aaa"};
int success = encryptedFile.ExecuteAssembly("EncryptedFile.exe ", key);
if(sucess == 1)
{
Console.Writeline("Koden var korrekt");
}
else
{
Console.WriteLine("Koden var forkert");
}
Console.ReadKey();
}
Hjælpekode:
static void Main(string[] args)
{
char[] letters = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };
int numberOfLetters = letters.Length; //26 LETTERS
Console.WriteLine("Number of letters: {0}", numberOfLetters);
for (int i = 0; i < numberOfLetters; i++)
{
Console.WriteLine(letters[i]);
}
Console.ReadKey();
}
Udvid din bruteforce algoritme så den kan distribueres på flere PC'er, så de hver kan tage et segment af kode,
Prøv at knække koden på følgende fil:
https://drive.google.com/file/d/1Fu9I-6HCKhU71gE1rMxpk-UZ2XrwVjeY/view?usp=sharing
Husk at fjerne blokaden lige som ved den sidste fil
Koden indeholder 6 ialt bogstaver (stadig kun lowercase bogstaver). Benyt hinandens computere til at finde koden.