Chad Marson The Search for Greater Prime Numbers And Other Practical Applications of Distributed Computing GIMPS GIMPS is the Greater Internet Mersenne Prime Search. It is a group dedicated to searching out primes numbers of the form n = 2^p-1. This Mersenne number is called a Mersenne prime if it is prime. A number in the form of n does not guarantee primality. Check p = 11 Mersenne numbers are sought after because of special properties that make determining their factorizations computationally feasible. This is done using Lucas-Lehmer testing. There are currently 44 known Mersenne primes numbers the most recent being discovered On Sept 4th, 2006 with n = 32,582,657 and 9,808,358 digits PrimeNet PrimeNet is the grid system that runs the GIMPS software PrimeNet is a virtual machine made up of thousands of volunteer nodes. The virtual machine's sustained throughput is currently 24408 billion floating point operations per second. PrimeNet distributes work in one of three ways depending on CPU speed. 1. Fastest computers get first time primality tests. 2. The second class of work verifies pervious primality tests. 3. The third class does factoring work eliminating some factors to help other computers. RSA Public Key Encryption System An encryption system that relies on public keys based on large prime numbers. Key Generating Algorithm 1. Generate two large random primes, p and q, of approximately equal size such that their product n = pq is of the desired bit length. 2. Compute n = pq and (φ) phi = (p-1)(q-1). 3. Choose an integer e, 1 < e < phi(n), such that gcd(e, phi(n)) = 1Compute the secret exponent d, 1 < d < phi(n), such that ed ≡ 1 (mod phi(n)). 4. The public key is (n, e) and the private key is (n, d). The values of p, q, and phi(n) should also be kept secret. n is known as the modulus. e is known as the public exponent or encryption exponent. d is known as the secret exponent or decryption exponent. Encryption Algorithm Sender A does the following:2/12/2016 Chad Marson 1. 2. 3. 4. Looks up B's public key (n, e) which is publicly available. Represents the plaintext message as a series of integers, m. Computes the cipher text c = m^e mod n. Sends the cipher text c to B. Decryption Algorithm Recipient B does the following:1. Uses his private key (n, d) to compute m = c^d mod n. 2. Extracts the plaintext from the integer representative m. RSA Factorization. RSA-704 212 Digits. 30,000 prize 74037563479561712828046796097429573142593188889231 28908493623263897276503402826627689199641962511784 39958943305021275853701189680982867331732731089309 00552505116877063299072396380786710086096962537934 650563796359 BOINC Berkeley Open Infrastructure for Network Computing is a distributed computing infrastructure Used for projects including SETI@HOME Server Structure Server runs on Linux based computers and uses Apache, PHP and MySQL Facilitates the breaking of work into work units which are downloaded to clients The software then runs on the clients and results are loaded back to the server, which are stored on a central database Key features of the BOINC Server: Homogeneous redundancy: sending work units only to computers of the same platform (Win XP to Win XP or Linux to Linux) Work Unit Trickling: sending information to the server before the work unit completes Locality Scheduling: sending work units to computers that already have the necessary files and creating work on demand Work Distribution Based on Host Parameters: work units requiring 512 MB of RAM, for example, will only be sent to hosts having at least that much RAM. Client Structure Relies on the BOINC RPC mechanism Client is a process on a PC which communicates to the server On UNIX the client is a daemon Other Useful Applications Render Farm, Monkey Shakespeare Simulator, Cancer and Aids Research, Human Genome Project. 2/12/2016 Chad Marson References 1. The Little Book of Bigger Primes Paulo Ribenoim 2. Elementary Number Theory Gareth A. Jones and J. Mary Jones 3. GIMPS Available At: http://www.mersenne.org/prime.htm 4. RSA Algorithm Available At: http://www.di-mgt.com.au/rsa_alg.html#decryption 5. Distributed Computing info Available At: http://www.distributedcomputing.info/projects.html 6. Great Internet Mersenne Prime Search Available At: http://en.wikipedia.org/wiki/GIMPS 7. Berkeley Open Infrastructure for Network Computing Available At: http://en.wikipedia.org/wiki/BOINC 8. RSA Laboratories Available At: http://www.rsasecurity.com/rsalabs/node.asp?id=2100 2/12/2016