Re: Fwd: State of Phantom

9 views
Skip to first unread message

Dave Knapp

unread,
Aug 23, 2010, 11:02:46 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Sat, 1 May 2010


Hi,
I am the person currently implementing the protocol for my diploma thesis. I
have today published an entry on the phantom blog[1], describing the current
state of affairs regarding the implementation. I am not going to bore you by
quoting it here again, but most questions from previous mails should be answered
in this entry. If you have any more questions please feel free to email me about
it, I will answer them as best I can.

As for the interest of other people in the phantom protocol, I am glad to see
it exists. It would be great if we could together bring this project out into
the wild, after all it is much needed there. Thank you for your interest and
enthusiasm.

> Finally, Kyle Williams (already included in your original CC list) have
> been talking before about starting a separate experimental
> implementation, written in the "Revolution" language, and being based on
> UDP communication instead of TCP, for optimization purposes. I'm not
> completely sure about what the status of that implementation is, but
> please let us all know Kyle! :-)

That sounds very interesting, please keep us informed.

best regards,
Johannes

[1] http://phantom-anon.blogspot.com

--
http://www.fastmail.fm - Accessible with your email software
or over the web

Dave Knapp

unread,
Aug 23, 2010, 11:21:51 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Sun, 22 Aug 2010


Hi. Before perhaps disappearing... I'll be posting some old
'private' email, that seems perfectly suitable for public
posting, to the google group so that others may read and take
part in discussion and development. Just didn't want anything
to go unpublished. Enjoy, and may Phantom become a fine strong
anonymization success.

PS: I still think that support of OnionCat hooks, or native
inclusion of an OnionCat library in Phantom, will greatly help
its adoption by the masses and suitability to use with indeed ANY
application natively and without trickery.
The original 'IP' addressing and library hooking scheme, called
out in the whitepapers and talks/mail, is simply far too limiting,
non-interopable with other overlapping 'library hookers', and an
ongoing multi-platform maintenece issue.

PSS: Thanks Johannes for the recent blog posts and coding work! :)
I think Magnus may have been thinking of a license for the spec.
Thereafter, people could have licenses for specific code
implementations to that spec. It would be nice if people's implementations
could always remain useable (BSD) and available (GPL). Perhaps public
domain with a code publishing clause, or just BSD :)

PSSS: If anyone has general updates or news, feel free to post to
the group :)

--
http://www.fastmail.fm - Or how I learned to stop worrying and
love email again

Dave Knapp

unread,
Aug 23, 2010, 11:07:56 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Mon, 10 May 2010


Hallo Dave,
Thank you for the interesting thoughts and threads.

> I've just been reading a couple interesting threads below regarding
> the interface between Phantom and applications. It's unclear to me
> from the current specification exactly how Phantom planned to do
> that?? But maybe that is because the specification really only
> covers the core protocol.
> However these threads seem to speak of simplifying that part of
> Phantom even more. I like it because parts of them talk of treating
> Phantom as just another network with destinations that ANY application
> can talk to by IPv6 routes or even DNS later on.

That is what I was aiming to achieve. Phantom should be (at least this is what I
have always thought) in the end be like a secure IP-Layer on which any
application can run. I have not yet had time to look at the information you
pointed me at, but I will definitely have a look, before I start with that part
of my Implementation. Basically my goal is that almost all (hopefully)
applications will just run over phantom just like they do on the "normal"
Internet (at least close to).

> Maybe I suggest considering it as the 'some kind of usable frontend'
> that Johannes blogs about. Seems like the TUN or SOCKS listener of
> Phantom would be rather easy to implement.

I hope so. My supervisor at the university suggested to set something up using
linux-tun-interfaces. However I have not looked into it yet and cannot say too
much, but thank you for the tips.

mfg,
Johannes

--
http://www.fastmail.fm - Access all of your messages and folders
wherever you are

Dave Knapp

unread,
Aug 23, 2010, 11:05:48 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Fri, 7 May 2010


Hi!

I had a look at those links that you provided. I also noticed that there have
been related posts to ocat...@cypherpunk.at. Unfortunately I somehow missed
them in my email chaos.

I tried to follow those threads but it is a little bit difficult without being
involved in detail.
As far as I could find out is that you are intending to implement some kind of
TUN/TAP interface into Phantom that offers the same or at least a similar
interface as OnionCat does in combination with I2P and Tor. If Phantom
provides a SOCKS interface it would be easy to extend OC to support Phantom
also.

If you don't like the SOCKS idea I could offer that I rewrite OC a little bit
in a more modular manner so that you could directly include it into the
Phantom code with some defined interface. I think that some teamwork of our
projects would make sense :)

Implementing portable TUN/TAP is easy in theory but trust me it is a bitch in
reality. I implemented OC for OpenBSD, FreeBSD, Linux, Solaris, MacOSX and
Windows, yet.


Best regards,

Bernhard

Dave Knapp

unread,
Aug 23, 2010, 10:57:11 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Fri, 30 Apr 2010

Hi :)

Can someone provide a view of the current state of the Phantom
specification and the Phantom project itself? I've been looking
around and can't seem to find any sign of activity in 4-5 months
or more.

I'm asking because Phantom seems workable and promising on paper.
It also seems more scalable than Tor due to it's use of DHT. Perhaps
it competes best with I2P, or may even be better in some regards.

I'd also like to look over the current code while reading through
the spec and then see if I can do something. However I haven't been
able to find any repository for it. The GoogleCode repo is empty :(
Could someone publish whatever is current to GoogleCode so others
around the world can begin to play, or send me a tarball or something?

And last, in the spec hosted on fortego, or maybe it was in the
presentation or something, mentioned license updates were still
pending. Have those been resolved and published yet so that developers,
implementors, enhancers and so on are free to use it?

There seems to be a fair amount of early interest from potential
users on some of the onion and i2p sites and lists. So I hope the
project is still under active work and not dead :)

I'm not sure if the list accepts open on-topic posts, so
please excuse the CC's and feel free to forward this to the list.
I'm not on the list but I can read it via Google.

Thanks!

--
http://www.fastmail.fm - One of many happy users:
http://www.fastmail.fm/docs/quotes.html

Dave Knapp

unread,
Aug 23, 2010, 11:00:38 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Sat, 01 May 2010


Hi Dave!

Thanks for your interest in Phantom (I'm also glad to hear of those
other people's interest that you mention).

The Phantom project is indeed very much alive and kicking!

The implementation started out with Michael Prinzinger (Tayrun/Vilwarin
in the email addresses you CC:ed above, out of which I removed one,
since they go to the same person) doing a bunch of work with a C++
implementation as part of his master thesis. Leslie Polzer (included
above as "Sky") also helped him out with some things.

After that, Michael was helpful enough to pass the project on to his
friend Johannes Schlumberger (also doing it as a master thesis project,
and I've included his address above in the CC now, i.e. j...@icip.de), who
converted it to C instead, rewrote a bunch of stuff to suit his own
taste, and have now also come VERY close to a complete working PoC
implementation!

Oh, and I have actually tried to get him to write something about it on
the Phantom blog, but things seem to have, well, come between for him...
;-) I have nagged him some more about it now anyway. :-)

There is also yet another master thesis student who will most likely be
working on Phantom now/soon, possibly focusing mostly on research and
implementation of a robust specialized DHT design specifically for the
purposes of Phantom (Johannes' PoC design contains a Kademlia-based DHT,
just to get it running, but Kademlia might not be optimal in all
aspects). I have included this third master student in the CC list above
too, namely Shahin Madani. Please let us all know about your latest news
Shahin, if any?

Finally, Kyle Williams (already included in your original CC list) have
been talking before about starting a separate experimental
implementation, written in the "Revolution" language, and being based on
UDP communication instead of TCP, for optimization purposes. I'm not
completely sure about what the status of that implementation is, but
please let us all know Kyle! :-)

About the code, there might be some problems with releasing Johannes'
code until his thesis project has ended, but after that we will
hopefully finally be able to release an official public version of the
Phantom code under the correct license (a special open source license
for Phantom, as described in the paper).

It's really great with this interest in Phantom anyway, and between the
skilled people in the CC line above, we really should be able to
accomplish great things!

Looking forward to hearing more from you all!

Regards,
Magnus

--
http://www.fastmail.fm - Access your email from home and the web

Dave Knapp

unread,
Aug 23, 2010, 11:07:00 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Sun, 09 May 2010


Dave and Bernhard,

Thanks for your interest and offers to help!

I think that the more options we have of interfacing Phantom with
arbitrary applications, the better off we will be, so please go ahead
and explore/implement any angle you want related to this!

One important aspect, which made me lean more towards the direct
per-application network API hooking method from the start is that
"normal users" (who are practically always the ones to bring any
protocol to _real_ fame and mass adoption) should be able to use it
without any problems whatsoever.

This means that even SOCKS is a too messy method (not to mention not
necessarily supported by all applications you might want to anonymize),
and that additional custom network interfaces in the operating system
etc are completely out of the question... Well, at least if you don't
also create some very simple tool to direct arbitrary programs to these etc.

Power users might absolutely want such more "elegant" solutions though,
and the other, more "user friendly" solutions could then also be built
upon such more stable and elegant solutions of course.

I would be most happy to see _all_ these types of interfaces created for
Phantom, and still very happy to see only one or two of them, so please
feel free to implement whichever ones you fancy yourselves, I'm sure
they will all be great.

Please specifically talk to Johannes (although please CC me) about what
he thinks he would be helped most by currently, since I know he is as we
speak looking for a solution like this to test his new Phantom
implementation all out!

And Bernhard, you mention that you already have a SOCKS solution for OC,
and that you could possibly create a more "direct" interface for it. I
personally believe that the creation of such a direct interface
(typically in the form of a wrapper/proxy library for the common socks
library of the operating system in question) would make your tool much
more attractive to many developers, since they can then simply link
their code with it instead of the standard socks library, and be ready
to go in seconds! (it would also incredibly simplify injection of it
into unknowing/uncooperating third-party applications, in exactly the
way that is planned/desired for e.g. Phantom).

Please all of you let me know if you have any other questions, and
again, please Johannes let us all know what you would prefer most in
order to be able to test your new Phantom implementation in the most
efficient and simple way, and make use of the resources offered by all
these interested and helpful people!

Regards,
Magnus

Dave Knapp

unread,
Aug 23, 2010, 11:04:14 AM8/23/10
to phantom-...@googlegroups.com
Forwarding some old mail for wider consumption...
Date: Thu, 06 May 2010
From: Dave


Thanks for the update and the blog post!



I've just been reading a couple interesting threads below regarding
the interface between Phantom and applications. It's unclear to me
from the current specification exactly how Phantom planned to do
that?? But maybe that is because the specification really only
covers the core protocol.

However these threads seem to speak of simplifying that part of
Phantom even more. I like it because parts of them talk of treating
Phantom as just another network with destinations that ANY application

can talk to by IPv6 routes or even DNS later on. It would seem
cumbersome maintain code to capture/redirect processes or system
calls or to do application specific tools. Why not let the user be
responsible for their own security, as always, under the already
familiar concepts of IP networking and care of one's online identity.
I'm testing this tool with I2P and Tor this weekend for the first
time. It, and moreso the idea under the hood, looks promising :)

Maybe I suggest considering it as the 'some kind of usable frontend'
that Johannes blogs about. Seems like the TUN or SOCKS listener of
Phantom would be rather easy to implement.

I've cc'd three other people who seemed to be involved in those
threads that may have interest in this new update, don't kill me :)

Other unrelated thoughts from the spec doc coming later.

Also, since Phantom is just a core specification, it is good to see
various developers interested in writing different implementations.
Like BitTorrent, sure, a reference client exists... but the masses
largely use other implementations. Many coders can all play, pick
and share, and release... and this is a good thing :)

Nice to see Phantom alive and moving towards a possible July release.
I'm excited to see this new system! :)


-- Userland interface
http://groups.google.com/group/phantom-protocol/t/a1b3909806cb7a35
-- Tun/TAP
http://groups.google.com/group/phantom-protocol/t/b379a10b877aa915#
-- OnionCat
http://groups.google.com/group/phantom-protocol/t/37cbfca8e7ac13c6

--
http://www.fastmail.fm - Email service worth paying for. Try it for free

Reply all
Reply to author
Forward
0 new messages