Longtime rivals in the credit-card business, MasterCard and Visa are taking different routes in developing their chip-based smart cards. MasterCard's Multos card uses a single operating system while Visa's JavaCard operates on a single programming language. MasterCard formed the Maosco consortium with silicon and smart-card makers to develop Multos, which it calls an 'open' operating system, comparable to Windows for personal computers. It will license the software to companies which can create functions such as loan plans, or bonus-point programmes, using different programming languages. Visa developed a Java-based application interface (API) with Sun Microsystems which allows only Java applications running on proprietary operating systems from different smart-card vendors. In Visa's JavaCard, there are two layers between applications and the card's operating system: an API and a Java virtual machine. Since the API gives programmers a set of rules, Java applications can be loaded to any smart card. The Java virtual machine acts as an interpreter of application codes for the operating system, and also as a firewall, preventing applications from interfering with each other. Visa also has developed a security control programme to allow credit-card issuers such as banks to control the blocking and expiration of their smart cards, as well as add or delete applications. Java freed banks and card issuers from a single supplier of smart-card hardware and software, Standard Chartered Bank's Nicholas Fung said. However, William Leung, credit-card centre head at Hang Seng Bank, a MasterCard partner, said JavaCard required an interpreter between applications and the operating system that would slow transactions.