home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2004 December / PCpro_2004_12.ISO / files / webserver / tsw / TSW_3.4.0.exe / Apache2 / perl / largeprimes < prev    next >
Encoding:
Text File  |  2004-03-20  |  1.6 KB  |  69 lines

  1. #!/usr/bin/perl -sI.. -I../lib/ -Ilib/
  2. ##
  3. ## largeprimes -- generates large provable primes, uniformally distributed
  4. ##                in random intervals, with maurer's recursive algorithm.
  5. ##
  6. ## Copyright (c) 1998, Vipul Ved Prakash.  All rights reserved.
  7. ## This code is free software; you can redistribute it and/or modify
  8. ## it under the same terms as Perl itself.
  9. ##
  10. ## $Id: largeprimes,v 1.2 2004/03/20 23:00:26 joker Exp $
  11.  
  12.  
  13. use Crypt::Primes; 
  14.  
  15. unless ( $bitsize ) { 
  16.     print "$0 -bitsize=bits -num=number_of_primes -v=verbosity\n\n";
  17.     exit 0;
  18. }
  19.  
  20. for ( $i=0; $i <= $num; $i++ ) { 
  21.     my $prime = Crypt::Primes::maurer Size => $bitsize, 
  22.                                       Verbosity => $v, 
  23.                                       Generator => $generator;
  24.     my $g = 0;
  25.     if ( ref $prime eq 'HASH') { 
  26.         $g = $prime->{Generator};
  27.         $prime = $prime->{Prime};
  28.     }
  29.  
  30.     if ($t) { print "$prime\n" } else { 
  31.         print "\n" if $v;
  32.         print "random $bitsize bit prime: $prime";
  33.         print ", $g" if $g;
  34.         print "\n";
  35.     }
  36. }
  37.  
  38. =head1 NAME
  39.  
  40. largeprimes -- generate large, random primes using Crypt::Primes.
  41.  
  42. =head1 SYNOPSIS
  43.  
  44.     largeprimes -bitsize=128 -v
  45.     largeprimes -bitsize=512 -v=2
  46.     largeprimes -bitsize=512 -v -num=10
  47.     largeprimes -bitsize=1024 -generator -v
  48.  
  49. =head1 DESCRIPTION
  50.  
  51. largeprimes generates a provable prime of specified bitsize and prints it on
  52. STDOUT.  For more details see Crypt::Primes(3) manpage.
  53.  
  54. =head1 SEE ALSO
  55.  
  56. Crypt::Primes(3)
  57.  
  58. =head1 AUTHOR
  59.  
  60. Vipul Ved Prakash, mail@vipul.net
  61.  
  62. =head1 LICENSE
  63.  
  64. Artistic.
  65.  
  66. =cut
  67.  
  68.  
  69.