Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

iterate values of hex string

32 views
Skip to first unread message

eggie5

unread,
Sep 30, 2012, 2:49:24 AM9/30/12
to
Can somebody please suggest a getter way of doing this?

hmac = "0000000000000000000000000000000000000000"
#40 is length of hmac
#255 is values of each byte to try
(0..40).step(2) do |i|
(0..255).each do |j|
hmac[i..i+1]="%02x" % j
p hmac
end
end


It just iterates all the values of a 20 byte array as a string from left to right. e.g.:

000000000000000000000000000000000000000
0100000000000000000000000000000000000000
0200000000000000000000000000000000000000
.
.
.
FD00000000000000000000000000000000000000
FE00000000000000000000000000000000000000
FF00000000000000000000000000000000000000
.
.
.
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

Robert Klemme

unread,
Sep 30, 2012, 11:22:31 AM9/30/12
to
On 30.09.2012 08:49, eggie5 wrote:
> Can somebody please suggest a getter way of doing this?

Did you mean "better"?
(2**(20*8)).times {|x| printf "%040x\n", x}

You get a different order though.

What do you need that for?

robert

--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
0 new messages