Signed midlet
Previous  Top  Next

   Since harmfull midlet can cause damage, MIDP2.0 security model describes a process of signing midlet with certificate:  
·midlet author creates private and public RSA keys pair using publicly available utilities;  
·midlet author requests certificate from some well-known company (Certificate provider), which keeps certificate database. Certificate contains information about author, his public key, and check sum of this information, encrypted with private key of certificate provider;  
·author adds certificate and check sum of JAR file, encrypted with private key, into JAD file of midlet (author is "signing" midlet).  
   Phone should contain root certificate of certificate provide. Root certificate contains information about certificate provider and his public key. With a public key of certificate provider, phone can verify midlet author certificate from JAD file by calculating certificate check sum and comparing it with check sum, decrypted with this public key.  
   After verifying author's certificate, phone calculates check sum of JAR file and compares it to check sum, decrypted with author's public key from his certificate.  
   If any of above procedures fail, midlet will not be installed.  
   This scheme uses SHA-1 algorythm for calculating check sum, and RSA with 1024b-it keys to encrypt data.  
   Only signed midlet can have unlimited access to potentially danger operations - filesystem access, connection with internet, sending SMS etc. If midlet is not signed, than different phones show different behaviour when midlet is trying to access these functions. In the best case, phone shows security prompts (Siemens, Nokia, SonyErricsson). Motorola phones disable access complelety.  
   Please note, that certificate itself does not garanty that midlet does not do harmfull actions or does not have bugs. Certificate only garanties that midlet was signed by certificate owner.  
   See also: How to get rid of annoying security prompts?  

Rambler's Top100