inetbot web crawler
Main  |  Get access to the repository  |  API  |  The robot  |  Publications  |  Usenet Groups  |  Plainweb  | 
 inetbot - Groups (beta)

Current group: sci.crypt

Cryptology

Cryptology  
Axle Longhorn
 Re: Cryptology  
Douglas A. Gwyn
From:Axle Longhorn
Subject:Cryptology
Date:23 Jan 2005 09:55:15 -0800
Hello, I am a newbie to cryptology and ciphers, but as I am still in
highschool and we don't have any classes remotely close to cryptology,
I have come here to ask for any links, books or help that you guys know
of with regards to cryptology . Any and all help is appreciated. What
I am basically looking for are beginners guides, and/or detailed
explanations of certain cipher techniques.

Lastly, if you guys could help me understand this linear congruential
generator for random numbers, I would be appreciative.

R(sub n) = (a*R(sub n-1)+c)modM
values for the constants are:
a=1366
R(sub 0)=0
c=150889
m=714025
From:Douglas A. Gwyn
Subject:Re: Cryptology
Date:Sun, 23 Jan 2005 16:07:09 -0500
Axle Longhorn wrote:
> What I am basically looking for are beginners guides,
> and/or detailed explanations of certain cipher techniques.

There are several book recommendations in the sci.crypt FAQ.
Also, there are plenty of "fun" books on "codes and ciphers"
in any good public library.
David Kahn's "The Codebreakers" (be sure to get the unabridged
hardback version) gives a comprehensive view of cryptology up
to around the middle of the last century. For some coverage
since that time, consult some of the other books in the FAQ.

> Lastly, if you guys could help me understand this linear congruential
> generator for random numbers, I would be appreciative.
> R(sub n) = (a*R(sub n-1)+c)modM
> a=1366
> R(sub 0)=0
> c=150889
> m=714025

What part do you need help with? It gives a formula for
calculating the next number in the series R[n], from the
previous number R[n-1]. n counts invocations of the
generator. The initial value R[0] is usually called the
"seed" value. All the arithmetic is merely that taught in
elementary school, with the exception of the modulo operator,
which merely results in the remainder from dividing the first
operand by the second. So 12 mod 5 is 2, 7 mod 3 is 1,
8 mod 2 is 0, etc. There are efficient algorithms for
computing modular remainders that are better for large
numbers than performing the standard long division. Some
of the books cited in the FAQ explain such algorithms.

If what you want to know is how a LCG can give results
that appear to be "random", that doesn't have a simple
answer. In fact for some choices of the constants the
result appears much less random. There is an large
chapter about pseudo-random number generation in Knuth's
"The Art of Computer Programming", Vol. 2 ("Seminumerical
Algorithms".
   

Copyright © 2006 inetbot   -   All rights reserved