Beruflich Dokumente
Kultur Dokumente
for applications involving real time signals. Raspberry Pi is a cheaper microprocessor in which
cloud computing infrastructure can be obtained using cloud platforms provided by specific cloud
vendors. Real time signals acquired by any sensor that measures environmental factors are
analog in nature. Using microcontrollers like Arduino or any analog to digital converters these
analog signals can be discretized and transmitted serially to the Raspberry Pi. Hence Raspberry
Pi can be used as a cloud server which serves as a storage device for real time applications.
CHAPTER ONE: INTRODUCTION
Cloud computing, an oddity which is the majority of the circumstances presented as "the cloud,"
is the moving instrument of on-request processing assets. Everything from applications for data
centres over the web is on a compensation for utilize premise. A cloud storage is a vigorous
model adapted to accumulate and maintain data over the network. Approved clients are allowed
to approach the amassed data in the distributed storage quickly. Over the preceding few years,
we have been unswervingly moving aside from the resident system to the cloud for
accumulating and dealing with our data. Cloud is one of the most smoking figuring development
showcases now and has formed into an essential piece of a person's everyday life. Nevertheless,
the cloud storage vendors such as Microsoft, Amazon, and Google have acquainted people with
their new extravagant cloud storage plans Consequently, In Contrast not every individual
person is competent to utilize the accommodation for cloud storage technology. In
particular, people such as professional photographers, video editors, instrumentalists, small
enterprises who constantly need cloud storage to accumulate data for a persistent -term, will not
incline towards popular cloud storage vendors for cloud storage services.
Also the cloud storage provide services to the individuals and business to software and hardware
that are managed by the third party at remote location like Dropbox. Example of cloud services
include online file storage, webmail, social networking sites and online business applications.
However the idea “cloud” is not new, it allows the business’s to reduce the cost of having
hardware’s to save their data and the maintenance of those devices, using the cloud storage it
became easy to for the organizations to maintain and save their data to third party. Well as far as
it concerns the security issues of the cloud computing, also for an organization to store their
confidential information to third party is risky. However, a variety of studies have shown that
clouds introduce significant new security challenges that make mobile code security a non-
trivial, ongoing battle (Christodorescu et al., 2009; Chen et al., 2010; Subashini and
Kavitha, 2011; Morsy et al., 2010). For example, the Cloud Security Alliance has identified
insecure cloud APIs, malicious insiders, shared technology issues, service hijacking, and
unknown risk profiles all as top security threats to clouds (Cloud Security Alliance, 2010).
(Gartner, Inc. January, 2011) world’s leading information technology research and advisory
company. “CIO’s and IT have been boxed in between modest budget growth and growing
legacy requirements,” said Mark McDonald, group vice president and head of research for
Gartner Executive Programs. “New lighter-weight technologies such as cloud computing,
software as a service (SaaS), and IT models enable the CIO to redefine IT, giving it a greater
focus on growth and strategic impact.” Cloud computing comprises of three layers :
Depending on the requirements, the customer can choose one or more services provided.
Raspberry Pi is the credit card size minicomputer, it runs a Linux operating system
called Raspbian, the hardware on this device 512 ram, two USB ports, Hdmi port, Ethernet port,
SD card slot, audio output and so on. Raspbian is a free operating system based on Debian
optimised for the raspberry pi hardware. It involves:
Linux
Command Line Interface
Graphical User Interface
Installing Drivers and Software
Programming
For most people, beginning to experiment on a $1000 laptop, putting precious data at risk is a
daunting prospect. The user should think twice before putting all their digital photos, music
collection and online banking at risk. The focus of this project is to create a personal cloud
storage by using Raspberry Pi connected to external hard disk. To extend this idea on the other
hand the same raspberry pi will be connected to projector in the class, whereby the user will
access the Pi Cloud Storage and open presentation slides and videos on the projector. Most of the
cloud computing organizations provide limited storage to the users but by implementing this idea
will allow the users to have as many as storage that they want also the privacy of the data will
not be exposed to third party.
1.2 Problem Statement
The aim of this research is to develop a cloud computing project, where the users can use their
external hard drive’s connected to Raspberry Pi through a remote local connection (internet) they
can have access to the storage and it content when connected anywhere using a device.
According to (Jon Brodkin, 2008) Even though Security, Privacy and Trust issues exists since
the evolution of Internet, the reason why they are widely spoken these days is because of the
Cloud Computing scenario. Any client/small organization/enterprise that processes data in the
cloud is subjected to an inherent level of risk because outsourced services bypass the
"physical, logical and personnel controls" of the user.
i. Sub-problem 1:
To develop a cloud computing project where users can have large amount of storage with the
help of Raspberry Pi. Most of the user have external hard drive of 500GB to 1 TB (Terabyte) or
more but the users cannot carry the external hard drives all the time in an area where they have a
common network, so this project will beneficial to the users connected to personal cloud storage
over the remote local network connection. The new technology which will be affordable to
everyone and also it will enable the user to use their external hard drives over internet possible.
ii. Sub-problem 2:
Laptops that the lecturers are using for slides during lectures in class and during defense
presentations provided or owned by the faculty are limited in quantity and most of them are not
working (requires maintenance). Replace all the laptops with the Raspberry Pi, which only
cost $35 and does not require maintenance (low maintenance). The laptop cost is above $300
and need maintenance but the Raspberry Pi cost is $35 and does not need any maintenance.
Raspberry Pi will reduce the cost and effort for lecturers, also it is easy to carry.
Most of the cloud computing services are providing limited storage to the users, at the same time
the risk of your data to store at third party is a big issue. Example is the recent incident of
exposed nude pictures of the celebrities from iCloud. Which is a clear example that our data is
not safe, to overcome these problems this research will come up with the perfect solution with
unlimited cloud data storage by the help of “Raspberry Pi”. Rather than store all our media and
files on a cloud server in an unknown location, we can keep a cloud at our home and make it
personal.
1.3 Objectives
To develop a personal cloud storage using Raspberry pi B+ model that has an inbuilt wi-
fi module that can be configured into functioning as an access point for a local area
network with security incorporated.
To install and configure a local server application (LAMP) and to install Mysql server on
the Raspberry pi.
To configure the raspberry pi into functioning as a local access point for the creation of a
local connection where devices such as mobile phones connected to the pi network can
access the server.
To install and configure a cloud storage management software (ownCloud) on the
rapberry pi where the users can create account, manage cloud storage space, delete a user,
provide authentication into the system, upload and download files into the server.
To be able to use the owncloud software to manage and assign user levels to the various
users of the system.
To be able to use the Raspberry pi as a mini computer to do a power point presentation on
a projector.
The first part of this project will be completed by 15th August and the implementation part will
follow to finalize the semester.
b. Software Requirements
1) Raspbian OS stretch file downloaded online from the internet
2) BalenaEtche software use for making the microSD card bootable with the raspbian OS
3) OwnCloud server management sodtware tar ball
4) LAMP server and all php dependencies
5) RaspAP webUI for use to create and configure access point parameters for a local
connection
6) Constant Internet Connection
7) Set a static IP
Though the research will focus on providing facility to the lecturers and students to plug
& play educational slides and videos on raspberry pi or retrieve data over a remote internet
connection from their personal cloud storage.
“Cloud Computing refers to both the applications delivered as services over the Internet and the
hardware and systems software in the datacenters that provide those services. The services
themselves have long been referred to as Software as a Service (SaaS). The datacenter hardware
and software is what we will call a Cloud. When a Cloud is made available in a pay-as-you-go
manner to the general public, we call it a Public Cloud; the service being sold is Utility
Computing. We use the term Private Cloud to refer to internal datacenters of a business or other
organization, not made available to the general public. Thus, Cloud Computing is the sum of
SaaS and Utility Computing, but does not include Private Clouds. People can be users or
providers of SaaS, or users or providers of Utility Computing.” (Armbrust et al., 2009, p6).
The features of Cloud Computing were stated by Stanoevska-Slabeva and Wozniak (2009)
as new computing paradigm. Additionally, Cloud Computing is a new business model which is
based on pay-per-use. X-as-a-Service manners are provided by application and
infrastructure resources, and independent providers offer these services to external customers.
Web browser or defined API can consume Cloud Services. Utility computing can be consumed
separately, however, SaaS and utility computing are being provided in an integrated manner.
Armbrust (2009) defined clouds as computers are being able to network anywhere in the world
by per-per-use way to pay for used clouds, the actual meaning of this idea is that the resources
that are being used will be paid only. Below will be introduces types of clouds.
The first one is the Public Clouds. Armbrust (2009) mentioned that public cloud is the traditional
cloud computing that will have the opportunity to access to the computing resources from
anywhere of the world. The pay-per-use manner will be used in clouds, as defined the only
resources that are being used will be paid by transaction fees.
The second one is the private Clouds. Private clouds are usually datacenters; companies can
block the access by using private network to the unwanted audience. It is much more secure than
traditional network clouds; however, the building, maintenance and purchasing the Private
Clouds are the issues that companies face (Armbrust, 2009). The last type of Clouds is Hybrid
Clouds. The mixture of Public and Private Clouds is called hybrid clouds. Johnston (2009) stated
that this can involve work load being processed by an enterprise datacenter while other activities
are provided by the public cloud.
According to Foster (2008), the comparison of the supercomputers or existing clusters to cloud
idea can be clear that clouds are made of anonymous computer networks that are located
in everywhere in the world. Similarly, Foster (2008) has stated that the vision of grid computing
and cloud computing are same by the concept of increasing the quality, flexibility and reliability,
meanwhile decreasing the cost of computing. Cloud Computing has brought distributed
computing to another stage by containing the hundreds of thousands of computers in large-scale
real commercial system (Foster, 2008).
The National Institutes of Standards and Technology (NIST) definition runs to several hundred
words but essentially says that:
“Cloud Computing is a model for enabling convenient, on-demand network access to a shared
pool of configurable computing resources (e.g., networks, servers, storage, applications,
and services) that can be rapidly provisioned” and released with minimal management
effort or service provider interaction.”
As we detailed in a previous whitepaper, within IaaS, there are some sub- categories that are
worth noting. Generally IaaS can be obtained as public or private infrastructure or a combination
of the two. “Public Cloud” is considered infrastructure that consists of shared resources,
deployed on a self-service basis over the Internet.
By contrast, “Private Cloud” is infrastructure that emulates some of Cloud Computing features,
like virtualization, but does so on a private network. Additionally, some hosting providers
are beginning to offer a combination of traditional dedicated hosting alongside Public and/or
Private Cloud networks. This combination approach is generally called “Hybrid Cloud.”
Software that is deployed over the internet, a provider licenses an application to buyers either as
a service on demand, through a subscription, in a “pay-as-you-go” model, or gradually at no
charge when there is opportunity to generate revenue” from streams other than the user, such as
from advertisement or user list sales.
SaaS is a rapidly growing market platform as indicated in recent reports that predict ongoing
double digit growth. This instant growth indicates that SaaS will soon become
commonplace within every organization and hence it is important that buyers and users
of technology understand what SaaS is and where it is suitable.
Success of Cloud Computing directly depends on the Data Security. Every Technology user tries
to make sure that their date is saved secure and nobody will have an access to it. Service
providing models and cloud computing have intensified the potential issues in cloud computing.
The providers of cloud computing are the ones who are responsible for security protocols and
controls in clouds.
According to Marianthi (2013), dynamicity of cloud is the process where data flows all the time,
which creates a trouble to monitor or control. One of the challenges is to make sure that the
appropriate data identification and protection. Additionally, it is very hard to pin-point the
correct device; because the data is being stored in the cloud is copying the data from
different locations. Accordingly UK ICO`s guidelines (2012) in order to protect the data from
interception, transaction of data should be encrypted between various locations.
This combination is referred to as "Three way mechanism" because it ensures all the three
protection scheme of authentication, data security and verification, at the same time. In this
paper, we have proposed to make use of digital signature and Diffie Hellman key exchange
blended with (AES) Advanced Encryption Standard encryption algorithm to protect
confidentiality of data stored in cloud. Even if the key in transmission is hacked, the facility of
Diffie Hellman key exchange render it useless, since key in transit is of no use without user's
private key, which is confined only to the legitimate user. This proposed architecture of three
way mechanism makes it tough for hackers to crack the security system, thereby protecting data
stored in cloud.
In 2011, Ashish Agarwal et al. talk about security issues concerned with cloud
computing. This paper has talked about some serious security threats that prevails this field.
Ashutosh Kumar et al. focussed on providing a secure architectural framework for sharing and
data gathering. This cynosure of this work is that the authors have made a permission hierarchy
at different levels. The authors have focussed on security but with view of use hierarchy. In
2012, M.Venkatesh el al proposes RSASS system for data security. The scheme uses
RSA algorithm for encrypting large files and storing the date. The system can be used for storing
large databases. But the use of linear methods compromises with the data retrieval speed.
Hence, this system is good for static data. The propose a system for providing security in cloud
network. The architecture uses the combination of digital signature algorithm of Diffie Hellman
and AES encryption.
2.4.2 Advanced Encryption Standard Encryption Alghorithm
Advance encryption standard (AES) is Rijndael based cipher developed by two Belgian
cryptographers Joan Daemen and Vincent Rijmen. AES first adopted U.S. government
and now being used worldwide. The AES alghorithm is a symmentric key alghorithm, the same
key is used for encryption and decryption of data.
AES-128, AES-192, AES-256 process the data block in, respectively, encryption consists of
10 rounds for 128-bit keys, 12 rounds for 192-bit keys , and 14 rounds for 256-bit keys,iterations
of a pre-defined sequence of transformations, which are also called “rounds” (AES rounds) for
short. The rounds are identical except for the last one, which slightly differs from the others (by
skipping one of the transformations).
The rounds operate on two 128-bit inputs: “State” and “Round key”. Each round from 1 to
10/12/14 uses a different Round key. The 10/12/14 round keys are derived from the cipher key
by the “Key Expansion” Algorithm. This algorithm is independent of the processed data, and can
be carried out independently of the encryption/decryption phase.
So the last operation of the last round is AddRoundKey so it makes sense that AddRoundKey
would be the first operation of decryption.
The data block is processed serially as follows: initially, the input data block is XOR-ed with the
first 128 bits of the cipher key to generate the “State”. This step is also referred to as “Round 0”
which is using round key #0 (round key #0 is the first 128 bits of the cipher key).
Subsequently, the State is serially passed through 10/12/14 rounds where the result of the last
round is the encrypted (decrypted) block.
2.4.3 Diffie Hellman key exchange
It is a cryptographic exchanging techniques, The Diffie–Hellman key exchange method allows
two parties that have no prior knowledge of each other to jointly establish a shared secret key
over an insecure communications channel. This key can then be used to encrypt subsequent
communications using a symmetric key cipher. Diffie-Hellman key exchange protocol is first
public key cryptography scheme. It was proposed by Witfield Diffie and Martin Hellman in
1976. It uses two keys one secret and other private key. If Sender wants to communicate with the
receiver, he encrypts the message with his private key and senders’ public key. On the receiving
end, receiver decrypts the sent message using his private key and sender’s public key. This
scheme is based on the difficulty of computing logarithmic functions for prime exponents. This
is known as Discrete Logarithm Problem (DLP).
2.5 Raspberry Pi
The Raspberry Pi is a affordable , “credit card sized computer” that pulgs into any display device
via HDMI, VGA, and USB port to computer moniter or TV and uses standard keyboard or
mouse. It is a very friendly device that all age people are capable of doing everything that they
expect on desktop computer to do. The credit card sized computer has the ability of
browsing the internet, play high defination video, create spreedsheets, word processing , and also
play games.
The Raspberry Pi has the ability to interact with the outside world, and has been used in a wide
array of digital maker projects, from music machines and parent detectors to weather
stations and tweeting birdhouses with infra-red cameras. The raspberry pi organization believes
to make the Raspberry Pi being used and accessable by kids all over the world to learn to
program and understand how computers work with low cost.The Raspberry Pi Foundation is a
registered educational charity based in the UK. The Raspberry Pi Foundation is a charity
founded in 2009 promote the study of basic computer Science in schools. The Foundation’s goal
is to advance the education of adults and children, particularly in the field of computers,
computer science and related subjects.
The Raspberry Pi is a single-board computer, the idea came in 2006 when Eben Upton and his
colleagues at the University of Cambridge’s Computer Laboratory, including Rob Mullins,
Jack Lang and Alan Mycroft, became concerned about the student number decresing yearly.
2.5.1 Harware
TABLE OF RASPBERRY IMAGE
The latest model of RasPI B was annousced 29 Febuary, 2012. It uses processor 700MHz,
which capable to run and process the OS on RasPi.
2.5.2 Software
The Raspberry Pi is much like other computers need an operating system, the operation system
that works on RaspPi called “Raspbian”. It is a linux based OS and most commonly used
Operating System for the Raspberry Pi, so plenty documentation can be found online in relation
to the Raspberry Pi.
IMAGE HERE
A Raspberry Pi relies on upon Raspbian which is a free operating system based on ‘Debian’OS
and is well-run for Raspberry Pi fittings. Raspbian accompanies in excess of 35,000 bundles of
precompiled programming.
CHAPTER THREE : METHODOLOGY
This chapter will be discussing about the approach that has been taken in this research. In the
method section, a description of the data collection will be covered. What tools we will use in
collecting our data. The analysis methods we used as well as the problems and
weaknesses that comes with our different techniques. The research approach which is used will
also be covered in this section. The method is a manner or procedure often systematic way of
accomplish something (Lekvall Wahlbin 20011p. 3).
Analyzing the results of this top down search will filter out a fair share of results due
to irrelevance. Supplementing the shrunken set of results can be achieved by conducting a
bottom up search, using both backward and forward citation analysis. The former relates to
finding papers referenced by papers found earlier, while the latter is an acronym for finding
papers that cite papers we have found earlier, using search engines.
The papers found in the search are analyzed to distil useful concepts with respect to our
research. Papers containing topics such as privacy, cloud computing, raspberry pi,
infrastructure and security of cloud computing and raspberry pi. The complete process and the
results of the Literature Review are presented in chapter 2.
Observation when observing a system or a research object to see the details that
is important to a research. Requires a lot of resources and time.
Secondary data are data that is collected from external sources that already exist. The only thing
that has to be done is to look for the data you need. Secondary data has the upside
compared to primary that it is cheaper to collect but the reliability, validity and accuracy is not as
great. You do not know where the data actually comes from and cannot fully trust is against
primary data where you have more control. Secondary data is easier to obtain and cheaper to get
also. Some examples of secondary data (Kelly 2010):
There is a third data source called tertiary data that is the search tools for obtaining secondary
and primary data such as encyclopedias and indexes. Often it is used in literature search when
not knowing where to start searching for a specific topic (Saunders et.al. 2012). Our primary data
collection will consist observation in different forms and the secondary data collection will be
recent articles in the area of cloud computing and raspberry Pi, internet sources and literature that
is within our field of research.
The data analysis can often be either confirmatory or exploratory when analyzing data. Either
explore the area or confirm recent studies. (Jackson, Purc-Stephenson, and Gillaspy2010).
The data analysis will be implemented in the chapter 4. The information that was collected from
the primary, secondary and tertiary will be summarized and come up with a new
implementation. Purpose of using inductive approach due to the analyzing all the existing
journals and books related to Cloud Computing and Raspberry Pi, however this research is based
on the real project implementation to market and possible ideas in that field.
CHAPTER FOUR : DESIGN AND IMPLEMENTATION
4.1 Introduction
This chapter will explain the steps and procedures that are taken to implement the project with the
components. Cloud computing is defined by the United States National Institute of Standards and
Technology (NIST) as:
The Raspberry Pi can do a lot, especially now that the new Raspberry Pi comes with wireless capabilities
already on board. It can take the place of a ton of different (and more expensive) devices – including a
router! If you turn your Raspberry Pi into a wireless access point, you can make it act as a router. It’s not
the most powerful thing in the world, but it does work, and the project is a lot of fun. The next section
discusses the various components and their usage in the project.