[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ANN: Mixminion 0.0.1



Mixminion 0.0.1 is now available for download at 
	     http://www.mixminion.net/dist/Mixminion-0.0.1.tar.gz

It's been tested on Linux and MacOS X; experience from other platforms
is solicited.

Here are the release notes:
==============================================================================
This is Mixminion version 0.0.1.

Mixminion is the standard implementation for the Type-III anonymous Mix
protocol, which lets you send very anonymous email.  This best-of-breed
remailer uses conservative design approaches to provide security against
most known attacks. We chose a simple extensible design so we can provide a
robust core system, and then go on to experiment with new research features
such as dummy policies, directory servers, and reputation systems.

This is a testing alpha release.  You will probably only want to use it
if you are technically inclined, curious, and interested in helping the
Mixminion development effort.

WARNING!  Don't use this release if you require strong anonymity.  It has
known deficiencies, including some that make it possible for an adversary
to trace your message through the system.

IN THIS VERSION: 
   - You can run a rudimentary server that can deliver to other Mixminion
     servers, that can use Mixmaster to deliver to any external address,
     or that sends SMTP directly to a preconfigured set of addresses.
   - You can send anonymous email via these servers.

NOT IN THIS VERSION:
   - There is no client interface for sending replies or generating reply
     blocks (the code is written but not exposed).
   - There are still some ways to DoS the server.
   - IP-based restrictions don't work.
   - There is no exit module for servers that want to send SMTP directly to
     unrestricted addresses.
   - There is no integrated directory support yet.
   - No automatic key generation.
   - No automatic path selection.
   - MMTP does not exactly follow the specification yet.
   - Cottrell batching is disabled; instead we use a simple timed mix. The
     mix interval is set to a ridiculously low 5 minutes for testing.

HOW TO BUILD, TEST, AND INSTALL MIXMINION: The quick version.
  <download and unpack http://www.mixminion.net/dist/Mixminion-0.0.1.tar.gz>

  % cd Mixminion-0.0.1
  % make download-openssl
  % make build-openssl
  % make
  % make test
 EITHER:
    % su
    Password:
    # make install
 OR:
    % make install PREFIX=~

HOW TO BUILD, TEST, AND INSTALL MIXMINION: The verbose version.
  1) You must have Python version 2.0 or later installed on your system.  The
     binary may be called "python", "python2", "python2.X", or something else.
     If you don't have Python >=v2.0, go install it.  You can find source and
     binary distributions at http://www.python.org/.

  2) If you have OpenSSL version 0.9.7beta3 or later, go to step 4.
     Otherwise, continue.

  3) Run "make download-openssl".

  4) Run "make build-openssl".  If this step fails, OpenSSL didn't build
     correctly on your system.  Go read contrib/openssl/INSTALL, and make
     OpenSSL build.

  5) Run "make build".  If you get any errors, please report them to 
     <nickm@freehaven.net>.

  6) Run "make test" to run Mixminion's unit tests.  If you get any errors,
     please report them to <nickm@freehaven.net>.

  7) Run "make install" to install Mixminion.  You may need to be root to
     execute this command.  By default, Mixminion will install itself relative
     to your python distribution.  If you want to install somewhere else (e.g.
     /home/miniond/), run "make install PREFIX=/home/miniond".

     A script called "mixminion" will be created in the 'bin' directory
     relative to your prefix, or in the same directory as the python
     executable if no prefix is provided.  To make sure that everything was
     installed correctly, you can run "mixminion unittests".

HOW TO SEND AN EMAIL MESSAGE VIA MIXMINION:
 [First time only. These steps won't be necessary once v0.0.2 is out.]
   1) Download the latest directory from 
         http://www.mixminion.net/miniondir.tar.gz
   2) Unpack it into your homedir; it will create the directory 
         "~/.mixminion/servers/".

 [All subsequent times. The first two steps won't be necessary once v0.0.2 is
    out.]
   1) Check out your list of servers: run 'mixminion list-servers'.
   2) Decide on a two-part path.  Each part of the path must be a comma-
      separated list of servers.  The last server in the second part of the
      path must support smtp.  All intermediate servers must support 'relay'.
   3) Run (type this as a single line):
         mixminion client -t <email address> 
              --path1=<first part of your path>
              --path2=<second part of your path>
              -i <filename to send, or - to read from stdin>.

      Example:
         mixminion client -t nosuchuser@mixminion.net --path1=server1,server9 \
              --path2=server5,server10 -i /etc/motd

HOW TO RUN YOUR OWN MIXMINION SERVER:
   1) Create your own mixminiond.conf based on "etc/mixminiond.conf" from the
      mixminion distribution.
   2) Edit mixminiond.conf to refer to your own setup.
   3) Run your server for the first time:
        "mixminion server -f <path to mixminiond.conf>"
   4) {This step will change in future version once directories are supported.}

      For clients to use your server, they'll need a copy of your server 
      descriptor, which should be stored in $SERVER_HOME/keys/key_*/ServerDesc.
      For example, if your mixminiond.conf contains the following line:
           Homedir: /home/mixminion/spool
      
      Then your first server descriptor will be stored in 
            "/home/mixminion/spool/keys/key_0001/ServerDesc".

      Clients should place a copy of this file, named whatever you like,
      in their "~/.mixminion/servers" directory.

      Since v0.0.1 is just a working alpha release, we're going to wait
      until we have directories working before we ask people to give us
      their server descriptors. Stay tuned.
==============================================================================


-- 
Nick Mathewson <nickm@alum.mit.edu>