You need the dealer edition or locksmith edition of the Lexus techstream system to program keys, which is so expensive to buy, that realistically, it's dealer only.
You also need a *brand new* key. Once a key has been programmed, it can never be reprogrammed to another car.
If you get a key off ebay, and it's already been used, you won't know until you get to the dealer and they try to program it, and the car simply won't start; so most dealers will only use their own keys. There are some other forums where people have brought their own keys and convinced dealers to try and program them, and then been left with a 1/2 hour bill for labour after the dealer couldn't do it.
I bought a hacked techstream system off ebay for £30 and it certainly goes through the motions of programming keys - I've not actually tried it for real though, for fear of breaking the car or the keys, but it looks like it would do the job.