next up previous
Next: Computer Exercise 6 Up: Pset2 Solutions Previous: Code

Computer Exercise 5

(define (find-discrete-log y g p)
  (define (internal-x-iter x)
    (cond ((> x (- p 2)) false)
          ((= (modulo y p) (expmod g x p)) x)
          (else
	    (internal-x-iter (+ x 1)))))
  (internal-x-iter 2))

Now let's crack a 4-digit code and see if we can decrypt some sample messages:

(define cracked-key (crack-public-key pk-ex-5))
;Value: cracked-key

cracked-key
;Value: (19079 362 107 6843)


(decrypt (encrypt "This is a test!!" (key-system->public-key cracked-key))
	 cracked-key)
;Value: "This is a test!!"



Tony Ezzat
Mon Feb 9 20:47:53 EST 1998