save value into new variable after each iteration
    6 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hi everyone, 
I am new to matlab, I have this one fuction, as a subpart of my code. 
Here I am taking an initial string of 80 bits and after execution this loop, returns me 31 different strings as sub keys of the same length. 
All I want is to save the value of these 31 keys in 31 different variables as "key1", "key2"....."key31".
This is my function:
    function key_out=updateKey(key, i) 
          sbox=[12 5 6 11 9 0 10 13 3 14 15 8 4 7 1 2];
          key_out=[key(62:80) key(1:61)];
          key_out(1:4)=dec2bin(sbox(bin2dec(key_out(1:4))+1),4);
          key_out(61:65)=dec2bin(bitxor(i, bin2dec(key_out(61:65))), 5); 
        disp(i);  
        disp('Output key');
          disp(key_out);
    end
6 件のコメント
  Mario Malic
      
 2020 年 11 月 4 日
				My mistake, your solution is much better! Why did you use the reversed direction of loop, would it make a difference in the line below?
key_out(61:65)=dec2bin(bitxor(i, bin2dec(key_out(61:65))), 5);
  J. Alex Lee
      
 2020 年 11 月 5 日
				The reverse loop is just to implicitly preallocate the arrays that are being populated in the loop.
It shouldn't make a difference in the line because you still are indexing consistently.
回答 (0 件)
参考
カテゴリ
				Help Center および File Exchange で Entering Commands についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



