(C++) Code Transposition by Unprotect

Created the Tuesday 06 December 2022. Updated 1 year, 2 months ago.


This code snippet defines a vector of instructions, which are simply integer values from 1 to 10 in this example. The instructions are then shuffled using a random number generator, and the instructions are executed in the rearranged order.

This code demonstrates how code transposition can be used to rearrange the instructions of a piece of code in a random manner, making it more difficult to follow and understand. In a real-world scenario, the instructions would be more complex and would likely have a different impact on the behavior of the code.


            #include <iostream>
#include <random>
#include <vector>

int main()
    std::vector<int> instructions = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

    // Use a random number generator to shuffle the instructions
    std::random_device rd;
    std::mt19937 g(rd());
    std::shuffle(instructions.begin(), instructions.end(), g);

    // Execute the instructions in the rearranged order
    for (int instruction : instructions)
        std::cout << instruction << std::endl;

    return 0;