Generate randon string of fixed length (in bytes)

  • Thread starter Iñaki Baz Castillo
  • Start date
I

Iñaki Baz Castillo

Hi, I use the following method to generate a random string:

def gen_token(len=3D6)
rand(36**len).to_s(36)
end

It's the most efficiente way I've found. However even if the parameter
is 6, the method sometimes returns a string of lenght 5, 4...

Is there an efficient way to a random string with fixed length? (I
don't want to check the resulting length and then append some other
byte....).

Thanks a lot.

--=20
I=C3=B1aki Baz Castillo
<[email protected]>
 
I

Iñaki Baz Castillo

2011/1/27 I=C3=B1aki Baz Castillo said:
Hi, I use the following method to generate a random string:

=C2=A0 =C2=A0def gen_token(len=3D6)
=C2=A0 =C2=A0 =C2=A0rand(36**len).to_s(36)
=C2=A0 =C2=A0end

It's the most efficiente way I've found. However even if the parameter
is 6, the method sometimes returns a string of lenght 5, 4...

Is there an efficient way to a random string with fixed length? (I
don't want to check the resulting length and then append some other
byte....).

In fact, what I need is to generate a Base64 encoded string of a fixed
length. And I've found right now the SecureRandom.base64(n) method in
Ruby 1.9 :)


--=20
I=C3=B1aki Baz Castillo
<[email protected]>
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,764
Messages
2,569,565
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top