SIMagine Contest

SIMagine 2011 - Developer Contest
Java Card Platform - Connecting New Frontiers

Java Logo


Red Triangle  SIMagine 2011 CONTEST INFORMATION

Oracle has been a proud sponsor of the SIMagine innovation contest since 2000. This annual worldwide contest has brought together the talents of students, developers and young professionals to find creative applications for tomorrow's mobile, identity and, as of this year, M2M applications.   

For SIMagine 2011, Oracle is sponsoring the contest theme "Java Card Platform:  Connecting New Frontiers".   

Over €55,000 in prizes will be awarded with a first prize award of €15,000 cash. 

Deadline for submission is June 17, 2011.   

Semifinalists for the Oracle contest category will be announced at the SIMPosium 2011 conference in June 27-28 in Berlin, Germany.

Finalists for the Oracle contest category and award of the first place prize will be announced at the SIMPosium Asia 2011 conference in October 17 - 18th in Luala Lumpur, Malaysia.

As a Semifinalist/Finalist you will be invited to the awards banquet/reception in Berlin and Kuala Lumpur.  Though these events are a great chance for networking and promoting your contest submission, it is not required that you travel to Berlin/Kuala Lumpur to win. 


Please Note:  The SIMPosium 2011 contest does have other categories independent of Oracle’s “Java Card Platform” Connecting New Frontiers”.  These other catagories have a shorter deadline and the awards for these other categories will be announced in Berlin at the SIMPosium 2011 conference. 



To apply for the SIMagine 2010 contest go to the following URL:



Develop Java Card Connected Applets/Servlets which will be accessed by Java SE, Java ME or Web Browser for the ultimate purpose of integrating into a backend system

  -  Java Card Connected platform
  -  Java SE/Java ME/Web Browser
  -  any backend system (e.g.database, LDAP, AppServer, Utilities)

Verticals Markets
        Example vertical markets solution can be applied to are Utilities, health, payment, ID, B2C, mobile, SmartGrid, etc

Red Triangle  RULES/JUDGING CRITERIA: "Java Card Platform:  Connecting New Frontiers"
Business plan/presentation to be submitted (why would an angel investor be interested) (DUE JUNE 17th, 2011)
  -  Marketing appeal (Potential market size, Business Model & Plan, Competition, Stickiness, Future vision)
  -  Innovation (What is New? Network impact, Optimization of existing infrastructure),
  -  User-friendliness (Consumer Point of view, Consumer Appeal, Roaming Capability)
  -  Technical aspects (Relation to Java Card Connected, Security, Implementation)
  -  Deployment on the Market

Technical Solution (Due SEPTEMBER 30th, 2011)
   -  Deliver a FULLY-WORKING solution/implementation
   -  Solution should leverage Java Card security
   -  Solution should leverage Java Card Connected Web Servlets
   -  Java Card application sizing optimization (addressable by real market available hardware)

The tools listed below will be needed to develop your application:

Netbeans & the Java Card Connected v3.0.2 Development Kit

JDK 6 Update 10 or later is required for Java Card 3 application development.

NetBeans™ Integrated Development Environment, Version 6.9

NetBeans is used to develop and debug Java Card applications. NetBeans can be downloaded from
At a minimum, you should download the Java bundle (third column, 213 MB bundle size). This bundle includes the required Java Card Connected Platform v3.0.2 Development Kit, as well as the Java Card NetBeans plugin.  If you intend to develop an end-to-end solution within the NetBeans IDE, you may instead download the "All" bundle (seventh column, 319 MB bundle size) which includes, in addition, the Java EE and Java FX development tools.  Using a NetBeans IDE bundle which includes the Java Card 3 Connected plugin, you should be able to create and run Java Card projects without further configuration.

The development kit for Java Card 3 Connected includes a Reference Implementation of the specifications that can be run on Windows operating system.

While the Reference Implementation is functionally correct it does not implement an environment as constrained as the environment one would find on a real hardware implementation. Therefore developers may be tempted to develop applications that are bigger in footprint and more processing intensive than what a real hardware may be able to handle. 

It is important for developers to constrained themselves into using both memory and processing resources with parsimony.  The judging criteria will take into consideration application footprint and processing constraints of real hardware.


Examples of End-To-End Solutions Integrating Java Card Connected Applications and Other Java Technologies

Personalizing Blu-ray disc Java (BD-J) applications

BD-J allows for Blu-ray Disc Content Providers to develop bonus content applications for Blu-ray discs. These applications can deliver a highly interactive experience to end-users with access not only to expanded local storage but also to network services. A BD-J application may therefore integrate with applications on the Java Card Connected device of the end-user(s), either directly plugged into the Blu-ray player or accessible on the local network to provide more personalized content, monitoring the end-user activity and (conditionally) sharing (eg.: tweet) his interest and experience within a social network while preserving his privacy.

Relevant technologies: Java Card 3 Connected, Java TV (BD-J), Java EE, database

Resources: URL to Michael’s article

Securing Cloud Computing Applications

A Java Card 3 Connected token may provide a Web DAV service that may securely proxy to a mass storage service on the cloud. The token can be plugged in the most recent personal computers that support network web DAV drives, allowing the end-user to drag and drop documents on the token. The on-card Web DAV proxy service will encrypt the content before storing it on the cloud. The end-user stays therefore in control of the security of its documents without solely relying on the security implemented by the cloud service provider. This use case can be extended with a notion of groups so that documents can securely be shared with other card owners by using individual credentials or group credentials to encrypt the documents. The Java Card 3 Connected token may also implement other applications for Single Sign On or Virtual Private Network establishment.

Relevant technologies: Java Card 3 Connected, Java EE, database, ldap...

Securing Smart Grid / Utility Network

Integrating Java Card 3 Connected devices as components of a smart grid or utility network. For example, a Java Card 3 Connected application may securely collect store and transmit billing information on regular basis to the back end services while preserving the privacy of the end-user by hiding consumption patterns. A web application on the smart meter’s Java Card 3 platform may allow the end-user to browse the consumption patterns based and locally stored collected information. The application may use the smart grid networking capabilities or home networking capabilities to send custom alerts to the end-user wherever he is when instant consumption are off the usual patterns. The Near Field Communication capabilities of the Java Card 3 platform may also be used by the smart metering application to pair other devices such as a Home Display Device with the smart meter.

The security mechanism of the Java Card 3 platform may allow the smart meter to not only host electricity metering applications but also to securely host other utility applications, telecare applications or telepayment applications. Pre-agreed interfaces may allow these applications to inter-operate to provide unique services such as correlating a sudden consumption of water and a lack of electricity consumption consistent with previously learned patterns and sending an alert to the end-user regarding a potential water pipe damage...

The Java Card 3 Connected technology may be used alone or paired with other Java ME technologies on the smart meters and it may interact with the back end systems through gateways running Java ME or java SE technologies such as Java SE embedded.

Relevant technologies: Java Card 3 Connected, Java ME, Java SE embedded, Java EE, database, ldap...

Resources: Project Hydra

Integrated SIM and mobile applications

The web application model supported by the Java Card 3 Connected platform along with its IP connectivity support allow for richer, more user friendly and more integrated SIM applications. Applications that can easily interoperate with mobile applications and integrate with network and web services on the local user’s network, the operators network and the Internet at large.

The typical SIM services such as the phone book, the log of calls and the SMS inbox and oubox may be Implemented as web services on the card. They may provide content in whatever format HTML, JSON, XML its clients (e.g. the phone’s web browser, a MIDP application...) are able to consume. Content from the card and content from the Internet as well as content from the phone itself maybe mashed up to provide a enhanced user experience while preserving the security of the data the user trusted to the card.

Integrated Card and Network Services

A zeroconf enabled card may through the host (phone, netbook, PC...) it is connected to discover services on the host or local network. It may itself be discovered by other services on the hots or local network and provide security services.

A card may even discover another card on the same local network or plugged in the same host and initiate at the end user’s demand some kind of secure transaction. For example, the owner of one mobile ticketing card may transfer some transit system tickets or credit to another card plugged in the same host (that of a family member for example). Or confidential documents may be exchanged directly from card to card without going through the Cloud.

Contacless payment with richer web-based user experience

A contactless payment use case can rely on NFC to perform a micropayment from phone to phone (NFC peer-to-peer) with transaction recording over the IP network in a backend system for non-repudiation or some other verification. Additionally, the NFC transaction log can be accessed by an on-card web application that may perform some mashup with information available on the Internet about a store where the transaction was made or the contact information of the the payee or payer in the case of a phone-to-phone transaction, in order to provide a richer log browsing experience.