Key-based matrix scrambling

5 views (last 30 days)
Digitalsd
Digitalsd on 31 Oct 2012
I have a matrix and I need to scramble its elements in a reversible way using a key based function.It could be a key based permutation. The question: Are there any built-in MATLAB functions or libraries that could help me to perform such operation? any suggestions?

Accepted Answer

Jan
Jan on 31 Oct 2012
Edited: Jan on 31 Oct 2012
data = rand(1, 128);
key = 12654;
stream0 = RandStream('mt19937ar', 'Seed', key);
RandStream.setDefaultStream(stream0);
index = randperm(128);
scrambled = data(index);
unscrambled = zeros(1, numel(data));
unscrambled(index) = scrambled;
isequal(data, unscrambled)
This is not tested yet.
  2 Comments
Digitalsd
Digitalsd on 1 Nov 2012
The question’s point : if I send you a key-based scrambled matrix, you will be able to extract the original matrix using the same key (symmetric key). If the codes in lines 3 and 4 will force the ‘randperm’ in line 5 to give me the same ‘index‘ permutation when using the same key, I will reach the point. !?
Digitalsd
Digitalsd on 2 Nov 2012
has been tested, works correctly.

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!