If you are not using an official SIM (say, the one from AT&T), you should be very familiar with the below message shown in iTunes when you connect the iPhone to your computer:
The SIM card inserted in this iPhone does not appear to be supported.
Sherif Hasim, the guy who found the exploit for unlocking iOS 4, has figured out an easy way to activate most models of iPhones including iPhone 3G/3GS, as well as, iPhone 4, without an official SIM. The trick is to make use of a Phonebook SIM card. As you’ll see in the video, you can simply insert a phonebook SIM into the iPhone. And, that’s it. The iPhone is automatically activated.
As mentioned by Sherif, all phonebook cards should work:
Use any phonebook sim card, they are there in radioshak, mobile phone shops or any mobile tech moles , any phone book simcard will do the trick, no need for programmable sims, all those phonebook sims used to save ur contacts and transfer them have a universal ICCIDs preprogrammed so they all work.
To learn more about how Sherif uses an phone book SIM card to activate an iPhone, check out his demo video:
As the phonebook card does not available as micro SIM, for those using iPhone 4, you need to use some kinds of micro SIM cutter to convert the card into micro SIM.
Update #1: Apple has implemented fix to block out phonebook sim. You will encounter “Different SIM Detected” error after activation/jailbreak. Fortunately, someone has developed a workaround to fix the issue. You can further check out this post for details.