- What Do We Mean by Security?
- The Java Sandbox in Mobile Devices
- Securing the Information Sent Over the Network
- Securing the Server System
- Conclusion
When the application sends some information over the network to a server, the information is in danger of getting into the wrong hands. With some applications, it really doesn't matter if someone else sees the data, but with other applications you should do everything you can to prevent other people from getting access to the data.
MIDP 1.0 has only the standard HTTP connection. Some implementations also have HTTPS, sockets, or so on, but the only connection required by the specification is the standard HTTP connection. MIDP 2.0 also has TLS 1.0 and SSLv3, so making secure connections (HTTPS connections) with MIDP 2.0 is not difficult.
Encryption
If you have to secure the information sent over a plain HTTP connection, you can encrypt it. Encrypting means that you make the understandable information look garbled by putting it through a cryptographic algorithm. This algorithm mixes the content according to some quite simple equations using very, very large numbers. The numbers are so big that calculating them or guessing them is computationally expensive. In other words, it takes a lot of time.
NOTE
You don't have to implement the cryptographic algorithms yourself; just use one like the Bouncy Castles API.
After you have encrypted the information on the client side, you have to decrypt it on the server side.