Building a Secure Cross Platform Enterprise Service
Mobile Apps Using HTML5
Hsin-Chang Lin
Computer Science and Information Engineering
National Dong Hwa University
Hualien, 974 Taiwan
iscsd00@tccn.edu.tw
Guanling Lee
Computer Science and Information Engineering
National Dong Hwa University
Hualien, 974 Taiwan
guanling@mail.ndhu.edu.tw
Abstract—With countless smartphones and mobile devices
being widely used, users can have community interaction,
recreation, and can even make a purchase through their mobile
devices. Therefore, the mobile network service is becoming
increasing irreplaceable and essential to modern people’s daily
life. That makes the network security of mobile Apps become
relatively important. And it is every App designer’s biggest
challenge to guarantee the security of their Apps in mobile
gadgets.Moreover, cross platform mobile app (CPMA) combines
the features of Web applications and “native” mobile Apps. On
the one hand, like Web applications, CPMA is implemented in
portable, platform-independent languages such as HTML and
JavaScript. On the other hand, like native Apps, CPMA has
direct access to local device resources—file system, location,
camera, contacts, etc. Owing to the above advantages, CPMA has
gaining more and more popularity.
To sum up, how to develop a secured cross platform mobile
Apps to prevent users’ personal information from being invaded
becomes the most interesting and critical issue. In this paper, we
present a security CPMA to provide IT network services
developers with related idea and model case study.
Keywords—HTML5; secutity; mobile app development; mobile
cross-platforms
I. INTRODUCTION
With the rapid development in hardware and software fields,
mobile computing, especially those capable of broadband
internet, have been gaining considerable popularity. Mobile
devices, including Smartphone, Tablet, PDA etc, are frequently
used for all sorts of purposes. According to a research
published by the International Data Corporation (IDC)
Worldwide Quarterly Mobile Phone Tracker, worldwide
Smartphone shipments has reached a total of nearly 1.3 billion
units in 2014, representing an increase of 26.3% over 2013.
Looking ahead, IDC expects 1.4 billion Smartphone to be
shipped worldwide in 2015 for a 12.2% year-over-year growth
rate [13]. This prodigious growth in mobile devices is equally
complimented by the growth in mobile content or information
that these devices consume. According to the report of research
group, Gartner Inc., worldwide mobile app store downloads
surpassed 102 billion in 2013 which by 2017 will reach 268
billion downloads [8].
In spite of the significant of the possible opportunities and
business, there are still some great challenges in every
engineer’s way when programming App or developing mobile
devices. One of the fundamental problems is the fragmentation
that runs both device and operating systems across the mobile
device itself. The appearing of fragmentation is actually
reasonable, because users want the mobile device to be as
efficient as it can be. This makes it essential to collect data
from various places in cyberspace, integrating all the
information, sending it to other different parts of the
cyberspace, and eventually has the mobile device executed
what it is ordered. The other problem is that, there are,
inevitably, diverse operating systems and various standards on
different mobile devices, which leads to a seemingly insolvable
resultЁone app can work very well on one mobile device but
cannot work on the others[3].
The above two main challenges have made the Apps world
even more chaotic. To make the Apps we designed work
smoothly, the engineers have to totally understand the Apps’
rules and make use of them. Thus, it is time to take advantages
of the cross-platform approaches to tackle the problem, since
the cross-platform is capable of connecting and unifying.
On the other hand, as the mobile Apps grow by their
popularity also turn them into increasing attack vector for
hackers and malicious users [1]. Thus, more emphasis on the
security of the Apps is definitely necessary. The Open Web
Application Security Project (OWASP) “Top 10 Mobile
Application Security Risks” report as a guideline [12] to help
developers and security teams by giving them the resources
they need to build and maintain secured applications while
reducing the likelihood of attack and exploitation.
In the “Top 10 Mobile Application Security Risks”, the
“Weak Server Side Controls” is listed at the top 1 of the 10
items. In this paper, we will construct an enterprise cross
platform hybrid Apps to discuss the secured issues in the server
side. The remaining sections are organized as follows. Section
II offers the comparison of several major OS. Section III gives
an overview about the different forms of mobile Apps. The
security issue is discussed in Section IV. Section V presents the
solution of enterprise cross platform Apps system
implementation, Finally, Conclusions are provided in Section
VI .
2015 18th International Conference on Network-Based Information Systems
978-1-4799-9942-2/15 $31.00 © 2015 IEEE
DOI 10.1109/NBiS.2015.28
162
II. MOBILE PLATFORMS
In the modern mobile market, there are some different
operating systems for the mobile devices. For example: there
are the iOS, Andriod, Windows phone, Symbian, Blackberry,
Plam’s webOS and so on. In the following paragraph, we take
three most typical and popular operating systems for example
[1].
A. Android
Android is a Linux distribution according to the Linux
Foundation, and released by apache license, which gain 70%
market share now. Android app can be built on windows, Mac,
or Linux through java, it is recompiled in Dalvik byte code and
run on Dalvik virtual machine. Acquired by google in 2005, the
Google play store is the official portal for Android Apps now.
B. iOS
The iOS is installed on the all iDevice as the iPhone, iPod,
iMac and iPad. The operating system manages the device
hardware and provides the technologies required to implement
native Apps. The iOS Software Development Kit (SDK)
contains the tools and interfaces needed to develop, install, run,
and test native Apps that appear on an iOS device’s Home
screen. And the developed Apps can be downloaded from APP
Store.
C. Windows Mobile
The Windows Mobile provides a similar desktop PC users’
experience and environment. It used not only C++ and C# but
also Silverlight and XNA to develop Apps. And it provide a
desktop like system for lots of users. For windows mobile
developer can use visual studio dot Net framework, windows
mobile SDK and developer toolkit to develop the Windows
mobile Apps.
III. CATEGORIES OF MOBILE APPLICATIONS
Like the mobile platforms, mobile applications also can be
roughly divided into three categories. Each of them has its pros
and cons and is suitable for specific requirement.
A. Native Apps
Native Apps require mastery of native language literally. It
gets the performance chance by using generated native
code6^/!Hence, it aims at a single operating system to utilize
the device’s feature thoroughly. This kind of Apps gains the
largest market share currently.
Owing to the Apps’ platform-dependent feature, they are
easier to work with and can operate very fast. Moreover it is
particularly suitable for the environment without the
connectivity of the internet. To sum up, Native Apps have rich
UI and smooth user-experience, full device capability, better
monetization and discover ability, advantageous security
ability, more complete date sources, etc.
As to the short comings of the Native Apps, it is relatively
hard to maintain both for the users and developers. Different
platforms require different programs. And users also need to
update it regularly. The cost of both money and time is
considerably huge.
B. Web Apps
Web Apps depend on server without installation on device,
any device that has browser can use it smoothly without
frequently updating it, because every time the users log in they
will get the latest version. The web Apps’ design decided by
the server and applied at client level according to device
features[11]. For this reason, there’s nothing to do with
different mobile platform, instead, one universal version can
suit various devices.
However, internet connection is necessary in web Apps,
and are not compatible with device function such as camera,
music player, phone dialing, motion sensor, etc. Moreover web
Apps can’t be found at Apps store, instead, they are established
mainly from browser. It is often served as a web link and user
won’t receive any notification from it.
C. Hybrid Apps
Hybrid Apps, taking the advantages of the two, is a
combination of native and mobile web app. It is like a native
mobile app because users can get it from web store but
equipped with web content inside a native container[11].It is
written primarily by JavaScript, HTML5 and CSS, and can run
on all kinds of platforms with a single code base. Furthermore,
when working with BYOD organization, Hybrid Apps are able
to possess the web Apps’ abilities, and can still fully utilize the
mobile device capability. This is the character of cross platform
system. For instance, GPS can gain the exact geo-location and
present the route for users, and mobile device camera can scan
the QRcode, etc.
To conclude, we decide to use the Hybrid Apps, which
have platform system, as our experiment object.
By above and from [14][6][3][9][10], we chose to build a
Hybrid for cross platform mobile system, as our experiment
object.
IV. SECURITY OF MOBILE APP
For every App, security is doubtlessly the most critical
priority. Otherwise, the App will like an unsecured bomb that
will force the programmer to rewrite the code again and again
to remedy the originally evitable security hole. When offering
our App to the users, a fine line is naturally established so that
the client can run our code accordingly. Once the fine line is
formed, it will be extra