View Single Post
Old 19-07-04, 07:10 PM   #23
TankGirl
Madame Comrade
 
TankGirl's Avatar
 
Join Date: May 2000
Location: Area 25
Posts: 5,587
Thumbs up

Hi and welcome to P2P-Zone, shepdog! It is always a pleasure to see new developers joining the p2p movement!

As for the title of your thread, you have come to just the right place to ask your questions – this is an active and savvy p2p community with plenty of collective experience and insight.

Some comments on the discussion so far:

Quote:
Originally Posted by shepdog
The new protocol I am developing will have sophisticated searchs. The ability to search on ID3V1 and V2 tags, some data matching of the actual content of the file. What I mean by this is that I've seen MP3's tagged totally differently but the conent of the file be exactly the same. Same bit rate, same length, same content. A lot of applications fail to recognize these as the same files. I want to.
Hashing is the obvious solution here. Hash trees are definitely worth considering as they allow you to verify files in small chunks, and the verification does not depend on the order in which the chunks are received. The latter property becomes important in multisourced environment where you may request things in a certain order but receive them in a totally different order.

Quote:
Originally Posted by shepdog
I also want to take this a step further as well. You might have a file that is sampled at a given rate and you want to finish d/l the file. I want to see what I can do about re-encoding on the fly to desired bitrate. What sort of advanced search features are you speaking of? I am wide open to suggestions.
This might not be a very good idea. Mixing higher quality rips to lower quality rips on the fly will just gradually degrade the average quality of the content pool and make it harder to spot original high quality releases apart from their more or less degraded versions. It is much better to try to distribute high quality releases as such, untouched, and thereby maximize the number of peers having them in the multisourced environment. If a lower quality version is needed for some reason, it should be distributed similarly untouched, so that the peers having it could form another large set of sources for downloaders.

Quote:
Originally Posted by shepdog
Encryption:
The network as I have it designed is a completly anon and secure network. I also want the users to be able to use any encryption scheme they want.

It will come with a default encryption algo, probably twofish, but you will have the ability to use anything you want, even custom developed routines. You will also have the ability to say what type of functionality you want encrypted, chats, searches, file listings, d/l's, etc. This will allow you to optimize the speed of the system.
I think Filetopia has used a similar approach but for an average user such a choice is needless and technically very challenging. Few WASTE users know (or care to know) which particular encryption method is being used in the software – for them it is important to know that the method chosen by the developer is 1) secure and 2) efficient enough to do the job. It is a good idea to test different encryption methods and compare their efficiency, but maybe this testing should be done by the beta testers, and at the end you would just pick the one that both you and your beta test team considers to be the best choice.

It would also be good for the end user if various optimisations (for speed, for search success etc.) would be as automatic as possible. If there is a set of parameters to be optimised for me to get my stuff faster, I would like the smart software to do the optimising in the background and just deliver me the goodies with the best speed possible from the network!

Quote:
Originally Posted by SA_Dave
3. Group and community features in a decentralised environment. This includes publishing/broadcasting features as in AudioGalaxy. Permanent identities (public keys) linked to rewards and improved social standing. The ability to use any web browser to browse through verified hash links hosted on the p2p network itself would be nice.
Quote:
Originally Posted by shepdog
Permanant Identities. I have been thinking on how to do this for a while and I think that I have it figured out.
Here is an interesting earlier discussion on permanent identities and related stuff like trust relations. Many important points and technical details are covered in the discussion so it is worth checking for a developer. As Dave points out, permanent and verifiable identities are needed to build any sort of sustained peer relations and social structures. When you have permanent, cryptographically strong identities, you can start building 1-to-1 trust relations, trusted groups and trusted distribution networks on them. Artists and other sources of new content need permanent identities even more than average users to be able to establish a reliable and genuine presence on the network.

- tg
TankGirl is offline   Reply With Quote