# Shuffling: Purpose and formal definition

To my understanding, shuffling means simply to permute the elements in vector $$\mathbf{v}$$ pseudorandomly, using a PRP $$\pi (\mathrm{seed},\mathbf{v})$$. A secure PRP should yield a permutation indistinguishable from a random one.

However, I'd still have 2 questions on this subject:

1. Is there a more formal definition to shuffling?

2. What is the purpose of shuffling? Is it simply to misalign power traces for differential power analysis attacks?

• What's the context? Shuffling is used in many context such a voting protocols, but als in oblivious data-structures. – Maeher Jul 30 '20 at 11:12
• I found it mentioned under the generic 'protecting encryption' label, so I suppose anything broad goes. – Daniel B Jul 30 '20 at 11:23