Mixminion Message Sender

A Win32 Type III Anonymous Email Utility

Windows GUI Frontend for Mixminion

Mixminion is a third generation remailer design that is intended to make it possible to send anonymous email messages in such a manner that they cannot be traced back to their origin. Those interested in Mixminion's design details the Design document (PDF) should make for interesting reading.

Intended to make life easier for those using Mixminion in a Win32 enviroment because Mixminion itself is a command line program which is useful but I've found that it quickly gets cumbersome to use. Mixminion message Sender is a GUI frontend that handles some of the 'grunt work' involved in sending anonymous email messages and some of the functions that deal with Single Use Reply Blocks and the message queue.

There are now Three distributions, the original that does not include mixminion. One that that includes Mixminion (the most recent "oficial" win32 version) ready to run. In an upcoming future update I will be adding a third distribution that includes an unofficial win32 build of Mixminion 0.0.8alpha3, which is the latest version.

The original distribution is here: MMS_1_2_7_dist.zip

The Archive contains three files:

The program distribution archive: MMS_1_2_7_dist.zip
and two detached pgp signatures. One, MMS_1_2_7..zip.dss.sig
created by DH/DSS key-id: 0xB9E76C70
(fingerprint: 4195 2FD1 5944 F13B 85B4 118B B718 E95C B9E7 6C70)

and for compatibility with pgp2.6.x users, another signature, MMS_1_2_7.zip.sig
created by RSA key-id: 0x72A69CD5
(fingerprint: 9751 781B E690 9145 9641 220D E9C1 5265)

The 'Mixminion Included' distribution is here: MMS_1_2_7_dist_M.zip

The Archive contains three files:

The program distribution archive: MMS_1_2_7_dist_M.zip
and two detached pgp signatures. One, MMS_1_2_7_M.zip.dss.sig
created by DH/DSS key-id: 0xB9E76C70
(fingerprint: 4195 2FD1 5944 F13B 85B4 118B B718 E95C B9E7 6C70)

and MMS_1_2_7_M.zip.sig
created by RSA key-id: 0x72A69CD5

NOTE: This build was NOT created by the Mixminion devs or by me. It was built by someone that I have no knowledge of. I cannot guarantee that there haven been any kind of backdoors or other malicious changes made to the source code. Use At Your Own Risk

The 'Mixminion 0.0.8alpha3 Included' distribution is here: MMS_1_2_7_dist_m8a3.zip

The Archive contains three files:

The program distribution archive: MMS_1_2_7_dist_m8a3.zip
and two detached pgp signatures. One, MMS_1_2_7_m8a3.zip.dss.sig
created by DH/DSS key-id: 0xB9E76C70
(fingerprint: 4195 2FD1 5944 F13B 85B4 118B B718 E95C B9E7 6C70)

and MMS_1_2_7_m8a3.zip.sig
created by RSA key-id: 0x72A69CD5

You will need the Windows version of the Mixminion Executable

The current version as of August 2005 is
Here's the url for downloading the win32 executeable for users without Python 2.3

and here's the detached pgp signature to verify it with

For those who have Python 2.3 installed, you can use this one:

and it's detached pgp signature

The mixminion source code is also available so that you can examine it and compile your own executeables. See http://mixminion.net for details.

A screenshot:

Mixminion client GUI Screenshot

Nothing fancy here, just a very basic windows mixminion tool.

Development news: In the spring of '06, while using Debian Linux because I was not able to use windows because of hardware foulups, I began new step in MMS development. MMS 2 is intended to be a cross-platform version that will run on linux as well as Windows. It is just begun and needs a bunch of work to get to the point where it has all of the functions of the win32 version but it does work.

Freenet users can also get these files anonymously with FUQID using these keys


... or from this freesite:,ZOJm89bQCLLZw7DJ23i4gw/mmsdev/6//


02/11/09 -1.2.7
	I messed up and introduced a bug in the create dummy routine.  Found and

	Found and fixed another bug in create surbs routine

	Added "use at your own risk" warning to the "'Mixminion 0.0.8alpha3 Included'
	distribution "section of the download page

	Updated readme.txt file

02/10/09 -1.2.6
	Removed Beta designation.  Over 3 years is more than long enough for "beta"
	(yikes! has it been THAT long?!)

	Added LineWrap code contributed by drsnoid.  Messages are now word wrapped
	at 65 characters / line.

	Added "Word wrap on send" checkbox. Checked by default

	Created a third distribution using a copy of Mixminion 0.0.8alpha3 built and
	contributed by "Antonio from Italy" for those who want to use a win32 version
	of the most recent Mixminion release.  I have been using this build since
	5/23/2008 without any problems.

	Changed max newsgroups to 3 to prevent msgs from being lost in m2n's that only
	allow 3 since more and more are making this change in efforts to reduce
	excessive cross posting by trolls.

	Changed processing of the references line to make certain that message id's are
	separated by only one space character by removing all space and tab characters
	and replacing them with single space characters.
	Added Richtx32.ocx v6.0 to program directory so that MMS will work on Vista
	Note: this is un-tested on vista because the one vista machine I had access
	to refuses to boot anymore.

	Changed Mixminion command line to force mixminionrc to stay in the Mixminion
	program directory instead of it's default.  This change makes MMS portable. I
	have tested it on Windows XP running it from a flash drive.  I'll appreciate
	any reports from people who can try it out on vista.  No testing done on Win
	98, also because I don't have a win 98 machine available, however it should
	work fine.

05/18/08 -1.2.5-Beta
	Bugfix: error in mail2news gateway selection code caused @m2n.4096.net to be ignored.
	Code is fixed, but the gateway isn't working as of this release.

	Removed @newsanon.org from mail2news gateway list since it's been confirmed down
	for quite a while.

	Created a second distribution that includes mixminion already set up so that it's
	ready to run "out of the box"

	Changed dummy packet generation to allow creating multiple packets,
	default set to 3 packets at a time.

	Changed "Clear form" command so that it sets the mail2news gateway to @m2n.mixmin.net
	instead of "None"

	Set default update interval to 2 hours if "Auto Update Servers" is enabled.

	Changed minimum possible hops from 2 to 3 to insure minimum safe anonymous path

	Changed maximum possible hops to 29 after experiments showed it to work

	Changed SURB generation so that first and last hop select boxes and Number of hops
	droplist control the SURB path

	Made the 'get path' routine into a subroutine that's now called from several places
	instead of duplicating code

04/09/07 -1.2.4-Beta
	I created a bug with my last fix for the references line from a msg being replied to.
	I forgot to change a var name I was using for the attribution of quoted text which
	had it quoting the references line instead of the Message Id in the first line of a reply

04/02/07 -1.2.3-Beta
	Bugfix: A missed step was causing new newsgroup messages to error out because the
	command line had two '-t' arguments

	Changed reply parsing to include the entire 'references' line in the previous msg
	headers to improve threading.

11/28/06 -1.2.2-Beta
	Due to shutdown of Bigapple remailer and m2n, code specific to it has been

	Added @m2n.4096.net to list of m2n choices.

	@anon.lcs.mit.edu and @newsanon.org are still in the m2n choice list, but their
	use is not recommended.  lcs is often either down or just plain non-responsive
	and newsanon.org is operated by the eelbash remailer, which few if any knowledgable
	remailer users will recommend using.  Users are advised to read alt.privacy.anon-server,
	ask questions search google and decide for themselves if they want to use it.

08/13/06 -1.2.1-Beta
	Added yyyymmdd-news1=news2=news3=news4=news5@newsanon.org
	and mail2news-yyyymmdd-news1=news2=news3=news4=news5@m2n.mixmin.net
	to the mail2news gateway droplist.
	Changed message body text box to a Richtext box with right click menu enabled with
	basic cut-copy-paste-del-undo functions.
	Added 'Message Font Size' to 'Options' menu.  Allows user to set the Font-Size used
	in the message body. Choices are 8,9,10,11,12,14 and 16

10/31/05 -1.2.0-Beta
	Added 'Auto Update Servers' to Options menu. If checked, the 'Update Servers'
	routine will execute automaticaly on a user settable timer from 20 to 720
	minutes (20 min to 12 hours)

	Added 'Update Servers at Startup' to Options menu.  If checked, 'Update Servers'
	will run at program start.

	Added 'Edit Mixminionrc' to the 'Mixminion' Menu.  It will open the default
	mixminionrc file for editing in windows Notepad.exe.  This assumes that mixminionrc
	is located in a	subdirectory of the mixminion dir named ~ (that's a single tilde)

		***USE CAUTION  when editing this file***
		the only entry most users will need to edit
		is the SURBLifetime: entry.

10/27/05 -1.1.9-Beta
        Using 'Reply to Clipboard' function when the windows clipboard did not contain
        a message was causing an 'input past end of file' error.  Fixed by adding a
        check to make sure there is enough data in the clipboard to actually be a message.

09/24/05 -1.1.8-Beta
	Removed '--config=' options from all commandlines allowing the 'mixminionrc'
	config file to exist in it's default directory, which in windows is
	a subdirectory of the mixminion install dir named ~ (thats a single tilde)

	Changed Create SURB so that number of hops are now controlled by the setting
	on the main form

	Fixed Create surb not exiting subroutine when 'Cancel' button selected on 
	any of it's inputs.

	Added msgbox in the create SURB routine to remind user about SURB lifetime
	and advise how to change the default seven day value.

	Added 'No SURB Lifetime Reminder' to Options menu, if checked, the above 
	msgbox will stay quiet.

	The "Add" buttons no longer clear the value being added

	The 'Create Dummy Packet' function now uses the first and last hop selectors
	and the number of hops selector to determine dummy traffic paths.

08/04/05 -1.1.7-Beta
	Readme.txt file re-written.

        Added check of the mixminion path in line one of mms.ini.  If it's not
        correct, ask the user for the correct value.  Similar check added to
        the config form.

        'Update Servers' function was using a hard-coded path to mixminionrc which
        caused a fatal error in mixminion if it was not installed in c:\mixminion.
	this *should* be the last thing in the way to installing in any path desired.

	Changed addressing error check, now if user has both 'To:' and 'Newsgroups:'
	message box asks to choose removing 'To:', remove 'Newsgroups:' or Cancel.

	Added option to automaticaly change mail2news gateway if crossposting with
	@bigapple.yi.org as mail2news.

	Added check to insure that usenet posts have a subject line.

	Added blank line to end of message body and after the .siglines to
	improve readability.

	Because Tonga does not allow setting custom 'From:' line, added error message
	if using Tonga as exit and a custom 'From:'

	Moved the "To do" list and changelog to their own files.

08/22/05 -1.1.6-Beta
	After message is sent, automatically un-tick the 'Include Surb' checkbox.

	'Include SURB' was *using* the SURB that it was supposed to be sending.
	The conflicting variable use that caused it has been changed.

	Changed 'Reply with SURB' to 'SURB Reply', the shorter name improved the
	control layout.

	Added a second SURBfile select box for use with 'Include SURB'.  Used color
	coding to associate selector boxes with surb function checkboxes.
	'Include SURB' and 'SURB Reply' are now both working properly.

	Added Drive Selection to the config screen.

	Fixed Default values used in config screen when no mms.ini is found.

	Added 'please wait till dos job is done' msgbox to 'Create SURB' so that
	file selectors will update properly after create.

08/20/05 -1.1.5-Beta
	Added 'Autokill Sent Surbs' to options menu.  If it's enabled, SURB files
	will be deleted after they are loaded into a message with 'Include SURB'

	Added final code that was left out of the 'First hop select' in the
	previous release.

	Adjusted the tab order so that it makes at least a little more sense.

	Added 'Clear Message' button to clear the message body area without clearing
	the rest of the form.

	Changed the 'Kill Temp Files' button to a button-style checkbox so that user
	can know when it's done when the 'button' pops back out.

08/15/05 - 1.1.4-Beta
        Adjusted announcement of Lcs Mail2news calculated address so that
        it stays quiet if 'Reply with Surb' is ticked.

	Added 'Options' to main menu
	Added 'Quiet Wipe' to Options.  If enabled, file wipe operations will be done
	without status or error messages.

	Added 'Include SURB' checkbox.  If ticked and a SURB file is selected, then
	surb file will be added to end of message after the .sig (if that's enabled.)

	Added 'First Hop Select' to allow choosing start of chain, added code to
	'loadlasthops' routine so 'Update Servers' will refresh it also.

07/02/05 - 1.1.3-Beta
	Replaced "Update Servers" Button on main form.

	Replaced all file deletes with an attempt at an implementation of
	"U.S. DoD 5200.28-STD File Shredding scheme" in which the file being shredded
	is overwriten  with hex$(x) where x is: 35,CA,97,68,AC,53,random
	and then delete the shredded file.  This should be enough for the time being.
	I want to expand on this and also include a better RNG than what visual
	basic has. (Note for those who care: this is the ONLY use of VB's RND() function)

07/01/05 - 1.1.2-Beta
	Added "Queue Msg Only" button.  If pressed, the message will be queued but not
	sent untill the queue is flushed.

	Changed "clear msg on send" to button style

	Updated the 'Using MMS' helpscreen.  Still isn't a great help, but it'll
	serve for now.

	Changed 'Flush Queue' and 'Clean Queue' so that user can either use defaults
	or specify a server to act on.

	'Clean Queue' can now specify age in days of oldest packet to keep.

	Added 'Create Dummy Packet' to the 'Mixminion' menu.  It will create a dummy
	packet.  If 'Queue Msg Only' is selected, then the packet will not be sent 
	untill the next 'Flush Queue'

	Surbfile selector modified so that a surbfile can be selected WITHOUT
	having to tick 'Reply with surb' first.

06/29/05 - 1.1.1-Beta
	Removed 'Refresh Lasthops' button and combined it's function with the
	'Update Servers' routine since both should be done at the same time.

	Added 'Mixminion' Item to main menu, Functions on it:

	'Update Servers' (same as the panel button, which perhaps should be removed)

	'Inspect Queue'  Shows undelivered packets.

	'Flush Queue'    Attempt to deliver all packets in Queue.

	'Clean Queue'    Remove undelivered packets older than 60 days.

	'Inspect Surb'   Temporarily tick the 'Reply with Surb' checkbox and select
			 a surbfile, then this function will show data about the reply
			 blocks contained in it.

06/22/05 - 1.1.0-Beta
	Crosspost handling code in place.  when using anon.lcs.mit.edu as the
	mail2news gateway, the newsgroups line will be automatically reformatted
	for use in the final gateway address.  Error message generated if there
	is more than five newsgroups per posting.

	Added Error message if crossposting when not using the lcs mail2news.

	Removed Newsanon.ath.cx from mail2news gateway list because it appears
	to have been shut down at about the same time Parsifal remailer went down.

06/17/05 - 1.0.10-Beta
	Added ability for user to specify the last hop in the mixminion chain
	'Refresh Lasthops' button reloads the 'Last Hop Select' combobox with
	current data. (This assumes that user has used 'Update Servers' within
	a reasonable period of time.  If 'Last Hop Select' is set to 'Auto' then
	mixminion will just be told how many hops to select servers at random 
	like before.

	Added checkbox 'Clear form when sending', Default is ticked, un-tick to 
	leave the old message and settings in place so that it can be re-sent
	(presumeably to a different address or newsgroup).  If it's un-ticked,
	the 'use sig' checkbox will un-tick on send because the sig is added to
	the message body just before sending, leaving 'use sig' ticked for more
	than one message would result in multiple copies of sig at the end of
	the message.

	In addition to combobox entries, now when program exits, the values showing
	for From, Newsgroup, Hops, Mail2news gateway, and Last Hop Select are
	saved in mms.ini as default values that will be loaded in on startup.

	Changes to 'reply to clipboard' routine to fix errors in handling the
	subject line (TL)

06/13/05 - 1.0.9-Beta
	On startup program was assuming that the 'surbs' subdirectory was there.
	changed to look for a placeholder file in the surbs subdir, if it's not found
	then create the subdir and the file.	

06/11/05 - 1.0.8-Beta
	Changed several uses of 'Input' to 'Line Input' to stop commas from breaking
	inputs (TL)

	Changed M2N control so that the last selected m2n will persist untill changed
	or the reset form button is clicked.

06/10/05 - 1.0.7-Beta
	Removed a delete command I forgot to take out that was causing errors.

06/10/05 - 1.0.6-Beta
	Use of tempfile abandoned entirely.  I found out 'App.Path' gives me what the
	tempfile was intended to do.

06/03/05 - 1.0.5-Beta
	In an effort to come up with a tempfile directory that most systems can deal with
	will now accept any of 'tmp', 'temp', 'homedir', 'windir', and 'winbootdir' that
	can be found.

	Added check to be sure news posts have an m2n selected.

06/01/05 - 1.0.4-Beta
	Changed tempfile usage to get either the "tmp" or "temp" environment variables
	assuming that there is a 'Set temp=Z:\dir' in autoexec.bat

	Changed hops selector from radio buttons to combobox.  Range 2 to 20 hops.

06/01/05 -1.0.3-Beta
	Removed the Mail2news gateway radio buttons and replaced them with a combobox

	Added "@anon.lcs.mit.edu" to the list of Mail2news gateways and support for
	translateing the Newsgroups line into the
	"mail2news-YYYYMMDD-newsgroup.name@anon.lcs.mit.edu" address format (using date$
	to get the current date from the system clock) if lcs is selected as m2ngate.

	This makes 3 M2n's that encode newsgroup as part of the M2n address.
	Are there others??

	On startup, write a tempfile in c:\windows\temp with the name of the program
	directory path.  Delete when program exit.  Should allow installing to any
	drive / path.

05/30/05 1.0.2-Beta
	Removed un-used source files from source directory.

05/30/05 - 1.0.1-Beta
	Fixed a typo that caused 2nd line of .sig to appear twice and skip the 3rd line.

05/30/05 Version 1.0-Beta Released for testing.

05/29/05 - 1.0rc9-Beta
	Added 'Debug' checkbox to main form.  if checked show command line preview and
	the dos box with the send message command line.  if not, then quiet operation.

	Added entries on config menu to allow entering up to 3 lines of text for a .sig
	which is saveed in the .ini file.

	Added 'Use sig' checkbox. (default NOT checked) If it is checked, the .sig text
	is appended to the message body after the customary dash-dash-space sig-separator

	Added 'Beta' to version designation.  When ready for public Beta release will
	drop the 'rc#' portion.

	Added 'Cancel' option to the 'Command line Preview' to allow aborting message.

05/29/05 - 1.0rc8
	Added call to writeini sub after adding the new address to the to_addr combobox

	Updated config.frm to deal with current .ini format

	Changed "Newsgroups" to combobox and added save to .ini functions as the 'to
	and 'from' fields.

05/28/05 - 1.0rc7
	Fixed error in build command line.. was adding an extra ".srb" to filename.

	Fixed handling of translating 'From:' or 'Reply-To:' in original to "To:" in
	reply / followup.  It now strips all but actuall address for the "to" field
	but uses full 'user name <email@address.com>' format for attribution in 
	quoted message.

	In 'reply to clipboard', added check to be sure clipboard was not empty.

	Added code to 'clearform' routine to de-select the checkbox and the surbfile
	select box.

	Fixed - redundant 'Re: ' was being applied to subject line.

	Fixed error in sending message.  Was giving error anytime a SURB was not used. (TL)

        Changed "From" to a combo box and added the same functunality as the "TO" field has.
	User can now add frequently used values to the .ini file. (TL)

	Played with formatting of the 'Changelog' to increase readability (TL)

05/27/05 - 1.0rc6
	Starting to fix the resize problem.  The text box size now scales with the
	form as size is changed and minimum size established to keep controls
	visible and useable.
	Surb file select box now refreshes list when 'reply with surb' is ticked
	to make sure file list is current. this way dead surbs can be deleted
	and the list refreshed after creating a new surb without shutting down.
	Added Delete surbfile button and confirm delete. 

05/26/05 - 1.0rc5
	Replaced the 'use surb' button with a checkbox and file selection box
	to allow user to select surb file stored in c\mms\surbs.
	*note* once new SURB is created, it does not show in file box untill
	next time program starts.. 
	Changed surbs creation and use routines to keep surbs in subdirectory
	of their own.
	Adjusted fonts and layout, set fields to use courier new 10pt fixed-width

05/23/05 - 1.0rc4
	Added the beginnings of SURBs useage.  It will eventualy 
	need an overall SURBs manager.
	'use surb' function to allow SURB as a destination.
	'make surb' to allow creating SURBs.
	Mxminion cmd line building code adjusted to allow sending to SURB.
	Added 'decode clipboard' to decode SURBs replies.  result is pasted into
	the message body area...(but not quoted)
	Adjusted cmd line building to skip 'from' address if one is not entered.

05/22/05 - 1.0rc3
	Added 'reply to clipboard' function.  it will get the text stored in the
	windows clipboard and automatically fill in the to, newsgroups, subject
	and references fields and then quote the message body, prepending ">"
	to each line.

05/21/05 - 1.0rc2
	Added '-D no' to the command line it generates because it was failing
        because of an http 404 error while trying to do an automatic
        update-servers before sending a message.

        Added update-servers button.

        Shell commands set to vbNormalFocus temporarily for testing.

05/19/05 - 1.0rc1
	First working version.  manual entry of all fields and send msg
	using specified number of hops.  can send to email address or to
	either bigapple or newsanon mail2news gateways.



Bible Studies at A Peculiar Place

Lura's Bookcase, Exploring the Gospel in Plain Talk.



Blogs of Friends & Family

  • Toys Den



    Another way to help is to put links to this page on your sites, especially if those pages have a Google PageRank of 3 or higher. (although of course links on any page, regardless of rank, are always valuable and welcome.)

    If you do put a link to this page on your site, I ask that you not use 'nofollow' as that kinda half defeats the purpose of the link.