one time pad plus randstream

Hello Guys,
I need help for this question asap.
Implement a version of the character based One-Time Pad, that utilizes a random number generator chosen through RandStream.
clc;
clear all;
close all;
alph=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'];
b1=0:25;
keyword='famt';
code='ratn';
disp(keyword);
famt
disp(code);
ratn
for ii=1:length(keyword)
for jj=1:length(alph)
if keyword(ii)==alph(jj)
w1(ii)=b1(jj);
end
if code(ii)==alph(jj)
c1(ii)=b1(jj);
end
end
end
ncode=w1+c1;
for ii=1:length(ncode)
if(ncode(ii)>25)
ncode(ii)=ncode(ii)-26;
else
continue
end
end
display(ncode);
ncode = 1×4
22 0 5 6
for ii=1:length(ncode)
for jj=1:length(b1)
if ncode(ii)==b1(jj)
finalcode(ii)=alph(jj);
else
continue
end
end
end
disp(finalcode);
wafg

7 comentarios

the cyclist
the cyclist el 20 de En. de 2023
Your code runs to completion with no errors or warnings. So, what is your question exactly?
Mi
Mi el 20 de En. de 2023
I need to implement Randstream in this code and I am not able to do it
I don't know where you intend to introduce the random effect in this algorithm, so this comment may not be relevant. However, the algorithm as currently implemented can be simplified as follows:
keyword='famt';
code='ratn';
w1 = double(keyword - 'a');
c1 = double(code - 'a');
ncode = mod(w1+c1, 26)
ncode = 1×4
22 0 5 6
finalcode = char(ncode + 'a')
finalcode = 'wafg'
Mi
Mi el 20 de En. de 2023
the question is as follows:
Implement a version of the character based One-Time Pad, that utilizes a random number generator chosen through RandStream.
the code i posted is the code for OTP only but I have to answer the question above and I dont know how to write an OTP code to implement randstream.
Les Beckham
Les Beckham el 20 de En. de 2023
You need to get clarification on what portion of the algorithm is supposed to be randomized. Perhaps the code string is supposed to be randomly generated? Until that is clarified, there isn't really anything else we can do to help with this.
Mi
Mi el 20 de En. de 2023
if the code string is supposed to be randomly generated, then can you help me out with a code for this?

Iniciar sesión para comentar.

 Respuesta aceptada

Les Beckham
Les Beckham el 20 de En. de 2023
Assuming that the random part of the algorithm is generating the code character vector as you said in one of your comments, something like this should do what you want.
Note that this is using RandStream as requested. It could be more easily and more simply done using randi directly without using RandStream.
s = RandStream('dsfmt19937'); % << arbitrarily chosen generator type; change as you wish (see doc link above)
r = randi(s, 26, [1 4]); % 4 integers between 1 and 26 using stream s
code = char(r + 'a'); % convert to letters of the alphabet
% Then use the simplified one-time pad algorithm I showed in my comment above
keyword='famt';
w1 = double(keyword - 'a');
c1 = double(code - 'a');
ncode = mod(w1+c1, 26)
ncode = 1×4
6 6 20 3
finalcode = char(ncode + 'a')
finalcode = 'ggud'

2 comentarios

Mi
Mi el 20 de En. de 2023
thank you so much
Les Beckham
Les Beckham el 23 de En. de 2023
You are quite welcome.
Could you please Accept the answer? Thanks

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

Mi
el 20 de En. de 2023

Comentada:

el 23 de En. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by