I'm wondering how difficult it is to program a smart card and what software product to use to program/interface?

Any ideas on this would be appreciated.