anet-devel Mailing List for ANet (Page 5)
Status: Abandoned
Brought to you by:
benad
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(29) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(13) |
Feb
(7) |
Mar
(10) |
Apr
(7) |
May
(3) |
Jun
(6) |
Jul
(4) |
Aug
(2) |
Sep
(1) |
Oct
(3) |
Nov
(3) |
Dec
(12) |
2002 |
Jan
(6) |
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2003 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Dale T. <dal...@88...> - 2000-12-05 03:02:19
|
How else can you enter information into the network anonymously? I was thinking of a similar approach using recursively wrapped RSA encryption. I was going to add some features that would make the network harder to spam. How would you solve the problem? In the scheme you have preposed (2.7 Anonymous two-way data flow) you must trust the proxies for anonymity to be maintained. For example the proxy you connect to could be malicious and would know who you are communicating with. Without using encryption how would this be avoided? thanks, - Dale On Mon, Dec 04, 2000 at 08:55:43PM -0500, Benoit Nadeau wrote: > Anonymous my a**... YES! I'm jealous! Their protocol suck but they have > so good PR (public relations) that thousands go their project site each day! > > If they can't admit that their protocol is *NOT* anonymous at all, then > I'll leave them to their fantasy... > > >Key anonymity and stronger sender anonymity can be achieved by adding > >mix-style ``pre-routing'' of messages. In this scheme, basic Freenet > >messages are encrypted by a succession of public keys which determine the > >route that the encrypted message will follow (overriding the normal > >routing mechanism). Nodes along this portion of the route are unable to > >determine either the originator of the message or its contents (including > >the request key), as per the mix-net anonymity properties. When the > >message reaches the endpoint of the pre-routing phase, it will be injected > >into the normal Freenet network and behave as though the endpoint were the > >originator of the message. > > Hey, who wants to store *MY* porn of *YOUR* machine whithout asking for it? > > .... > > I'll send them a point by point list of all the limitations and problems in > their protocol. As of now, my list is getting huge. And I have a really > easy way to litteraly "eat" and destroy the entire contents of the network > in mere days... So that if they don't listen to me at all ("shut up, > newbie!"), I'll be able to demonstrate to them, legally, how their protocol > suck... > > - Benad > > > _______________________________________________ > ANet-devel mailing list > ANe...@li... > http://lists.sourceforge.net/mailman/listinfo/anet-devel |
From: Benoit N. <be...@ma...> - 2000-12-05 01:55:50
|
Anonymous my a**... YES! I'm jealous! Their protocol suck but they have so good PR (public relations) that thousands go their project site each day! If they can't admit that their protocol is *NOT* anonymous at all, then I'll leave them to their fantasy... >Key anonymity and stronger sender anonymity can be achieved by adding >mix-style ``pre-routing'' of messages. In this scheme, basic Freenet >messages are encrypted by a succession of public keys which determine the >route that the encrypted message will follow (overriding the normal >routing mechanism). Nodes along this portion of the route are unable to >determine either the originator of the message or its contents (including >the request key), as per the mix-net anonymity properties. When the >message reaches the endpoint of the pre-routing phase, it will be injected >into the normal Freenet network and behave as though the endpoint were the >originator of the message. Hey, who wants to store *MY* porn of *YOUR* machine whithout asking for it? .... I'll send them a point by point list of all the limitations and problems in their protocol. As of now, my list is getting huge. And I have a really easy way to litteraly "eat" and destroy the entire contents of the network in mere days... So that if they don't listen to me at all ("shut up, newbie!"), I'll be able to demonstrate to them, legally, how their protocol suck... - Benad |
From: Benoit N. <be...@ma...> - 2000-12-04 02:09:09
|
I just added some stuff in "Part 1: Introduction" in the docs. Don't be affraid to tell me if there's something you don't understand, or if you have better ideas. You might guess from this posting that Parts 3 and 4 will be deferred to later this week. If that's your case, then you're right... I had another open source project to finish (http://source.bungie.org/)... And Dale, you can send your docs to this mailing list this Monday if you can. Even if they don't "agree" with the way I defined ANet in my docs, send them anyways. There might be some good ideas we want to keep, or it may be actually better than what I made until now. Ajaya, I know (I'm just guessing) that your email server may be terrible, but try to participate a bit in the discussion. We're trying to define something new here, and you won't be able to find any docs on "distributed networking", since it's something that was invented less than 2 years ago with Gnutella... One last thing. From now on, let's try to keep the subject header ("Re: [ANet-devel] Re: Basic requirements") and the replies clean by removing "[ANet-devel]" and the footer that the mailing list adds. And if that's too much trouble, I'll remove the footer completely... - Benad |
From: Benoit N. <be...@ma...> - 2000-12-02 15:34:56
|
>I think we're getting mixed up here between the message protocol and the needs >of applications built upon it. If you have a generic anonymous message >library >that allows you to send a message between two nodes of the distributed network >then you'll be able to use it to send queries or data transfers. Not data transfers, as somehow two nodes must become proxies that communicate directly with each other (IP to IP), and not through the network. But the data that is transfered from the node to the proxy is transfered like queries. >I'm thinking about the mechanics of moving a piece of data around the network >no what the nodes do with the data once they have it. Ooohhhhh... You mean the "packets" of data that will be moving around the network? >The query is a broadcast message - please can I have a file called X. You got it. >Static data is a piece of a file - please transmit this data from A to B. Uh... No. "Static" means that some data stays for a long time in the network. Maybe I wasn't clear enough about that. So, unless you want a file to "stay" in the network (with cache systems), you never use static data, especially when you just want to transfer some data from A to B. "Static data" means that the data will be distributed to the whole network (like queries), but is bigger than queries and will stay in the network a longer amount of time. "Two way data transfer" means that two nodes want to exchange between each other and that the data should neither be cached nor duplicated to the whole network. Those two nodes can be any node on the network, not just two nodes that are adjacent that are connected to each other, IP to IP, as part of the network. What I'm trying to do here is to define the way ALL "packets" of data should behave on the network, so that any service you can think of can work on top of that. Think about what happens with ports in TCP. You don't accept connections on ports you don't know how to handle. But then, let's say that you want to make a new service in ANet. If it worked like TCP (behavior is not defined), everyone on the network would have to download your service module to make the module work on the network, otherwise you might find it difficult to connect to the network, as no one can accept the connection for your service, as no one knows how to handle your "packets". The idea of splitting structure and behavior works great in TCP/IP, as you connect to one specific IP address, but that cannot work in a distributed network. So, behavior has to be defined in ANet. >If you want a chat type system then you'll also need - please transmit this >data from here to this group of addresses. That shouldn't be allowed. The goal of ANet is to have no need to be identified by any "address" whatsoever. So, either you "find" the addresses (or more precisely the proxies) that want the data with queries and then upload the data to them, or you duplicate the data to the whole network as static data. Chat should then work as queries, as it already did some time ago in Gnutella. - Benad |
From: Dale T. <dal...@88...> - 2000-12-02 01:37:15
|
I think we're getting mixed up here between the message protocol and the needs of applications built upon it. If you have a generic anonymous message library that allows you to send a message between two nodes of the distributed network then you'll be able to use it to send queries or data transfers. I'm thinking about the mechanics of moving a piece of data around the network no what the nodes do with the data once they have it. The query is a broadcast message - please can I have a file called X. Static data is a piece of a file - please transmit this data from A to B. If you want a chat type system then you'll also need - please transmit this data from here to this group of addresses. thanks, - Dale On Fri, Dec 01, 2000 at 07:56:14PM -0500, Benoit Nadeau wrote: > >Hi, > > > >Can you explain how you a query differs from a 'message' in the system? > >Surely > >a query is just another packet of data that needs to be communicated to > >different node/nodes in the system? I think that we are probably talking > >about > >the same thing. > > > >For this list I was focusing on the anonymous messaging part of the > >application. > >I'm am a bit confused about what you mean in section 2.2 of the documentation > >about handling static data. How would you propose to give the > >functionality of > >Freenet without using a similar system? > > > >What do you mean by static download (about Freenet)? > > > >thanks, > > > >- Dale > > A query is like the searches in Gnutella: the data to transfer is small, > and doesn't need to exists on the network for a long time. There is no > check to see if a node already received a query. Thus, a node might receive > duplicate queries. > > For static data, I'll explain with an example. Let say you want to have > newsgroups in ANet. Each message in the newsgroup should exist on the > network for some days and the data is usually much bigger than a usual > query (> 20 bytes). As all static data, each message will be marked with > it's creation date (when it was sent), and a pseudo-unique key (128-bit > random number). When there is some unused bandwidth, a node that has some > static data will try to distribute it. But since the data is relatively > big, the node will always ask its adjacent node if it already has the > message. This check will make some extra trafic, but this might save a lot > of traffic if the other node already has the data. Because static data is > long-lived, the nodes will try to cache the data as long as they can (or > want), thus most of the recent postings will be available from the network. > > The big difference with FreeNet is that using static data is NOT > recommended for file downloads, that is when a node wants to download some > data from another node. This is because the "anonymous two way data > transfer" allows any kind of download, while the transfer, in both > direction, remains anonymous. Even using static data to store some files on > the network for a long amount of time shouldn't be allowed. An example. I > want to download the latest version of emacs (about 20MB, IIRC). If file > downloads are made using static data, the 20MB would have to be > "duplicated" to ALL the nodes on the network before the file reaches me. > Unless half the nodes on the network would want exactly the same file, the > precious network bandwidth will be wasted. A new version of emacs, and look > at that network speed drop... > > So, the difference between a query and static data is huge, because they > are handled completely differently. > > I'll put an example of a distributed network with my "passive file > browsing" service. > > - Benad > > > _______________________________________________ > ANet-devel mailing list > ANe...@li... > http://lists.sourceforge.net/mailman/listinfo/anet-devel |
From: Benoit N. <be...@ma...> - 2000-12-02 00:56:15
|
>Hi, > >Can you explain how you a query differs from a 'message' in the system? >Surely >a query is just another packet of data that needs to be communicated to >different node/nodes in the system? I think that we are probably talking >about >the same thing. > >For this list I was focusing on the anonymous messaging part of the >application. >I'm am a bit confused about what you mean in section 2.2 of the documentation >about handling static data. How would you propose to give the >functionality of >Freenet without using a similar system? > >What do you mean by static download (about Freenet)? > >thanks, > >- Dale A query is like the searches in Gnutella: the data to transfer is small, and doesn't need to exists on the network for a long time. There is no check to see if a node already received a query. Thus, a node might receive duplicate queries. For static data, I'll explain with an example. Let say you want to have newsgroups in ANet. Each message in the newsgroup should exist on the network for some days and the data is usually much bigger than a usual query (> 20 bytes). As all static data, each message will be marked with it's creation date (when it was sent), and a pseudo-unique key (128-bit random number). When there is some unused bandwidth, a node that has some static data will try to distribute it. But since the data is relatively big, the node will always ask its adjacent node if it already has the message. This check will make some extra trafic, but this might save a lot of traffic if the other node already has the data. Because static data is long-lived, the nodes will try to cache the data as long as they can (or want), thus most of the recent postings will be available from the network. The big difference with FreeNet is that using static data is NOT recommended for file downloads, that is when a node wants to download some data from another node. This is because the "anonymous two way data transfer" allows any kind of download, while the transfer, in both direction, remains anonymous. Even using static data to store some files on the network for a long amount of time shouldn't be allowed. An example. I want to download the latest version of emacs (about 20MB, IIRC). If file downloads are made using static data, the 20MB would have to be "duplicated" to ALL the nodes on the network before the file reaches me. Unless half the nodes on the network would want exactly the same file, the precious network bandwidth will be wasted. A new version of emacs, and look at that network speed drop... So, the difference between a query and static data is huge, because they are handled completely differently. I'll put an example of a distributed network with my "passive file browsing" service. - Benad |
From: Dale T. <dal...@88...> - 2000-12-01 02:31:48
|
Hi, Can you explain how you a query differs from a 'message' in the system? Surely a query is just another packet of data that needs to be communicated to different node/nodes in the system? I think that we are probably talking about the same thing. For this list I was focusing on the anonymous messaging part of the application. I'm am a bit confused about what you mean in section 2.2 of the documentation about handling static data. How would you propose to give the functionality of Freenet without using a similar system? What do you mean by static download (about Freenet)? thanks, - Dale On Thu, Nov 30, 2000 at 08:12:44PM -0500, Benoit Nadeau wrote: > >Here is the list I have so far: > > > >1) Must be able to send messages across the network anonymously. > > - Yeah I know this is basic but it doesn't hurt to say it ;) > > > >2) Must be difficult/impossible to tell from which node in the network the > >message originated. > > > >3) Must be difficult to perform traffic analysis on the network. > > - e.g. Activity patterns must be shielded. > > > >4) Must be resilient to malicious nodes. > > - e.g. Spamming nodes, flooders etc... > > > >5) Must not rely upon a central server. > > > >6) Must try to make efficient use of bandwidth. > > - Not at the expense of 1-5 however > > > >So which ones have I missed? > > If "send messages" is for queries, then you missed the static data and the > data transfers. > > - Benad > > > _______________________________________________ > ANet-devel mailing list > ANe...@li... > http://lists.sourceforge.net/mailman/listinfo/anet-devel |
From: Benoit N. <be...@ma...> - 2000-12-01 01:38:02
|
>I must admit I'm not that keen on doing a file transfer program - FreeNet >and Publius can already do this. But they can't do anonymous downloads. And FreeNet is stuck with static download, which is just terrible. Most importantly, file transfer is the only protocol that uses all of the core. Queries is when you want to start downloading something ("I want file X in directory Y"), static data for the listing of the directories, and anonymous data transfers for downloads. (tell me if you didn't understood this while reading my docs) >I think we need something that people haven't done before. A protocol that isn't attached to any specific use and can do more that just tranfering files? I know users (not coders) may not see this, but our protocol could be "one size fits all"... >But all of the applications can be built apon a basic messaging platform. Gnutella already does that, and you can see the speed problem. Are you talking about queries or static data? Queries is like the searches in Gnutella, while static data is mostly like FreeNet (I think). >Also how do people feel about making the core library LGPL? Wow! Great idea! - Benad |
From: Benoit N. <be...@ma...> - 2000-12-01 01:12:50
|
>Here is the list I have so far: > >1) Must be able to send messages across the network anonymously. > - Yeah I know this is basic but it doesn't hurt to say it ;) > >2) Must be difficult/impossible to tell from which node in the network the >message originated. > >3) Must be difficult to perform traffic analysis on the network. > - e.g. Activity patterns must be shielded. > >4) Must be resilient to malicious nodes. > - e.g. Spamming nodes, flooders etc... > >5) Must not rely upon a central server. > >6) Must try to make efficient use of bandwidth. > - Not at the expense of 1-5 however > >So which ones have I missed? If "send messages" is for queries, then you missed the static data and the data transfers. - Benad |
From: Dale T. <dal...@88...> - 2000-11-30 18:59:13
|
Hi, I thought it would be good for all of us to list what the basic requirements of the protocol must be. Here is the list I have so far: 1) Must be able to send messages across the network anonymously. - Yeah I know this is basic but it doesn't hurt to say it ;) 2) Must be difficult/impossible to tell from which node in the network the message originated. 3) Must be difficult to perform traffic analysis on the network. - e.g. Activity patterns must be shielded. 4) Must be resilient to malicious nodes. - e.g. Spamming nodes, flooders etc... 5) Must not rely upon a central server. 6) Must try to make efficient use of bandwidth. - Not at the expense of 1-5 however So which ones have I missed? thanks, - Dale |
From: Dale T. <dal...@88...> - 2000-11-30 02:24:53
|
Ok... I've tried the documentation edit and it works fine. So we'll be able to correct each others spelling etc... ;) I think it is a good idea to have linux as the initial platform and a messaging application would be an ideal starting point. I must admit I'm not that keen on doing a file transfer program - FreeNet and Publius can already do this. I think we need something that people haven't done before. But all of the applications can be built apon a basic messaging platform. The underlying library shouldn't care if it's transferring a chunk of a document or a query - it just has some data to transfer between two places. Also how do people feel about making the core library LGPL? We have a bigger chance that more people will use it which would allways be good? I've done some TCP/IP programming in C & Java so I'm sure it won't be too much of a problem. thanks, - Dale On Wed, Nov 29, 2000 at 08:48:53PM -0500, Benoit Nadeau wrote: > >Hi, > > > >While I'm waiting to be approved for the devel list I'll e-mail you both > >directly. > > Done! > > > >I think it would be useful to define the scope of the initial design - > >e.g. get something working as quickly as posible so that we have a > >framework in > >which to test our ideas. I don't think it will be possible for us to get > >a really good > >idea of how to approach the problem until we have tried a few designs. Agree? > > Yep. Let's start the TCP/IP module on Linux, stdio for the interface, and > the bare minimum for the rest. But I never did TCP/IP on Linux, and > LinuxPPC on my machine has some weird problems with the network card... > Ajaya, could you help by coding some TCP/IP? > > > >I'd suggest that the first step would be to design the interface and possible > >implementation of a distributed anonymous messaging library. Once we have > >this defined then it should be easy to build applications on top of it. > > That's actually what I meant by "Core Module": a kind of "distributed > anonymous messaging library". > > > >It would also be good to get some ideas on the table for a first application - > >something that can show that our library works and is well founded? > > The first service could be some kind email, that is, sending a text message > to everyone on the network as a "distributed query". But the file browsing > service wouldn't too complicated to code, once all the other modules > (Interface, Core, Direct-to-port and TCP/IP) are done. > > > >I've started writing down some ideas for a messaging protocol based on the > >stuff that Benoit has already done (good start BTW). I will hopefully have my > >ideas concrete enough to put them in an e-mail by Monday. > > Great! I will add some docs (Part 3: Network Optimization and Part 4: > Security Systems), but they won't be complete, especially the security one. > This will mean that we'll have an "idea clash" next Monday! Great! (I > already said that...) > > You all have "Editor" access to the docs, so you should be able to add and > edit your docs directly to the site. But don't ask me how. Maybe this means > that you'll be able to click on "Admin". Their web site is far from being > "administrator-friendly"... > > > >PS Did you come up with ANet to mean Anonymous Network? > > Anonymous and Anarchy. I'll write this down on the web site. > > ..... > > THE SSH LOGIN WORKS! > http://anet.sourceforge.net/ WORKS! > > I'll work a bit on it this weekend, but it's not my top priority. > Chris, could you do some web pages for me? Hehe. Just a joke. ;-) > > - Benad > |