image provider

Napster Clone

The CurrCon Java Applet displays prices on this web page converted with today’s exchange rates into your local international currency, e.g. Euros, US dollars, Canadian dollars, British Pounds, Indian Rupees… CurrCon requires an up-to-date browser and Java version 1.8, preferably 1.8.0_112. If you can’t see the prices in your local currency, Troubleshoot. Use Firefox for best results.


This essay does not describe an existing computer program, just one that should exist. This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have prepared to help you is right here.

This project outline is not like the artificial, tidy little problems you are spoon-fed in school, when all the facts you need are included, nothing extraneous is mentioned, the answer is fully specified, along with hints to nudge you toward a single expected canonical solution. This project is much more like the real world of messy problems where it is up to you to fully the define the end point, or a series of ever more difficult versions of this project and research the information yourself to solve them.

Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; or give you any additional materials. I have too many other projects of my own.

Though I am a programmer by profession, I don’t do people’s homework for them. That just robs them of an education.

You have my full permission to implement this project in any way you please and to keep all the profits from your endeavour.

Please do not email me about this project without reading the disclaimer above.

This project is similar to the Bulk File Distributor project. If you are not familiar with Napster, you must have been living in a cave. It is a great idea, implemented with infuriatingly inept code. My vision, dating back decades, is a legitimate electronic music distribution scheme where every song ever recorded was instantly on tap. You do not need to go shopping. You just play what you like and pay a bill every month, like your phone bill. Music is cheap because it does not need to be advertised or put on plastic discs, shipped about in trucks, inventoried or displayed in expensive retail space.

What would a legitimate Napster replacement need?

The key to autorestart is to compute a 64-bit digest for each file. Two identical files have the same digest. As long as two files have the same digest, you can safely restart with the second file.

The payment scheme would be based on public key encryption and digital signatures. For some hints of how the scheme would work, see my essay on digital signatures. The idea each client has a private key (a random binary number) they can use to prove their identity by encrypting a challenge phrase from the server that the server then decrypts with the client’s registered public key. This ensures that other people can’t get music and bill it to you.

Music can be passed around encrypted on the web, along with and in exactly the same way that free music is freely passed around now. You pay nothing to download the music, but you only get the decryption keys once you have been authorised for a free trial or yet another play. There are at least four ways a pirate might cheat:

  1. Tell other people the decryption keys.
  2. Keep a copy of the unencrypted trial play file and play it as many times as he pleases.
  3. Put up a copy of the unencrypted file on Napster.
  4. Play the file and create a new digital file from the analog output to the loudspeakers.
What might you do to make each sort of cheating more trouble than it’s worth:
  1. To prevent people from sharing decryption keys, don’t publicly distribute the entire file. Leave parts of it out. When a users pays for a play, or is determined to have the right to a play, the server sends him just the missing parts, encrypted specifically for that target user with his public key. The file can only be decrypted with the client’s private key. He dare not divulge his private key or else people could bill music to his account.
  2. To prevent the user from keeping an unencrypted copy of the file, standard software must simply not hand it over. The server software can challenge the client software to ensure it has not been tampered with. Pirate software would fail the dynamic challenge. If security were ever broken, new software can be downloaded and all old software disabled. This scheme simply stops the user from saving the MP3 file (or the keys) in unencrypted form. It does not prevent a pirate from recording the S/PDIF (Sony/Philips Digital Interconnect Format) output of his sound card on his DAT (Digital Audio Tape) drive. To save it as a MP3 file, he would have to play the tape back and run it through a MP3 compressor. The pirate would have to manually type all the track titles. Not everyone has this equipment so the amount of such copying might be considerably lower than now when all you need is a computer. Pirates might attack the sound card drivers, persuading them to save WAV files. Standard software could check for these, much the way you check for viruses and refuse to function.
  3. The same techniques to prevent someone from saving an unencrypted MP3 for their own use also makes it difficult for them to share them. In addition, it might be possible to create a special sort of digest to identify a file. If a free file matched the signature of one of the for pay ones, Napster could simply quietly refuse to share it. Calculating this signature is tricky. There are many ways of compressing a file and each subtlely alters it. Pirates would have to alter the sound to be sufficiently different from the original to bypass this check.
  4. I can conceive of no technology that could prevent recording the analog outputs, save some sort of sealed unit headsets with wireless Internet access and decoders in them. However, that sort of copying would lose fidelity, much like copying cassette tapes.

How do you switch to such a new format? Music will have to continue to be sold on CD s, which are sitting ducks for piracy? The music in the new format will have to be higher fidelity, with better channel separation. New songs might come out first in the new format and only several months later in CD format. Songs may make most of their sales and downloads in the first month after release. If people already have the new format song, why would they need a pirated version of inferior CD quality?

The RIAA (Recording Industry Association of America) must realise they can’t kill Napster. If they do, like the mythological Hydra, ten more even more decentralised clones will rise in its place. The only way to kill it is to offer huge amounts of high quality music at low prices, including tons of music difficult to get in pirated form, and free try before you buy. With electronic distribution, it costs almost nothing to give people unlimited amounts of music. This cost saving must be passed on to the consumer. The public is using wholesale piracy to punish the RIAA for being so greedy and stubborn. Technology makes possible unlimited near-free choice. Heaven help the fool who tries to stand in their way.

Music distribution will change. Retail outlets will be much less important. There will be thousands of little home radio stations that construct 24 hour playlists with commentary. You will be able to get a discumentary on almost any topic, not just music. They will be highly specialised. You can subscribe to these for a penny an hour. They don’t actually distribute any music, just playlists and commentary, that your player constructs into a continous wallpaper of sound. You don’t have to listen to them in real time, the way you do with broadcast radio. You are basically paying them to go digging for you to find the great recordings in the mass of so so ones. Every band will have at least one radio station. It would play that band’s music, tell stories about the band, play interviews, compare cuts with other bands that did the same song etc. You could go into the radio business with just a PC (Personal Computer), a mike and a sound card. There will be tens of thousands of people doing the same thing for free, so the for pay ones will have to be top notch quality. There will also be some using the old style of financing, with ads. The target markets will be very specific, so these stations will be quite valuable to advertisers.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number