1. An article comprising a non-transitory computer readable medium storing instructions that, when executed by a computer processor-based system, result in: developing for a program including one or more data variables, blocks of code, jumps and a secret in a control flow graph indicative of at least one unique variable layout for said one or more data variables; compiling the program based on said at least one unique variable layout to obscure said secret while shuffling data across the program during execution; identifying said one or more blocks of code as nodes and said one or more jumps as arcs of the control flow graph; adding exactly one dummy entry and one dummy exit node to the control flow graph to assign permutations to non-dummy nodes in the control graph; and assigning permutations to said dummy entry and dummy exit nodes and marking said nodes as assigned.