diff options
author | Peter Palfrader <peter@palfrader.org> | 2002-07-17 16:14:23 +0000 |
---|---|---|
committer | Peter Palfrader <peter@palfrader.org> | 2002-07-17 16:14:23 +0000 |
commit | 4944ef59b95764a4b5333c7846f2f58dc62ffa5e (patch) | |
tree | 6b87e1ba4d887d0cc12a9a3438a1b13ae50f9557 | |
parent | a08e5f2c5751d07a77b8d7a87adfb0f789fafb51 (diff) |
The cheap hashing function that was used for determining when to ping was replaced by md5. The local secret also is an input to the function so not all echolot pingers ping the same remailer at the same time.
-rw-r--r-- | Echolot/Pinger.pm | 11 | ||||
-rw-r--r-- | NEWS | 4 |
2 files changed, 9 insertions, 6 deletions
diff --git a/Echolot/Pinger.pm b/Echolot/Pinger.pm index d996427..18f72f9 100644 --- a/Echolot/Pinger.pm +++ b/Echolot/Pinger.pm @@ -1,7 +1,7 @@ package Echolot::Pinger; # (c) 2002 Peter Palfrader <peter@palfrader.org> -# $Id: Pinger.pm,v 1.14 2002/07/17 02:36:07 weasel Exp $ +# $Id: Pinger.pm,v 1.15 2002/07/17 16:14:23 weasel Exp $ # =pod @@ -22,13 +22,12 @@ use English; use Echolot::Pinger::Mix; use Echolot::Pinger::CPunk; -my @primes = qw{13 1997 173 1051 59 6 97883 197 3 2 109 127 7}; sub makeHash($) { my ($text) = @_; - my $sum = 0; - for (my $i=0; $i < length($text); $i++) { - $sum += ord( substr($text, $i, 1) ) * $primes[ $i % (scalar @primes) ]; - }; + + my $hash = Echolot::Tools::make_mac($text); + $hash = substr($hash, 0, 4); + my $sum = hex($hash); return $sum; }; @@ -1,5 +1,9 @@ Changes in version * Do not send all pings for the same remailer at the same time + * The cheap hashing function that was used for determining when to ping + was replaced by md5. The local secret also is an input to the + function so not all echolot pingers ping the same remailer at the + same time. Changes in version 2.0beta15 - 2002-07-16 * Have echolot version in stats HTML pages |