MIDP 3.0 overview. Copyright 2008 Aplix Corporation. All rights reserved.



Similar documents
Java ME & NetBeans Mobility. Petr Suchomel Architect, NetBeans Mobility Sun Microsystems

Development of Java ME

Mobile application development J2ME U N I T I I

DESIGNING SHIFT CALENDAR FOR MOBILE PHONE

Mobile Software Application Development. Tutorial. Caesar Ogole. April 2006

Android Fundamentals 1

Mobile Network Marketing Model (MIDP)

PROTECTING DATA IN TRANSIT WITH ENCRYPTION IN M-FILES

Tutorial: Development of Interactive Applications for Mobile Devices


Mobile Application Development

Java Platform, Micro Edition (Java ME) Mokoena F.R. The 7046 Team

Security Evaluation of J2ME CLDC Embedded Java Platform

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Index. Registry Report

At least 2 GCE A Level Passes and credit in Mathematics at Ordinary level. Mature candidates will also be considered on a case-by-case basis.

Next Steps In Accelerating DNSSEC Deployment

Sikkerhet Network Protector SDN app Geir Åge Leirvik HP Networking

Virtualization Reduces the Cost of Supporting Open Industrial Control Systems

FlyingDream AAT Driver Quick Guide V1.1

Java and the Internet of Things

How To Configure Windows Server 2008 as a RADIUS Server with MS-CHAP v2 Authentication

DESIGN OF MOBILE APPLICATION FOR SCHEDULING APPOINTMENT WITH BANK PERSONNEL FOR BANKING SERVICES

What's New in Bomgar 13.1

Java ME Clients for XML Web Services

MIDlet development with J2ME and MIDP

A Formal Specification of the MIDP 2.0 Security Model

Extreme Java G Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti

Global Image Management System For epad-vision. User Manual Version 1.10

Plesk Control Panel Adding accounts

A Perspective on the Evolution of Mobile Platform Security Architectures

Mobile Development Discovery Document

Ping Device Driver Help Schneider Electric

Introduction to the DANE Protocol

Eclipse 4 RCP application Development COURSE OUTLINE

Use Host Information in Policy Enforcement

Improved Credential and SSL Configuration for EE 7

JOURNAL OF OBJECT TECHNOLOGY

Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday

Oracle WebLogic Server 11g Administration

Managing CA-Signed Certificates

Design Document. Offline Charging Server (Offline CS ) Version i -

Meeting Rooms User Manual

Location-Based Information Systems

This article describes a detailed configuration example that demonstrates how to configure Cyberoam to provide the access of internal resources.

A Survey of Electronic Signature Development in Mobile Devices

OSGi Service Platform in Integrated Management Environments Telefonica I+D, DIT-UPM, Telvent. copyright 2004 by OSGi Alliance All rights reserved.

CA Nimsoft Unified Management Portal

IP Phone Services Configuration

Resource Containers: A new facility for resource management in server systems

MS 20247C Configuring and Deploying a Private Cloud

SETUP SSL IN SHAREPOINT 2013 (USING SELF-SIGNED CERTIFICATE)

jfqbi= = eqji=qççäâáí= = = aéîéäçééêûë=dìáçé=== oéäé~ëé=oko=

Gluster Filesystem 3.3 Beta 2 Hadoop Compatible Storage

Software Architecture Document

Write. Once. Deploy. Anywhere. Anatole Wilson. Writing Applications for mobile devices and reducing device fragmentation with NetBeans Mobility Pack

Beginning BlackBerry 7

The release notes provide details of enhancements and features in Cloudera ODBC Driver for Impala , as well as the version history.

Configuration Guide. Installation and. BlackBerry Enterprise Server for Microsoft Exchange. Version: 5.0 Service Pack: 4

Power Management in the Cisco Unified Computing System: An Integrated Approach

Modern Application Architecture for the Enterprise

Diploma/BSc (Hons) Web & Multimedia Development

XML Based Customizable Screen. Rev 1.1

OSGi Remote Management

Generate Android App with Protection and Licensing

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

5. More on app development

Information Models, Data Models, and YANG. IETF 86, Orlando,

Energistics WITSML Product Certification Program Server Test Suite #1 Testing Procedure

Jordan Jozwiak November 13, 2011

Best Practices. Understanding BeyondTrust Patch Management

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

Configuring and Deploying a Private Cloud. Day(s): 5. Overview

WildFire Reporting. WildFire Administrator s Guide 55. Copyright Palo Alto Networks

Configure your firewall for administrative access via RADIUS authentication

Cloud Services Catalog with Epsilon

UNIVERSITÉ DE NANTES LABORATOIRE D INFORMATIQUE DE NANTES ATLANTIQUE. Yann Busnel. Master 2 MIAGE. Yann Busnel ESB - Concept et techniques 1

IT Exam Training online / Bootcamp

Instrumentation for Linux Event Log Analysis

Security challenges for internet technologies on mobile devices

Step- by- Step guide to extend Credential Sync between IBM WebSphere Portal 8.5 credential vault and Active Directory 2012 using Security Directory

Java Application Developer Certificate Program Competencies

Mobility Solutions in IBM

Introduction to Mobile Phone. Programming in Java Me

DIGITAL RIGHTS MANAGEMENT SYSTEM FOR MULTIMEDIA FILES

Attachment to Data Center Services Multisourcing Service Integrator Master Services Agreement

Mobile Operating Systems. Week I

Demystifying Java Platform Security Architecture

Netwrix Auditor for Exchange

An introduction to creating JSF applications in Rational Application Developer Version 8.0

Symantec NetBackup OpenStorage Solutions Guide for Disk

SCUt ils SmartAssign Guide Solution for Microsoft System Center 2012 Service Manager

Transcription:

MIDP 3.0 overview

MIDP 3.0 specification status 2

New MIDP 3.0 functionality 3

CLDC 1.1.1 4

Mandatory JSR 135 v1.1 compliance 5

Concurrency 6

Events 7

Events MIDlet-Event-Launch-<n> :<Classname>;<AuthorizationMode>;<Launch-Condition> Where: 8

Events transaction diagram Event registry MIDlet 1 MIDlet 1: System event A 1: Register for System event A 3: Receive System event A 2: Post App event B MIDlet 2: App event B 1: Register for App event B MIDlet 2 3: Receive App event B 2: Post System event A Legend System Event Platform App-to -app Event 9

Events - Tutorial 10

Inter-MIDlet Communication (IMC) 11

IMC clients 12

IMC servers MIDlet-Push-<n>: imc://:<server name>:<version>;<authmode>, <MIDlet UID>, * 13

LIBlets/Shared libraries 14

LIBlets/Shared libraries - Dependencies MIDlet-Dependency-<n>: <type>; <level>; <name>; <vendor>; <version> LIBlet-Dependency-<n>: <type>; <level>; <name>; <vendor>; <version> MIDlet-Dependency-Jar-SHA1-<n> MIDlet-Dependency-JAD-URL-<n> LIBlet-Dependency-Jar-SHA1-<n> LIBlet-Dependency-JAD-URL-<n> 15

LIBlets - Tutorial 16

LIBlets - Advantages Decreased application development cost. Decreased application development time. Increased Average Revenue Per Unit. Old MIDlet Model New MIDlet Model w/ LIBlets MIDlet MIDlet Component A Component B Component C LIBlet A LIBlet B LIBlet C 17

Auto-Start MIDlets 18

Idle Screen 19

Idle Screen - Importance ä 20

Idle Screen - Existing Implementations 21

Idle Screen MIDlets Why in MIDP 3.0? 22

Idle Screen MIDlets 23

Idle Screen MIDlets MIDlet-<n>-Type: idlescreen 24

Notification A 25

Notification - Example 26

Splash Screen MIDlet-Splash-Screen-Image: /cardgamesplash.png 27

Splash Screen 28

IPv6 MIDlet-Required-IP-Version 29

User Restrictions on MIDlet Suite Lifecycle 30

Application Level Access Authorization Application Level Access Authorization allows MIDlet suites to restrict access to its shared resources from other MIDlet Suites Application Level Access Authorization is separate from the protection domain authorization model. Functionality using App Level Access Authorization 1) RMS : RecordStore access 2) IMC : Establishing IMC Connection 3) Events : Posting and Receiving App-to-App Event 31

Application Level Access Authorization Access can be restricted based on 1) domain 2) vendor 3) signer Application Level Access Authorization is declared in MANIFEST MIDlet-Access-Auth-Type-<n>: domain=self ANY;vendor=<vendorname> ANY;signer=<certalias> ANY If <certalias> is used, it must match exactly one <alias> in MIDlet-Access-Auth-Cert-<n>:<alias> <base 64 encoded signing cert> A MIDlet Suite B has access to MIDlet Suite A s resources if it satisfies the combined domain/vendor/signer constraint in at least one of MIDlet Suite A s MIDlet-Access-Auth-Type-<n> attributes. 32

Application Level Access Authorization Example MIDlet Suite A MANIFEST MIDlet-Access-Auth-Type-1:domain=SELF;vendor=ANY;signer=coolcompanycert MIDlet-Access-Auth-Type-2:domain=ANY;vendor="Cool Company Inc.";signer=ANY A MIDlet suite will be granted access if it EITHER... a) belongs to same domain as MIDlet Suite A AND is signed by (certificate corresponding to) "coolcompanycert, OR b) has MIDlet-Vendor of "Cool Company Inc." 33

Permissions Model MIDP 2.X Security Review Based on protection domains Uses named permissions (e.g. "javax.microedition.io.commconnection") MIDlet Suites request permissions using MIDlet-Permissions / MIDlet-Permissions-Opt attributes MIDP 3.0 Security Overview Based on protection domains Adopts class-based permissions from JavaSE MIDlet Suites request permissions using MIDlet-Permission-<n> / MIDlet-Permission-Opt-<n> attributes 34

Permissions Model Permission Classes Defined for each API requiring protection Subclassed from java.security.permission May specify the name of a resource to protect and an associated action Checked by implementation during execution of protected function Advantages of new Permissions Model Can specify permissions for property, resource, or function for a particular API MIDP 2.X did not provide that level of granularity; only had boolean permissions Unified permissions definitions Do not need to redefine named permissions for different configurations (CLDC, CDC, SE) 35

Permissions Model Protection Domain Each MIDlet Suite is bound to a protection domain when installed. Protection Domain defines set of Permissions that may be granted to a MIDlet Suite. 1) Allowed - granted (applies to requested permissions) 2) User - granted by user (applies to requested permissions) 36

Permissions Model Requesting Permissions MIDlet Suites that require access to a protected API MUST request the corresponding permission using MIDlet-Permission-<n>: <classname>, <resource>, <action> Non-critical APIs should be requested using MIDlet-Permission-Opt-<n>: <classname>, <resource>, <action> The <resource> and <action> values should only exist if the associated Permission class constructor has corresponding parameters. MIDlet-Permission-1: javax.microedition.io.httpprotocolpermission http:// MIDlet-Permission-2: javax.microedition.io.socketprotocolpermission socket://:4321 37

Permissions Model LIBlet Permissions LIBlet is executed inside protection domain of the MIDlet it is bound to. Permission declared with LIBlet-Permission-<n> and LIBlet- Permission-Opt-<n> are informative only. All Permissions MUST still be declared in dependent MIDlet Suite's JAD/Manifest. If LIBlet declared permissions do not exist in dependent MIDlet Suite requested permissions, installation MUST fail. 38

Screen Saver MIDlets MIDlet-<n>-Category: screensaver 39

Screen saver MIDlets 40