Imlementation of Improved Black and White Method To Prevent Shoulder Surfing
This document describes a student project to implement an improved black and white method to prevent shoulder surfing attacks when entering personal identification numbers (PINs). The project aims to establish a more secure transaction between a mobile app and server. The proposed method uses randomly generated four-digit blocks, with each digit block combined with a color combination, to prevent attention-based shoulder surfing attacks. Testing was conducted and the method was found to effectively prevent covert attention shoulder surfing attacks.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
120 views61 pages
Imlementation of Improved Black and White Method To Prevent Shoulder Surfing
This document describes a student project to implement an improved black and white method to prevent shoulder surfing attacks when entering personal identification numbers (PINs). The project aims to establish a more secure transaction between a mobile app and server. The proposed method uses randomly generated four-digit blocks, with each digit block combined with a color combination, to prevent attention-based shoulder surfing attacks. Testing was conducted and the method was found to effectively prevent covert attention shoulder surfing attacks.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 61
IMLEMENTATION OF IMPROVED BLACK AND
WHITE METHOD TO PREVENT SHOULDER
SURFING A PROJECT REPORT Submitted by C.Bharathi priya S.Cht!aa R.Pa"ithra in the partial fulfillment for the award of the degree of BACHELOR OF ENGINEERING in COMPUTER SCIENCE AND ENGINEERING VELAMMAL INSTITUTE OF TECHNOLOG# ANNA UNIVERSIT#$CHENNAI %&&&'( APRIL '&)* 1 ANNA UNIVERSIT# CHENNAI$%&&&'( BONAFIDE CERTIFICATE Certified that this project report IMPLEMENTATION OF IMPROVED BLACK AND WHITE METHOS TO PREVENT SHOULDER SURFING+ is the bonafide or! of ,C.BHARATHI PRI#A-S.CHETNAA and R.PAVITHRA+ ho carried o"t the project or! "nder #$ s"per%ision& SIGNATURE SIGNATURE HEAD OF THE DEPARTMENT SUPERVISOR 2 ABSTRACT 'hen a "ser interacts ith a co#p"tin( s$ste# to enter a secret passord) sho"*der s"rfin( attac!s are of (reat concern& To cope ith this prob*e#) pre%io"s #ethods pres"#ed *i#ited co(niti%e capabi*ities of a h"#an ad%ersar$ as a deterrent) b"t there as a pitfa** ith the ass"#ption& In this paper) e sho that h"#an ad%ersaries) e%en itho"t a recordin( de%ice) can be #ore effecti%e at ea%esdroppin( than e+pected) in partic"*ar b$ e#p*o$in( co(niti%e strate(ies and b$ trainin( the#se*%es& O"r no%e* approach ca**ed co%ert attentiona* sho"*der s"rfin( indeed can brea! the e** !non PIN entr$ #ethod pre%io"s*$ e%a*"ated to be sec"re a(ainst sho"*der s"rfin(& Another contrib"tion in this paper is the for#a* #ode*in( approach b$ adaptin( the predicti%e h"#an perfor#ance #ode*in( too* for sec"rit$ ana*$sis and i#pro%e#ent& 'e a*so de%ise a defense techni,"e in the #ode*in( paradi(# to deteriorate se%ere*$ the percept"a* perfor#ance of the ad%ersaries hi*e preser%in( that of the "ser& To the best of o"r !no*ed(e) this is the first or! to #ode* and defend the ne for# of attac! thro"(h h"#an perfor#ance #ode*in(& Rea* attac! e+peri#ents and "ser st"dies are a*so cond"cted& TABLE OF CONTENTS 3 CHAPTER TITLE PAGE NO. LIST OF FIGURES..............-. LIST OF ABBREVATIONS............-/ ) INTRODUCTION ).) Abo"t the Project 00000000000&&-1 ' S#STEM ANAL#SIS '.) E+istin( s$ste#000000000000&&-2 '.' Proposed s$ste#000000000000&-2 './ S$ste# Desi(n 000000000000&&&3- / RE0UIREMENTS SPECIFICATION /.) Introd"ction0000000000000033 /.' 4ardare and Softare specification 000&&&&33 /./ Techno*o(ies Used 00000000000&35 /.*Techno*o(ies Used 0000000000&&&&35 /.*.) 6a%a00000000000000&&&35 /.*.).) Introd"ction to ja%a0000000&&&&&&35 /.*.).' 'or!in( of ja%a 00000000&&&&&&37 * S#STEM DESIGN /.( 8*oc! Dia(ra#0000000000000&75
( S#STEM DESIGN 1 DETAILED (.) Mod"*es000000000000000093 (.' Mod"*e e+p*anation00000000000&&95 4 % CODING AND TESTING %.) Codin(0000000000000000&& 99 %.' Codin( standards 000000000000&99 %./ Test proced"re0000000000000&&9. %.* Test data and o"tp"t 00000000000 91 REFERENCES..................5 SNAP SHOTS
LIST OF FIGURES * S$ste# Desi(n 5 (.' Patterns of the peer:peer ed(es (.' Patterns of the ser%ice:pro%ider ed(es (.' Disco%erin( #issin( *in!s in internet
LIST OF ABBREVATIONS 6 JDK 6a%a De%e*op#ent Too*!it. JMF 6a%a Media ;ra#eor!. TCP Trans#ission Contro* Protoco*. IP Internet Protoco*. HTTP 4$per Te+t Transfer Protoco*
CHAPTER ) INTRODUCTION Ai23 The #ain ai# of this project is to pre%ent h"#an sho"*der s"rfin( attac! and to estab*ish a sec"re transaction beteen the #obi*e App and Ser%er b$ i#p*e#entin( the i#pro%ed 8' #ethod& 7 Sy!4p5i53 'hen a "ser enters a persona* identification n"#ber<PIN= as a n"#eric passord in #obi*e or stationar$ s$ste#s) inc*"din( s#art phones) tab*et co#p"ters) a"to#ated te**er #achines <ATM=) and point of sa*e <PoS= ter#ina*s) a direct obser%ation attac! based on sho"*der s"rfin( beco#es (reat concern& The PIN entr$ can be obser%ed b$ nearb$ ad%ersaries) #ore effecti%e*$ in a croded p*ace& Since the sa#e PIN is "s"a**$ chosen b$ a "ser for %ario"s p"rposes and "sed repeated*$) a co#pro#ise of the PIN #a$ ca"se the "ser a (reat ris!& To cope ith this prob*e#) hich is beteen the "ser and the s$ste#) cr$pto(raphic pre%ention techni,"es are hard*$ app*icab*e beca"se h"#an "sers are *i#ited in their capacit$ to process infor#ation& Instead) there ha%e been a*ternati%e approaches considerin( the as$##etr$ beteen the "ser and the s$ste#& A#on( the#) the PIN entr$ as e*e(ant beca"se of its si#p*icit$ and int"iti%eness> in each ro"nd) a re("*ar n"#eric !e$pad is co*ored at rando#) ha*f of the !e$s in b*ac! and the other ha*f in hite) hich e i** ca** the 8' #ethod& A "ser ho !nos the correct PIN di(it can anser its co*or b$ pressin( the separate co*or !e$ be*o& The basic 8' #ethod is ai#ed to resist a h"#an sho"*der s"rfin( attac!) not s"pported b$ a recordin( de%ice) hi*e its probabi*istic e+tension considers a recordin( attac! in part& The 8' #ethod is sti** considered to be sec"re a(ainst h"#an ad%ersaries d"e to the *i#ited co(niti%e capabi*ities of h"#ans& CHAPTER ' S#STEM ANAL#SIS '.) E6ISTING S#STEM In sho"*der s"rfin( attac!s) ad%ersaries sho"*d #o%e their e$e fi+ations rapid*$ on the "ser interface) partic"*ar*$ d"rin( preprocessin() to obtain the cha**en(e infor#ation) e&(&) the *a$o"t of the !e$pad) in an on:ti#e processin( phase to catch the !e$ entr$ infor#ation) e&(&) a "ser?s !e$ press@ and d"rin( post processin( to fi*ter the ac,"ired infor#ation& If the ti#e period a**oed for those processes is too short or its #e#or$ re,"ire#ent e+ceeds the h"#an *i#it) then sho"*der s"rfin( sho"*d fai*& To e+tend and effecti%e*$ "se the a**oed ti#e period) the e+istin( 8 idea is to e#p*o$ co%ert attention& If an ad%ersar$ s"ppresses saccadic e$e #o%e#ents d"rin( %is"a* perception) she can earn #ore te#pora* chances for %is"a* infor#ation processin( ithin the c"rrent %is"a* an(*e& This is tr"e e%en hi*e cond"ctin( co%ert attentiona* shifts to a sti#"*"s inside the %is"a* an(*e and carr$in( o"t para**e* #otor operations itho"t saccadic e$e #o%e#ents& To red"ce the #e#or$ re,"ire#ent) o"r idea is to e#p*o$ percept"a* (ro"pin(& If an ad%ersar$ e+tracts si(nificant %is"a* re*ations fro# *oer:*e%e* feat"res) e&(&) co*or of s,"ares b$ i(norin( the indi%id"a* di(its) and (ro"ps the# into hi(her:*e%e* str"ct"res) e&(&) a *ar(er po*$(on in the sa#e co*or) based on the Gesta*t princip*es) she can red"ce the n"#ber of %is"a* objects stored in the short:ter# #e#or$& So in Co%ert attentiona* sho"*der s"rfin() three #ain operations s"ch as co%ert attention) percept"a* (ro"pin() and para**e* #otor operation) are co#bined to(ether for deri%in( a PIN di(it& In each ro"nd) attended objects are *ined for easier "nderstandin( of co%ert attention& Co%ert attentiona* sho"*der s"rfin( can brea! the 8' #ethod thro"(h the #ode*in(:based ana*$sis& '.' PROPOSED S#STEM 'e propose i#pro%ed 8' #ethod b$ e+tendin( 8' #ethod) in hich o"r proposed a*(orith# "ses rando#*$ (enerated fo"r di(its in hich each di(it b*oc!) is co#bined ith the co#bination of to ) to pre%ent the attentiona* sho"*der s"rfin( attac! b$ e+tractin( the PIN di(it after a** the "ser iterations (ot co#p*eted& To resist co%ert attentiona* sho"*der s"rfin() it o"*d be effecti%e to interr"pt the ad%ersar$ d"rin( percept"a* (ro"pin( itho"t chan(in( the "ser tas! si(nificant*$& One possibi*it$ is to !eep the 8' #ethod) b"t rando#iAe the orderin( of the di(its in each ro"nd so that percept"a* (ro"pin( cannot be done in the a$ e proposed& In this case) hoe%er) the "ser tas! re,"ires the added saccadic e$e #o%e#ent hi*e searchin( for the *ocation of the tar(et di(it in e%er$ ro"nd can *ead to *on(er PIN entr$ ti#e& Another possibi*it$ is to !eep the n"#eric !e$pad in the re("*ar *a$o"t) b"t prod"ce #ore percept"a* (ro"ps so that the ad%ersar$ is fr"strated& Toard si#i*arit$ in the tas! of percept"a* (ro"pin() e #a!e co*or (ro"ps *oo! si#i*ar <neither the sa#e nor opposite= in their shape beca"se co*or #"st be distin("ishab*e b$ the "ser& Toard co#p*e+it$) e #a!e co*or (ro"ps *oo! o%er*appin( <not separate=) so that ad%ersaries e+perience se%ere diffic"*ties not on*$ in ho*din( the (ro"ps in BSTM b"t a*so in 9 separatin( the#& The f"nda#enta* idea for co#binin( si#i*arit$ and co#p*e+it$) is to sp*it %is"a**$ e%er$ n"#eric !e$ into to ha*%es) so as to be fi**ed ith to distinct co*ors si#"*taneo"s*$ hereas each co*or fi**s ha*f of the a%ai*ab*e !e$s) i&e&) fi%e o"t of ten !e$s& So there e+ist fo"r co*or (ro"ps on the n"#eric !e$pad and to co*ors for e%er$ n"#eric !e$& The ad%ersar$ ho *a"nches co%ert attentiona* sho"*der s"rfin( #a$ need to percei%e fo"r co*or (ro"ps and attend to one of the# for the ne+t ro"nd) hi*e the "ser on*$ needs to anser either of the to co*ors that fi** hisCher PIN di(it !e$ in each ro"nd& A"thentication Ser%ices are a*so pro%ided b$ this #ethod& CHAPTER / RE0UIREMENT SPECIFICATIONS /.) INTRODUCTION The re,"ire#ents specification is a technica* specification of re,"ire#ents for the softare prod"cts& It is the first step in the re,"ire#ents ana*$sis process it *ists the re,"ire#ents of a partic"*ar softare s$ste# inc*"din( f"nctiona*) perfor#ance and sec"rit$ re,"ire#ents& The re,"ire#ents a*so pro%ide "sa(e scenarios fro# a "ser) an operationa* and an ad#inistrati%e perspecti%e& The p"rpose of softare re,"ire#ents specification is to pro%ide a detai*ed o%er%ie of the softare project) its para#eters and (oa*s& This describes the project tar(et a"dience and its "ser interface) hardare and softare re,"ire#ents& It defines ho the c*ient) tea# and a"dience see the project and its f"nctiona*it$& 10 /.' HARDWARE AND SOFTWARE SPECIFICATION /.'.) HARDWARE RE0UIREMENTS 4ard Dis! > 1-G8 and Abo%e RAM > 5G8 and Abo%e Processor > Penti"# IB and Abo%e Android 5&5 > Min 3& /.'.' SOFTWARE RE0UIREMENTS 'indos operatin( s$ste# DP and abo%e 6DE 3&. To#cat .&- M$s,* /.( TECHNOLOGIES USED /.(.) JAVA It is a P*atfor# Independent& 6a%a is an object:oriented pro(ra##in( *an("a(e de%e*oped initia**$ b$ 6a#es Gos*in( and co**ea("es at S"n Micros$ste#s& The *an("a(e) initia**$ ca**ed 11 Oa! <na#ed after the oa! trees o"tside Gos*in(Fs office=) as intended to rep*ace CGG) a*tho"(h the feat"re set better rese#b*es that of Objecti%e C& /.(.).) INTRODUCTION TO JAVA 6a%a has been aro"nd since 3223) de%e*oped b$ a s#a** tea# of S"n Micros$ste#s de%e*opers in a project ori(ina**$ ca**ed the Green project& The intent of the project as to de%e*op a p*atfor#:independent softare techno*o($ that o"*d be "sed in the cons"#er e*ectronics ind"str$& The *an("a(e that the tea# created as ori(ina**$ ca**ed Oa!& The first i#p*e#entation of Oa! as in a PDA:t$pe de%ice ca**ed Star Se%en <H/= that consisted of the Oa! *an("a(e) an operatin( s$ste# ca**ed GreenOS) a "ser interface) and hardare& The na#e H/ as deri%ed fro# the te*ephone se,"ence that as "sed in the tea#Fs office and that as dia*ed in order to anser an$ rin(in( te*ephone fro# an$ other phone in the office& Aro"nd the ti#e the ;irst Person project as f*o"nderin( in cons"#er e*ectronics) a ne craAe as (ainin( #o#ent"# in A#erica@ the craAe as ca**ed I'eb s"rfin(&I The 'or*d 'ide 'eb) a na#e app*ied to the InternetFs #i**ions of *in!ed 4TMJ doc"#ents as s"dden*$ beco#in( pop"*ar for "se b$ the #asses& The reason for this as the introd"ction of a (raphica* 'eb broser ca**ed Mosaic) de%e*oped b$ ncSA& The broser si#p*ified 'eb brosin( b$ co#binin( te+t and (raphics into a sin(*e interface to e*i#inate the need for "sers to *earn #an$ conf"sin( UNID and DOS co##ands& Na%i(atin( aro"nd the 'eb as #"ch easier "sin( Mosaic& It has on*$ been since 3229 that Oa! techno*o($ has been app*ied to the 'eb& In 3229) to S"n de%e*opers created the first %ersion of 4ot 6a%a) and then ca**ed 'eb R"nner) hich is a (raphica* broser for the 'eb that e+ists toda$& The broser as coded entire*$ in the Oa! *an("a(e) b$ this ti#e ca**ed 6a%a& Soon after) the 6a%a co#pi*er as reritten in the 6a%a *an("a(e fro# its ori(ina* C code) th"s pro%in( that 6a%a co"*d be "sed effecti%e*$ as an app*ication *an("a(e& S"n introd"ced 6a%a in Ma$ 322K at the S"n 'or*d 2K con%ention& 12 'eb s"rfin( has beco#e an enor#o"s*$ pop"*ar practice a#on( #i**ions of co#p"ter "sers& Unti* 6a%a) hoe%er) the content of infor#ation on the Internet has been a b*and series of 4TMJ doc"#ents& 'eb "sers are h"n(r$ for app*ications that are interacti%e) that "sers can e+ec"te no #atter hat hardare or softare p*atfor# the$ are "sin() and that tra%e* across hetero(eneo"s netor!s and do not spread %ir"ses to their co#p"ters& 6a%a can create s"ch app*ications& /./.).) WORKING OF JAVA ;or those ho are ne to object:oriented pro(ra##in() the concept of a c*ass i** be ne to $o"& Si#p*istica**$) a c*ass is the definition for a se(#ent of code that can contain both data <ca**ed attrib"tes= and f"nctions <ca**ed #ethods=& 'hen the interpreter e+ec"tes a c*ass) it *oo!s for a partic"*ar #ethod b$ the na#e of #ain) hich i** so"nd fa#i*iar to C pro(ra##ers& The #ain #ethod is passed as a para#eter an arra$ of strin(s <si#i*ar to the ar(%LM of C=) and is dec*ared as a static #ethod& To o"tp"t te+t fro# the pro(ra#) e e+ec"te the print*n #ethod of S$ste#&o"t) hich is ja%a?s o"tp"t strea#& UNID "sers i** appreciate the thoer$ behind s"ch a strea#) as it is act"a**$ standard o"tp"t& ;or those ho are instead "sed to the 'inte* p*atfor#) it i** rite the strin( passed to it to the "ser?s pro(ra#& 6a%a consists of to thin(s > Pro(ra##in( *an("a(e P*atfor# /./.).' THE JAVA PROGRAMMING LANGUAGE 6a%a is a hi(h:*e%e* pro(ra##in( *an("a(e that is a** of the fo**oin(> Si#p*e 13 Object:oriented Distrib"ted Interpreted Rob"st Sec"re Architect"re:ne"tra* Portab*e 4i(h:perfor#ance M"*tithreaded D$na#ic The code and can brin( abo"t chan(es hene%er fe*t necessar$& So#e of the standard needed to achie%e the abo%e:#entioned objecti%es are as fo**os> 6a%a is "n"s"a* in that each 6a%a pro(ra# is both co i#p*ied and interpreted& 'ith a co#pi*er) $o" trans*ate a 6a%a pro(ra# into an inter#ediate *an("a(e ca**ed Ja"a 7yt 8495 N the p*atfor# independent codes interpreted b$ the 6a%a interpreter& 'ith an interpreter) each 6a%a b$te code instr"ction is parsed and r"n on the co#p"ter& Co#pi*ation happens j"st once@ interpretation occ"rs each ti#e the pro(ra# is e+ec"ted& This fi("re i**"strates ho it or!s > 14 Fi:./.) Oo" can thin! of 6a%a b$te codes as the #achine code instr"ctions for the 6a%a Birt"a* Machine <6BM=& E%er$ 6a%a interpreter) hether it?s a 6a%a de%e*op#ent too* or a 'eb broser that can r"n 6a%a app*ets) is an i#p*e#entation of 6BM& That 6BM can a*so be i#p*e#ented in hardare& 6a%a b$te codes he*p #a!e rite once) r"n an$hereP possib*e& Oo" can co#pi*e $o"r 6a%a pro(ra# into b$te codes on an$ p*atfor# that has a 6a%a co#pi*er& The b$te codes can then be r"n on an$ i#p*e#entation of the 6B#& ;or e+a#p*e) that sa#e 6a%a pro(ra# can e r"n on 'indos NT) So*aris and Macintos
15 Java program Complier Interpreter Interpreter Interpreter
PC$C42pati7; S<! U;tra S4;ari5 P4=r 2a8i!t45h Wi!94=5 NT Sy5t2 >
/./.)./ THE JAVA PLATFORM A p*atfor# is the hardare or softare en%iron#ent in hich a pro(ra# r"ns& The 6a%a p*atfor# differs fro# #ost other p*atfor#s in that it?s a softare:on*$ p*atfor# that r"ns on top of other) hardare:based p*atfor#s& Most other p*atfor#s are described as a co#bination of hardare and operatin( s$ste#& The 6a%a p*atfor# has to co#ponents : The 6a%a Birt"a* Machine <6BM= The 6a%a App*ication Pro(ra##in( Interface <6a%a API= Oo"?%e a*read$ been introd"ced to the 6BM& It?s the base for the 6a%a p*atfor# and is ported onto %ario"s hardare:based p*atfor#s& The 6a%a API is a *ar(e co**ection of read$:#ade softare co#ponents that pro%ide #an$ "sef"* capabi*ities) s"ch as (raphica* "ser interface <GUI= id(ets& The 6a%a API is (ro"ped into 16 *ibraries ?pa8@a:5A of re*ated co#ponents& The fo**oin( fi("re depicts a 6a%a pro(ra#) s"ch as an app*ication or app*et) that?s r"nnin( on the 6a%a p*atfor#& As the fi("re shos) the 6a%a API and Birt"a* Machine ins"*ates the 6a%a pro(ra# fro# hardare dependencies& ;i(&7&7 As a p*atfor#:independent en%iron#ent) 6a%a can be a bit s*oer than nati%e code& 4oe%er) s#art co#p*iers) ee*:t"ned interpreters) and j"st:in:ti#e b$te co#p*i*ers can brin( 6a%a?s perfor#ance c*ose to that of nati%e code itho"t threatenin( protabi*it$&
/.(.).' WORKING OF JAVA ;or those ho are ne to object:oriented pro(ra##in() the concept of a c*ass i** be ne to $o"& Si#p*istica**$) a c*ass is the definition for a se(#ent of code that can contain both data and f"nctions& 'hen the interpreter e+ec"tes a c*ass) it *oo!s for a partic"*ar #ethod b$ the na#e of #ain) hich i** so"nd fa#i*iar to C pro(ra##ers& The #ain #ethod is passed as a para#eter an arra$ of strin(s <si#i*ar to the ar(%LM of C=) and is dec*ared as a static #ethod& To o"tp"t te+t fro# the pro(ra#) e e+ec"te the print*n #ethod of S$ste#&o"t) hich is ja%a?s o"tp"t strea#& UNID "sers i** appreciate the theor$ behind s"ch a strea#) as it is act"a**$ standard o"tp"t& ;or those ho are instead "sed to the 'inte* p*atfor#) it i** rite the strin( passed to it to the "ser?s pro(ra#& 17 /./.* APACHE TOMCAT SERVER Apache To#cat <for#er*$ "nder the Apache 6a!arta Project@ To#cat is no a top *e%e* project= is a eb container de%e*oped at the Apache Softare ;o"ndation& To#cat i#p*e#ents the ser%*et and the 6a%aSer%er Pa(es <JSP= specifications fro# S"n Micros$ste#s) pro%idin( an en%iron#ent for 6a%a code to r"n in cooperation ith a eb ser%er& It adds too*s for confi("ration and #ana(e#ent b"t can a*so be confi("red b$ editin( confi("ration fi*es that are nor#a**$ XM:for#atted& 8eca"se To#cat inc*"des its on 4TTP ser%er interna**$) it is a*so considered a standa*one eb ser%er& E!"ir4!2!t To#cat is a eb ser%er that s"pports ser%*ets and 6SPs& To#cat co#es ith the 6asper co#pi*er that co#pi*es 6SPs into ser%*ets& The To#cat ser%*et en(ine is often "sed in co#bination ith an Apache eb ser%er or other eb ser%ers& To#cat can a*so f"nction as an independent eb ser%er& Ear*ier in its de%e*op#ent) the perception e+isted that standa*one To#cat as on*$ s"itab*e for de%e*op#ent en%iron#ents and other en%iron#ents ith #ini#a* re,"ire#ents for speed and transaction hand*in(& 4oe%er) that perception no *on(er e+ists@ To#cat is increasin(*$ "sed as a standa*one eb ser%er in hi(h: traffic) hi(h:a%ai*abi*it$ en%iron#ents& Since its de%e*opers rote To#cat in 6a%a) it r"ns on an$ operatin( s$ste# that has a 6BM& Pr49<8t Bat<r5 To#cat 7&+ <initia* re*ease= 18 i#p*e#ents the Ser%*et 5&5 and 6SP 3&3 specifications ser%*et re*oadin( basic 4TTP f"nctiona*it$ To#cat 9&+ i#p*e#ents the Ser%*et 5&7 and 6SP 3&5 specifications ser%*et container redesi(ned as Cata*ina 6SP en(ine redesi(ned as 6asper Co$ote connector 6a%a Mana(e#ent E+tensions <6MD=) 6SP and Str"ts:based ad#inistration To#cat K&+ i#p*e#ents the Ser%*et 5&9 and 6SP 5&- specifications red"ced (arba(e co**ection) i#pro%ed perfor#ance and sca*abi*it$ nati%e 'indos and Uni+ rappers for p*atfor# inte(ration faster 6SP parin( Hi5t4ry To#cat started off as a ser%*et specification i#p*e#entation b$ 6a#es D"ncan Da%idson) a softare architect at S"n& 4e *ater he*ped #a!e the project open so"rce and p*a$ed a !e$ ro*e in its donation b$ S"n to the Apache Softare ;o"ndation& 19 Da%idson had initia**$ hoped that the project o"*d beco#e open:so"rced and) since #ost open:so"rce projects had OFRei**$ boo!s associated ith the# feat"rin( an ani#a* on the co%er) he anted to na#e the project after an ani#a*& 4e ca#e "p ith To#cat since he reasoned the ani#a* represented so#ethin( that co"*d ta!e care of and fend for itse*f& 4is ish to see an ani#a* co%er e%ent"a**$ ca#e tr"e hen OFRei**$ p"b*ished their To#cat boo! ith a to#cat on the co%er Ja"a Bat<r5 a!9 4pti4!5 Orac*e1i introd"ced the "se of 6a%a as a proced"ra* *an("a(e ith a 6a%a Birt"a* Machine <6BM= in the database <ori(ina**$ ca**ed 6Ser%er=& 6BM inc*"des s"pport for 6a%a stored proced"res) #ethods) tri((ers) Enterprise 6a%a8eansQ <E68s=) COR8A) and 4TTP& The Acce*erator is "sed for project (eneration) trans*ation) and co#pi*ation) and can a*so be "sed to dep*o$Cinsta** shared *ibraries& The inc*"sion of 6a%a ithin the Orac*e database a**os 6a%a de%e*opers to *e%era(e their s!i**s as Orac*e app*ication de%e*opers& 6a%a app*ications can be dep*o$ed in the c*ient) App*ication Ser%er) or database) dependin( on hat is #ost appropriate& Orac*e data areho"sin( options for OJAP and data #inin( pro%ide a 6a%a API& These app*ications are t$pica**$ c"sto# b"i*t "sin( Orac*e?s 6De%e*oper& 6;TVi= A #"*ti#edia ho#e p*atfor#) or MP4) is an interacti%e di(ita* te*e%ision #idd*eare s$ste# that a**os the reception and e+ec"tion of interacti%e 6a%a app*ications on a te*e%ision set& Interacti%e te*e%ision) a*so !non as ITB) enab*es peop*e to not on*$ %ie te*e%ision b"t a*so interact ith its content& The acti%ities that "sers can interact ith inc*"de infor#ation ser%ices) (a#es) %otin() e:#ai*) SMS or shoppin(& M4P app*ications #a$ #a!e "se of an additiona* ret"rn channe* that s"pports Internet Protoco*& MP4 co#es in to presentations) DB8:4TMJ app*ications and the #ore pop"*ar DB8:6 app*ications) a*so !non as D*ets& An D*et interface a**os an e+terna* so"rce to initiate and ha*t an app*ication& This abi*it$ is cr"cia* for a set:top bo+ en%iron#ent) hich in t"rn is an essentia* co#ponent of interacti%e te*e%ision& 20 D*ets "s"a**$ re,"ire a brief #an"a* on ho to insta** the softare and ho it or!s& It describes detai*s abo"t the *atest %ersion of the softare) the -&7&.&) a*tho"(h there ha%e been p*ans to chan(e the feat"res and ho the$ or!&Rbr CSRbr CSThe #an"a* t$pica**$ ta*!s abo"t the director$ str"ct"re one sho"*d (et hen don*oadin( and "nAippin( the fi*e) abo"t ho to start the softare) ho to r"n it) abo"t the re#ote contro*) the shortc"t !e$s and the settin(s fi*e& The infor#ation is #eant to he*p an$ ne "ser to start "sin( the e#"*ator) b"t #ore infor#ation can a*so be fo"nd on*ine) especia**$ re*ated to co#ponents and tro"b*eshootin( an$ prob*e#s& C4!Bi:<ri!: 6;TVi= C4!Bi:<ri!: th 8ha!!;5 that ar a"ai;a7; An$ TB i** ha%e a *ist of channe*s a%ai*ab*e) and D*eTBie a*so offers this f"nctiona*it$& Un*i!e a rea* TB) $o" need to te** it hat channe*s are a%ai*ab*e and $o" can do this b$ editin( the confi(Cchanne*s&+#*fi*e& The defa"*t %ersion of this fi*e *oo!s *i!e this> <?xml version="1.0" encoding="ISO-8859-1"?> <CH!!"#S> <CH!!"#> <!$">0<%!$"> <$"&I>con'ig%de'()l*+g.,-g<%$"&I> <%CH!!"#> <%CH!!"#S> As $o" can see) each channe* definition consists of to parts& The R NAMES e*e#ent contains the channe* na#e or n"#ber that i** be assi(ned to this channe*& The R MEDIAS e*e#ent te**s& D*eTBie hat it sho"*d disp*a$ in the bac!(ro"nd hen that channe* is se*ected& This can either be a 6PEG i#a(e <hich sho"*d be /5- pi+e*s ide b$ K/. pi+e*s hi(h= or it can be an ABI fi*e if $o" prefer a #o%in( bac!(ro"nd& P*ease note that on*$ so#e t$pes of ABI fi*e are s"pported : see the section on "sin( %ideo ith D*eTBie for #ore detai*s& 21 'hen $o" first start D*eTBie) it i** disp*a$ the channe* *isted first in the channe*s&+#* fi*e& In %ersion -&7&. of D*eTBie it is not possib*e to chan(e the channe* "sin( the !e$s on the re#ote& I!tr49<8ti4! B4r 6AMPP3 DBi!iti4!5 4B 6AMPP 4! th W73 H DAMPP <or= is a free and open so"rce cross:p*atfor# eb ser%er pac!a(e) Consistin( #ain*$ of the Apache 4TTP Ser%er) M$STJ database) and interpreters for scripts had ritten in the P4P and Per* pro(ra##in( *an("a(es& I!tr49<8ti4! At the be(innin( it is i#portant to anser h$ to choose DAMPP a#on( so #an$ ser%er pac!a(es a%ai*ab*eU 'e**) there are to stron( ad%anta(es of it& ;irst : itFs confi("ration is so eas$) that e%en a chi*d can do it& It partic"*ar*$ is #ini#iAed to "nAip archi%e and r"n set"p batch& Second : DAMPP is e+tre#e*$ portab*eV Mo%in( it fro# one director$ or dri%e to another re,"ires on*$ one r"n of set"pW+a#pp&bat& Oo" can e%en insta** it on US8 stic! and ha%e $o"r pri%ate eb ser%er a*on( ith $o"r apps (o an$here ith $o" and to be a%ai*ab*e on an$ co#p"ter@ $o" p*"( $o"r US8 stic! toV As I read other 'i!i artic*es on ho #an$ prob*e#s peop*e ha%e ith insta**in( and confi("rin( other ser%ers or ser%er pac! I thin! it can be si#p*ier than ith DAMPP& Differences beteens set"p %ersion <EDE= and set"p:*ess %ersion <XIP= are at *east ,"estionab*e <ha*f the siAe for the first one= and I sti** canFt fi("re o"t ho do the achie%e itU >= 8"t for this t"toria* and for ad%anta(es of portabi*it$ e i** "se XIP %ersion& I!5ta;;i!: 6AMPP 'e**&&& there is act"a**$ no insta**ation& 6"st "nAip archi%e (rabbed fro# Apache ;riends ebsite to a director$ of $o"r choice) e+ec"te 5t<pCDa2pp.7at inside "nAipped fo*der once and anser to a fe si#p*e ,"estions <inc*"din( one) if $o" ant to #a!e DAMPP portab*e : i&e& p"t on a US8 stic!=& 22 After that) e+ec"te Da2ppC84!tr4;.D to r"n an$ eb ser%er co#ponent <*i!e Apache) M$STJ= $o" need or to insta** it as s$ste# ser%ice& If $o" pass this step) $o" can open $o"r broser and point it to localhost to see DAMPP e*co#e pa(e) hich consist of so#e #od"*es for chec!in( C (rantin( sec"rit$ to $o"r ebapps r"n "nder this ser%er& If e%er$thin( is do"b*e chec!ed and a** iss"es a** so*%ed) $o" #a$ de*ete contents of httpd s"bfo*der in $o" DAMPP director$& I!5ta;;i!: #ii
I ass"#e that $o"F%e a*read$ (rabbed Aip fi*e containin( neest edition of Oii& If $o" are a*read$ fa#i*iar ith Oii) $o" #a$ obe$ demos fo*der) b"t it #i(ht be ise to r"n at *east once a requirements to see) if $o"r fresh DAMPP insta**ation satisf$ a** $o"rs and OiiFs needsU ;or this p"rpose) cop$ contents of archi%e to httpd s"bfo*der in $o" DAMPP director$ and (o to localhost in $o"r eb broser& If e%er$thin( is fine) $o" #a$ #o%e Oii o"tside eb accessib*e director$) as it is ad%ised in doc"#entation) and "pdate bootstrap inde+&php fi*e in $o"r ebapps to point to correct fi*e& In #$ sit"ation I p"t contents of an archi%e in the sa#e director$ as httpd s"bfo*der <i&e& #ain DAMPP fo*der= and rena#e framework director$ to yii& Therefore #$ bootstrap fi*e *oo!s *i!e this> COMPANIES3$ Usin( an e$eOS so*"tion for $o"r co#pan$ can pro%ide $o" *ots of benefits& ;ro# portin( $o"r e+istent apps to $o"r ne s$ste# to pro%ide $o" a ,"a*it$ s"pport) $o" i** be ab*e to choose beteen the best ser%ices to pro%ide $o"r co#pan$ the perfect so*"tion& PUBLIC3$ ;or p"b*ic en%iron#ents) e$eOS can pro%ide a s$ste# here) once a "ser has si(ned "p) heCshe can access the netor! fro# an$ of the p"b*ic points) ha%in( hisCher persona* des!top and fi*es& A sin(*e e$eOS Ser%er can hand*e h"ndreds of tho"sands of "sersV Oo" can %isit p"b*ic en%iron#ent O=! C;4<9 Oprati!: Sy5t2 With EyOS 23 A c*o"d OS si#p*$ refers to an operatin( s$ste# <or an interface fi**ed ith a co#p*ete s"ite of des!top app*ications= that resides on the 'eb and $o" can access to it an$ti#e) an$here as *on( as $o" ha%e an Internet connection& 'hi*e there are p*ent$ of c*o"d OS o"t there that $o" can si(n "p and "se for free) there #i(ht be instances here $o" ant to ha%e $o"r on dedicated c*o"d OS& ;irst of a**) si(nin( "p a free acco"nt ith third:part$ c*o"d OS often #eans that $o" ha%e *i#ited fi*e stora(e space and a** $o"r data are stored in other peop*e?s ser%er& Ne+t) the connection speed is dependent on the n"#ber of acti%e "sers at an$ ti#e& The #ore pop"*ar the site is) the s*oer it i** (et hen $o" are "sin( it& If hat $o" ant is $o"r on dedicated 'eb OS that $o" can "se to #ana(e $o"r on*ine st"ff) and a*so to pro%ide an en%iron#ent to co**aborate ith $o"r co**ea("esCpartners) then e$eOS is the softare for $o"& E$eOS is free and open so"rce c*o"d OS softare that $o" can insta** on $o"r on 'eb ser%er& One thin( that I *i!e abo"t e$eOS is its s#a** fi*e siAe and ease of insta**ation& The ho*e pac!a(e is on*$ 5&KM8 in siAe) and the insta**ation re,"ired a*#ost Aero confi("ration <e**) there are sti** se%era* steps in%o*%ed= and an$one ho !no ho to "se a ;TP pro(ra# can (et it "p and r"nnin( in no ti#e& ). I!tr49<8ti4! ).) P<rp45 In co#p"ter sec"rit$) sho"*der s"rfin( refers to "sin( direct ober%ation techni,"es) s"ch as *oo!in( o%er so#eoneFs sho"*der) to (et infor#ation& It is co##on*$ "sed to obtain passords) PIN sec"rit$ codes) and si#i*ar data& Sho"*der s"rfin( can a*so be done at a distance "sin( binoc"*ars or other %ision:enhancin( de%ices& Ine+pensi%e) #iniat"re c*osed:circ"it te*e%ision ca#eras can be concea*ed in cei*in(s) a**s or fi+t"res to obser%e data entr$& To pre%ent sho"*der s"rfin() it is ad%ised to shie*d paperor! or the !e$pad fro# %ie b$ "sin( oneFs bod$ or c"ppin( oneFs hand& To cope ith this prob*e#) hich is beteen the "ser and the s$ste#) cr$pto(raphic pre%ention techni,"es are hard*$ app*icab*e beca"se h"#an "sers are *i#ited in their capacit$ to process infor#ation& Instead) there ha%e been a*ternati%e approaches 24 considerin( the as$##etr$ beteen the "ser and the s$ste#& O"r no%e* approach ca**ed co%ert attentiona* sho"*der s"rfin( indeed can brea! the e** !non PIN entr$ #ethod pre%io"s*$ e%a*"ated to be sec"re a(ainst sho"*der s"rfin(& Another contrib"tion in this paper is the for#a* #ode*in( approach b$ adaptin( the predicti%e h"#an perfor#ance #ode*in( too* for sec"rit$ ana*$sis and i#pro%e#ent& 'e a*so de%ise a defense techni,"e in the #ode*in( Pr4E8t S84p 'hen a "ser enters a persona* identification n"#ber<PIN= as a n"#eric passord in #obi*e or stationar$ s$ste#s) inc*"din( s#art phones) tab*et co#p"ters) a"to#ated te**er #achines <ATM=) and point of sa*e <PoS= ter#ina*s) a direct obser%ation attac! based on sho"*der s"rfin( beco#es (reat concern& The PIN entr$ can be obser%ed b$ nearb$ ad%ersaries) #ore effecti%e*$ in a croded p*ace& Since the sa#e PIN is "s"a**$ chosen b$ a "ser for %ario"s p"rposes and "sed repeated*$) a co#pro#ise of the PIN #a$ ca"se the "ser a (reat ris!& To cope ith this prob*e#) hich is beteen the "ser and the s$ste#) cr$pto(raphic pre%ention techni,"es are hard*$ app*icab*e beca"se h"#an "sers are *i#ited in their capacit$ to process infor#ation& Instead) there ha%e been a*ternati%e approaches considerin( the as$##etr$ beteen the "ser and the s$ste#& A#on( the#) the PIN entr$ as e*e(ant beca"se of its si#p*icit$ and int"iti%eness> in each ro"nd) a re("*ar n"#eric !e$pad is co*ored at rando#) ha*f of the !e$s in b*ac! and the other ha*f in hite) hich e i** ca** the 8' #ethod& A "ser ho !nos the correct PIN di(it can anser its co*or b$ pressin( the separate co*or !e$ be*o& The basic 8' #ethod is ai#ed to resist a h"#an sho"*der s"rfin( attac!) not s"pported b$ a recordin( de%ice) hi*e its probabi*istic e+tension considers a recordin( attac! in part& The 8' #ethod is sti** considered to be sec"re a(ainst h"#an ad%ersaries d"e to the *i#ited co(niti%e capabi*ities of h"#ans& So o"r ai# of this project is to pre%ent h"#an sho"*der s"rfin( attac! and to estab*ish a sec"re transaction beteen the #obi*e App and Ser%er b$ i#p*e#entin( the i#pro%ed 8' #ethod& '. O"ra;; D58ripti4! 25 '.) Pr49<8t Pr5p8ti" In sho"*der s"rfin( attac!s) ad%ersaries sho"*d #o%e their e$e fi+ations rapid*$ on the "ser interface) partic"*ar*$ d"rin( preprocessin() to obtain the cha**en(e infor#ation) e&(&) the *a$o"t of the !e$pad) in an on:ti#e processin( phase to catch the !e$ entr$ infor#ation) e&(&) a "ser?s !e$ press@ and d"rin( post processin( to fi*ter the ac,"ired infor#ation& If the ti#e period a**oed for those processes is too short or its #e#or$ re,"ire#ent e+ceeds the h"#an *i#it) then sho"*der s"rfin( sho"*d fai*& To e+tend and effecti%e*$ "se the a**oed ti#e period) the e+istin( idea is to e#p*o$ co%ert attention& If an ad%ersar$ s"ppresses saccadic e$e #o%e#ents d"rin( %is"a* perception) she can earn #ore te#pora* chances for %is"a* infor#ation processin( ithin the c"rrent %is"a* an(*e& This is tr"e e%en hi*e cond"ctin( co%ert attentiona* shifts to a sti#"*"s inside the %is"a* an(*e and carr$in( o"t para**e* #otor operations itho"t saccadic e$e #o%e#ents& To red"ce the #e#or$ re,"ire#ent) o"r idea is to e#p*o$ percept"a* (ro"pin(& If an ad%ersar$ e+tracts si(nificant %is"a* re*ations fro# *oer: *e%e* feat"res) e&(&) co*or of s,"ares b$ i(norin( the indi%id"a* di(its) and (ro"ps the# into hi(her:*e%e* str"ct"res) e&(&) a *ar(er po*$(on in the sa#e co*or) based on the Gesta*t princip*es) she can red"ce the n"#ber of %is"a* objects stored in the short:ter# #e#or$& So in Co%ert attentiona* sho"*der s"rfin() three #ain operations s"ch as co%ert attention) percept"a* (ro"pin() and para**e* #otor operation) are co#bined to(ether for deri%in( a PIN di(it& In each ro"nd) attended objects are *ined for easier "nderstandin( of co%ert attention& Co%ert attentiona* sho"*der s"rfin( can brea! the 8' #ethod thro"(h the #ode*in(:based ana*$sis& '.' Pr49<8t Fat<r5 26 The internationa* standard for PIN #ana(e#ent) ISO 2K.9) #andates) the PIN entr$ de%ice sha** be desi(ned or insta**ed so that the c"sto#er can pre%ent others fro# obser%in( the PIN %a*"e as it is bein( entered& There ha%e been a n"#ber of st"dies of de%e*opin( pre%ention #ethods in softare for te+t"a* passords) (raphica* passords and PINs & The$ co##on*$ re*$ on indirect !e$ entr$ to resist sho"*der s"rfin( and re*ated attac!s& 'e ha%e *earned that) hoe%er) it is cha**en(in( to desi(n a sec"re and at the sa#e ti#e "sab*e #ethod& It is *i!e*$ that sec"rit$ enforce#ent res"*ts in hi(h*$ co#p*e+ and error:prone proced"res) hi*e its re*a+ation for "sabi*it$ can *ead to sec"rit$ breaches& 4oe%er 8' #ethod as sti** considered as a sec"re #ethod a(ainst sho"*der s"rfin( b"t ad%ersaries sho"*d #o%e their e$e fi+ations rapid*$ on the "ser interface) partic"*ar*$ d"rin( preprocessin() to obtain the cha**en(e infor#ation) e&(&) the *a$o"t of the !e$pad) in an on:ti#e processin( phase to catch the !e$ entr$ infor#ation) e&(&) a "ser?s !e$ press@ and d"rin( post processin( to fi*ter the ac,"ired infor#ation& If the ti#e period a**oed for those processes is too short or its #e#or$ re,"ire#ent e+ceeds the h"#an *i#it) then sho"*der s"rfin( sho"*d fai*& The co(niti%e co#p*e+it$ ana*$sis and its e+peri#ents (i%en in L3M sho on*$ that the nai%e sho"*der s"rfers co"*d not fo**o and re#e#ber a** the di(its for the ne+t ro"nd a(ainst the 8' #ethod& 4oe%er) if it is possib*e to e+tend and effecti%e*$ "se the a**oed ti#e period and to red"ce the #e#or$ re,"ire#ent) ad%ersaries can beco#e #ore effecti%e than e+pected& './ U5r C;a555 a!9 Chara8tri5ti85 Jo(ic&Nei(hbSensor&ja%a fi*e is "sed for to #a!e a Sensor in #"*ti (ro"p& Jo(ic& sensorM"*Sender&ja%a fi*e is "sed &co##"nicate beteen Sensor nodes& Jo(ic&sin!ser%er&ja%a is "sed to connect that sensor node and sin! node& Protection& Sensor&f+ fi*e is sho the sensor node desi(n "sin( ja%af+& Protection& Sin!&f+ fi*e is sho the sin! node desi(n "sin( ja%af+& 27 '.* D5i:! a!9 I2p;2!tati4! C4!5trai!t5 '.(.) C4!5trai!t5 i! A!a;y5i5 Constraints as Infor#a* Te+t Constraints as Operationa* Restrictions Constraints Inte(rated in E+istin( Mode* Concepts Constraints as a Separate Concept Constraints I#p*ied b$ the Mode* Str"ct"re
'.(.' C4!5trai!t5 i! D5i:! Deter#ination of the In%o*%ed C*asses Deter#ination of the In%o*%ed Objects Deter#ination of the In%o*%ed Actions Deter#ination of the Re,"ire C*a"ses G*oba* actions and Constraint Rea*iAation '.(./ C4!5trai!t5 i! I2p;2!tati4! A hierarchica* str"ct"rin( of re*ations #a$ res"*t in #ore c*asses and a #ore co#p*icated str"ct"re to i#p*e#ent& Therefore it is ad%isab*e to transfor# the hierarchica* re*ation str"ct"re to a si#p*er str"ct"re s"ch as a c*assica* f*at one& It is rather strai(htforard to transfor# the de%e*oped hierarchica* #ode* into a bipartite) f*at #ode*) consistin( of c*asses on the one hand and f*at re*ations on the other& ;*at re*ations are preferred at the desi(n *e%e* for reasons of si#p*icit$ and i#p*e#entation ease& There is no identit$ or f"nctiona*it$ associated ith a f*at re*ation& A f*at re*ation corresponds ith the re*ation concept of entit$:re*ationship #ode*in( and #an$ object oriented #ethods& /. Sy5t2 Fat<r5 28 A so"rce *ocation pri%ac$:preser%in( sche#e that creates a c*o"d of fa!e pac!ets aro"nd the so"rce node) %aries traffic ro"tes) and chan(es the pac!ets? appearance at each hop& It can pro%ide a stron( protection a(ainst 4otspot:Jocatin( attac! ith #"ch *ess ener($ cost co#parin( to (*oba*:ad%ersar$ based sche#es& *. EDtr!a; I!trBa8 RF<ir2!t5 *.)U5r I!trBa85 3& A** the contents in the project are i#p*e#ented "sin( Graphica* User Interface <GUI= in 6a%a thro"(h 6a%a;D concepts& 5& E%er$ concept"a* part of the projects is ref*ected "sin( the 6a%a;D& 7& S$ste# (ets the inp"t and de*i%ers thro"(h the GUI based& *.' Har9=ar I!trBa85 Ethr!t Ethernet on the ASC9-- s"pports TCPCIP) Ad%anced Peer:to:Peer Netor!in( <APPN= and ad%anced pro(ra#:to:pro(ra# co##"nications <APPC=& ISDN Oo" can connect $o"r ASC9-- to an Inte(rated Ser%ices Di(ita* Netor! <ISDN= for faster) #ore acc"rate data trans#ission& An ISDN is a p"b*ic or pri%ate di(ita* co##"nications netor! that can s"pport data) fa+) i#a(e) and other ser%ices o%er the sa#e ph$sica* interface& A*so) $o" can "se other protoco*s on ISDN) s"ch as IDJC and D&5K& *./S4Bt=ar I!trBa85 This softare is interacted ith the 4ttp protoco*& This protoco* is r"nnin( in to#cat port n"#ber <defa"*t 1-=& C422<!i8ati4! I!trBa85 29 3& TCPCIP protoco*& 5& JAN settin(s& (. Othr N4!B<!8ti4!a; RF<ir2!t5 (.)PrB4r2a!8 RF<ir2!t5 The perfor#ance of the ire*ess #esh netor!) to e+ec"te this project on JAN or ifi co##"nication channe*& So e need to one or #ore than one #achine to e+ec"te the de#o& Machine needs the eno"(h hard dis! space to insta** the softare and r"n o"r project& (.'SaBty RF<ir2!t5 3& The softare #a$ be safet$:critica*& If so) there are iss"es associated ith its inte(rit$ *e%e* 5& The softare #a$ not be safet$:critica* a*tho"(h it for#s part of a safet$:critica* s$ste#& ;or e+a#p*e) softare #a$ si#p*$ *o( transactions& 7& If a s$ste# #"st be of a hi(h inte(rit$ *e%e* and if the softare is shon to be of that inte(rit$ *e%e*) then the hardare #"st be at *east of the sa#e inte(rit$ *e%e*& 9& There is *itt*e point in prod"cin( FperfectF code in so#e *an("a(e if hardare and s$ste# softare <in idest sense= are not re*iab*e& K& If a co#p"ter s$ste# is to r"n softare of a hi(h inte(rit$ *e%e* then that s$ste# sho"*d not at the sa#e ti#e acco##odate softare of a *oer inte(rit$ *e%e*& .& S$ste#s ith different re,"ire#ents for safet$ *e%e*s #"st be separated& /& Otherise) the hi(hest *e%e* of inte(rit$ re,"ired #"st be app*ied to a** s$ste#s in the sa#e en%iron#ent& (./S8<rity RF<ir2!t5 Do not b*oc! the so#e a%ai*ab*e ports thro"(h the indos firea** 30 K&9 S4Bt=ar 0<a;ity Attri7<t5 F<!8ti4!a;ity> are the re,"ired f"nctions a%ai*ab*e) inc*"din( Interoperabi*it$ and sec"rit$ R;ia7i;ity> #at"rit$) fa"*t to*erance and reco%erabi*it$ U5a7i;ity> ho eas$ it is to "nderstand) *earn) and operate the softare S$ste# EBBi8i!8y> perfor#ance and reso"rce beha%ior& Mai!tai!a7i;ity> Maintainin( the softare& P4rta7i;ity> can the softare easi*$ be transferred to another en%iron#ent) Inc*"din( insta** abi*it$ CHAPTER * Ar8hit8t<r Dia:ra2 31
Mo,ile .ata,a (e Mo,ile $(er &''e((ing mo,ile &-M %egi(tration Pro'e(( Mo,ile $(er &''e((ing mo,ile &-M %egi(tration Pro'e(( Server
Mo,ile .ata,a (e 39 Mo,ile $(er &''e((ing Mo,ile &-M %egi(tration Pro'e(( Server Mo,ile .ata,a( e Provi/e( a''e(( $ni0+e PI1 Mat'*e/ 2a(* val+e #nter amo+nt Mone) 3it*/ra4al C;a55 Dia:ra2 40 CHAPTER ( S#STEM DESIGN (.) MODULES User Re(istration Y 8' #ethod I#pro%ed 8' #ethod A"thentication Y Ser%ices U5r R:i5trati4! G BW 2th493 User Re(istration is done and after that the "ser is ab*e to access the ATM app*ication in their #obi*e phones& Once the User Re(istration is Co#p*ete) User i** be pro%ided ith a Uni,"e PIN Sent to Their Respecti%e Mai* ID& Once it (ot %a*idated a User i** be ab*e to access o"r App*ication b$ enterin( the Userna#e and Passord Chosen at the ti#e of Re(istration& Then o"r app*ication i** pro%ide "sers its ser%ices& Then if the "ser i** (o ith ATM ser%ices) "ser is as!ed to pro%ide the PIN di(it& At this ti#e) the 8' #ethod co#es in to p*a$& The 8' #ethod partitions a set of ten di(its into to rando# ha*%es) of hich one is se*ected accordin( to the "ser?s !e$ entr$ in each ro"nd& If the se*ected ha*%es ere #e#oriAed or ritten on a paper for #) consec"ti%e ro"nds and reca**ed to deri%e their Gro"pin( Patterns) the sho"*der s"rfer co"*d identif$ a sin(*e di(it of the PIN& I2pr4"9 BW 2th493 In this Method e i#p*e#ent a ne Strate($ that i** co#p*ete*$ ne(*ect Sho"*der S"rfin( e%en a 'e** Trained Percept"a* Gro"per co"*d not Crac! the PIN Di(it Entered b$ the User in a Con%entiona* 'a$& Jet P denote a set of fo"r co*ors andCor patterns c"sto#iAab*e& Jet P 41 Z [b*ac!) b*"e) hite) $e**o\ or P Z [b*ac!) hite) dotted) dia(ona* stripes\) for a co*or b*ind person& Ro"(h*$ spea!in() the i#pro%ed #ethod r"ns as fo**os> The s$ste# disp*a$s a set of ten di(its) A Z [-) UUU) 2\) on the re("*ar n"#eric !e$pad ith to sp*it co*ors) chosen fro# P) in each n"#eric !e$@ and the fo"r co*or !e$s be*o& A co*or is chosen at rando# fro# P and fi**s fi%e rando# sp*its of distinct !e$s@ each sp*it co"*d be either "pper or *oer one& The re#ainin( co*ors fi** fi%e sp*its) respecti%e*$) in the sa#e a$& The "ser attends to the PIN di(it and enters either of its co*or thro"(h the co*or !e$& The "ser and the s$ste# repeat this proced"re for # ro"nds that the PIN di(it is identified b$ intersection) and "nti* a** the PIN di(its are identified& A<th!ti8ati4! G Sr"i853 Once the User Entered Pattern is #anip"*ated and a PIN is Identified) It i** be chec!ed ith the Joca* Database pro%ided b$ Android OS "sin( STJ Jite& This Process is to pre%ent "nanted Ser%er end process hand*in( p*a$f"* re,"ests& A One 'a$ 4ash is (enerated for the Ba*idated PIN and is sent to Ser%er in p"b*ic channe* so that an acti%e attac!er can not e+tract the PIN b$ #onitorin( the channe*& Once (ot A"thenticated b$ Ser%er a T"ic! Response to the Mobi*e App i** redirect the "ser to the Ser%ices& In ATM Ser%ices Cash 'ithdraa*) Deposit and ;"nd Transfer can be done sec"re*$ "sin( the concept of Birt"a* Mone$ hich is a*read$ e#p*o$ed b$ #an$ other App*ications S"ccessf"**$ in the 'eb& This red"ces the o%erhead co#p*e+ities in the ser%er and i** Pro%ide the User an ease of access to the 8an!in( Ser%ices& CHAPTER % 42 CODING AND TESTING %.) CODING Once the desi(n aspect of the s$ste# is fina*iAes the s$ste# enters into the codin( and testin( phase& The codin( phase brin(s the act"a* s$ste# into action b$ con%ertin( the desi(n of the s$ste# into the code in a (i%en pro(ra##in( *an("a(e& Therefore) a (ood codin( st$*e has to be ta!en hene%er chan(es are re,"ired it easi*$ screed into the s$ste#& %.' CODING STANDARDS Codin( standards are ("ide*ines to pro(ra##in( that foc"ses on the ph$sica* str"ct"re and appearance of the pro(ra#& The$ #a!e the code easier to read) "nderstand and #aintain& This phase of the s$ste# act"a**$ i#p*e#ents the b*"eprint de%e*oped d"rin( the desi(n phase& The codin( specification sho"*d be in s"ch a a$ that an$ pro(ra##er #"st be ab*e to "nderstand the code and can brin( abo"t chan(es hene%er fe*t necessar$& So#e of the standard needed to achie%e the abo%e:#entioned objecti%es are as fo**os> Pro(ra# sho"*d be si#p*e) c*ear and eas$ to "nderstand& Na#in( con%entions Ba*"e con%entions Script and co##ent proced"re Messa(e bo+ for#at E+ception and error hand*in( 43 %.'.) NAMING CONVENTIONS Na#in( con%entions of c*asses) data #e#ber) #e#ber f"nctions) proced"res etc&) sho"*d be 5;B$958ripti"& One sho"*d e%en (et the #eanin( and scope of the %ariab*e b$ its na#e& The con%entions are adopted for a5y <!9r5ta!9i!: of the intended #essa(e b$ the "ser& So it is c"sto#ar$ to fo**o the con%entions& These con%entions are as fo**os> C;a55 !a25 C*ass na#es are prob*e# do#ain e,"i%a*ence and be(in ith capita* *etter and ha%e #i+ed cases& M27r F<!8ti4! a!9 Data M27r !a2 Me#ber f"nction and data #e#ber na#e be(ins ith a *oercase *etter ith each s"bse,"ent *etters of the ne ords in "ppercase and the rest of *etters in *oercase& %.'.' VALUE CONVENTIONS Ba*"e con%entions ens"re %a*"es for %ariab*e at an$ point of ti#e& This in%o*%es the fo**oin(> Proper defa"*t %a*"es for the %ariab*es& Proper %a*idation of %a*"es in the fie*d& Proper doc"#entation of f*a( %a*"es& %.'./ SCRIPT WRITING AND COMMENTING STANDARD 44 Script ritin( is an art in hich indentation is "t#ost i#portant& Conditiona* and *oopin( state#ents are to be proper*$ a*i(ned to faci*itate eas$ "nderstandin(& Co##ents are inc*"ded to #ini#iAe the n"#ber of s"rprises that co"*d occ"r hen (oin( thro"(h the code& %.'.* MESSAGE BO6 FORMAT 'hen so#ethin( has to be pro#pted to the "ser) he #"st be ab*e to "nderstand it proper*$& To achie%e this) a specific for#at has been adopted in disp*a$in( #essa(es to the "ser& The$ are as fo**os> D N User has perfor#ed i**e(a* operation& V N Infor#ation to the "ser& %./ TEST PROCEDURE S#STEM TESTING Testin( is perfor#ed to identif$ errors& It is "sed for ,"a*it$ ass"rance& Testin( is an inte(ra* part of the entire de%e*op#ent and #aintenance process& The (oa* of the testin( d"rin( phase is to %erif$ that the specification has been acc"rate*$ and co#p*ete*$ incorporated into the desi(n) as e** as to ens"re the correctness of the desi(n itse*f& ;or e+a#p*e the desi(n #"st not ha%e an$ *o(ic fa"*ts in the desi(n is detected before codin( co##ences) otherise the cost of fi+in( the fa"*ts i** be considerab*$ hi(her as ref*ected& Detection of desi(n fa"*ts can be achie%ed b$ #eans of inspection as e** as a*!thro"(h& Testin( is one of the i#portant steps in the softare de%e*op#ent phase& Testin( chec!s for the errors) as a ho*e of the project testin( in%o*%es the fo**oin( test cases> Static ana*$sis is "sed to in%esti(ate the str"ct"ra* properties of the So"rce code& 45 D$na#ic testin( is "sed to in%esti(ate the beha%ior of the so"rce code b$ e+ec"tin( the pro(ra# on the test data& %.* TEST DATA AND OUTPUT %.*.) UNIT TESTING Unit testin( is cond"cted to %erif$ the f"nctiona* perfor#ance of each #od"*ar co#ponent of the softare& Unit testin( foc"ses on the s#a**est "nit of the softare desi(n <i&e&=) the #od"*e& The hite:bo+ testin( techni,"es ere hea%i*$ e#p*o$ed for "nit testin(& %.*.' FUNCTIONAL TESTS ;"nctiona* test cases in%o*%ed e+ercisin( the code ith no#ina* inp"t %a*"es for hich the e+pected res"*ts are !non) as e** as bo"ndar$ %a*"es and specia* %a*"es) s"ch as *o(ica**$ re*ated inp"ts) fi*es of identica* e*e#ents) and e#pt$ fi*es& Three t$pes of tests in ;"nctiona* test> Perfor#ance Test Stress Test Str"ct"re Test %.*./ PERFORMANCE TEST It deter#ines the a#o"nt of e+ec"tion ti#e spent in %ario"s parts of the "nit) pro(ra# thro"(hp"t) and response ti#e and de%ice "ti*iAation b$ the pro(ra# "nit& 46 %.*.* STRESS TEST Stress Test is those test desi(ned to intentiona**$ brea! the "nit& A Great dea* can be *earned abo"t the stren(th and *i#itations of a pro(ra# b$ e+a#inin( the #anner in hich a pro(ra##er in hich a pro(ra# "nit brea!s& %.*.( STRUCTURED TEST Str"ct"re Tests are concerned ith e+ercisin( the interna* *o(ic of a pro(ra# and tra%ersin( partic"*ar e+ec"tion paths& The a$ in hich 'hite:8o+ test strate($ as e#p*o$ed to ens"re that the test cases co"*d G"arantee that a** independent paths ithin a #od"*e ha%e been ha%e been e+ercised at *east once& E+ercise a** *o(ica* decisions on their tr"e or fa*se sides& E+ec"te a** *oops at their bo"ndaries and ithin their operationa* bo"nds& E+ercise interna* data str"ct"res to ass"re their %a*idit$& Chec!in( attrib"tes for their correctness& 4and*in( end of fi*e condition) ICO errors) b"ffer prob*e#s and te+t"a* errors in o"tp"t infor#ation %.*.% INTEGRATION TESTING Inte(ration testin( is a s$ste#atic techni,"e for constr"ction the pro(ra# str"ct"re hi*e at the sa#e ti#e cond"ctin( tests to "nco%er errors associated ith interfacin(& i&e&) inte(ration testin( is the co#p*ete testin( of the set of #od"*es hich #a!es "p the prod"ct& The 47 objecti%e is to ta!e "ntested #od"*es and b"i*d a pro(ra# str"ct"re tester sho"*d identif$ critica* #od"*es& Critica* #od"*es sho"*d be tested as ear*$ as possib*e& One approach is to ait "nti* a** the "nits ha%e passed testin() and then co#bine the# and then tested& This approach is e%o*%ed fro# "nstr"ct"red testin( of s#a** pro(ra#s& Another strate($ is to constr"ct the prod"ct in incre#ents of tested "nits& A s#a** set of #od"*es are inte(rated to(ether and tested) to hich another #od"*e is added and tested in co#bination& And so on& The ad%anta(es of this approach are that) interface dispenses can be easi*$ fo"nd and corrected& The #ajor error that as faced d"rin( the project is *in!in( error& 'hen a** the #od"*es are co#bined the *in! is not set proper*$ ith a** s"pport fi*es& Then e chec!ed o"t for interconnection and the *in!s& Errors are *oca*iAed to the ne #od"*e and its interco##"nications& The prod"ct de%e*op#ent can be sta(ed) and #od"*es inte(rated in as the$ co#p*ete "nit testin(& Testin( is co#p*eted hen the *ast #od"*e is inte(rated and tested& %.( TESTING TECHNI0UES H TESTING STRATERGIES %.(.) TESTING Testin( is a process of e+ec"tin( a pro(ra# ith the intent of findin( an error& A (ood test case is one that has a hi(h probabi*it$ of findin( an as:$et N"ndisco%ered error& A s"ccessf"* test is one that "nco%ers an as:$et: "ndisco%ered error& S$ste# testin( is the sta(e of i#p*e#entation) hich is ai#ed at ens"rin( that the s$ste# or!s acc"rate*$ and efficient*$ as e+pected before *i%e operation co##ences& It %erifies that the ho*e set of pro(ra#s han( to(ether& S$ste# testin( re,"ires a test consists of se%era* !e$ acti%ities and steps for r"n pro(ra#) strin() s$ste# and is i#portant in adoptin( a s"ccessf"* ne s$ste#& This is the *ast chance to detect and correct errors before the s$ste# is insta**ed for "ser acceptance testin(& 48 The softare testin( process co##ences once the pro(ra# is created and the doc"#entation and re*ated data str"ct"res are desi(ned& Softare testin( is essentia* for correctin( errors& Otherise the pro(ra# or the project is not said to be co#p*ete& Softare testin( is the critica* e*e#ent of softare ,"a*it$ ass"rance and represents the "*ti#ate the re%ie of specification desi(n and codin(& Testin( is the process of e+ec"tin( the pro(ra# ith the intent of findin( the error& A (ood test case desi(n is one that as a probabi*it$ of findin( an $et "ndisco%ered error& A s"ccessf"* test is one that "nco%ers an $et "ndisco%ered error& An$ en(ineerin( prod"ct can be tested in one of the to a$s> %.(.).) WHITE BO6 TESTING This testin( is a*so ca**ed as G*ass bo+ testin(& In this testin() b$ !noin( the specific f"nctions that a prod"ct has been desi(n to perfor# test can be cond"cted that de#onstrate each f"nction is f"**$ operationa* at the sa#e ti#e searchin( for errors in each f"nction& It is a test case desi(n #ethod that "ses the contro* str"ct"re of the proced"ra* desi(n to deri%e test cases& 8asis path testin( is a hite bo+ testin(& 8asis path testin(> ;*o (raph notation C$c*o#etric co#p*e+it$ Deri%in( test cases Graph #atrices Contro* %.(.).' BLACK BO6 TESTING 49 In this testin( b$ !noin( the interna* operation of a prod"ct) test can be cond"cted to ens"re that a** (ears #eshP) that is the interna* operation perfor#s accordin( to specification and a** interna* co#ponents ha%e been ade,"ate*$ e+ercised& It f"nda#enta**$ foc"ses on the f"nctiona* re,"ire#ents of the softare& The steps in%o*%ed in b*ac! bo+ test case desi(n are> Graph based testin( #ethods E,"i%a*ence partitionin( 8o"ndar$ %a*"e ana*$sis Co#parison testin( %.(.' SOFTWARE TESTING STRATEGIES3 A softare testin( strate($ pro%ides a road #ap for the softare de%e*oper& Testin( is a set acti%it$ that can be p*anned in ad%ance and cond"cted s$ste#atica**$& ;or this reason a te#p*ate for softare testin( a set of steps into hich e can p*ace specific test case desi(n #ethods sho"*d be strate($ sho"*d ha%e the fo**oin( characteristics> Testin( be(ins at the #od"*e *e%e* and or!s o"tardP toard the inte(ration of the entire co#p"ter based s$ste#& Different testin( techni,"es are appropriate at different points in ti#e& The de%e*oper of the softare and an independent test (ro"p cond"cts testin(& 50 Testin( and Deb"((in( are different acti%ities b"t deb"((in( #"st be acco##odated in an$ testin( strate($& %.(.'.) INTEGRATION TESTING3 Inte(ration testin( is a s$ste#atic techni,"e for constr"ctin( the pro(ra# str"ct"re hi*e at the sa#e ti#e cond"ctin( tests to "nco%er errors associated ith& Indi%id"a* #od"*es) hich are hi(h*$ prone to interface errors) sho"*d not be ass"#ed to or! instant*$ hen e p"t the# to(ether& The prob*e# of co"rse) is p"ttin( the# to(etherP: interfacin(& There #a$ be the chances of data *ost across on another?s s"b f"nctions) hen co#bined #a$ not prod"ce the desired #ajor f"nction@ indi%id"a**$ acceptab*e i#pression #a$ be #a(nified to "nacceptab*e *e%e*s@ (*oba* data str"ct"res can present prob*e#s& %.(.'.' PROGRAM TESTING3 The *o(ica* and s$nta+ errors ha%e been pointed o"t b$ pro(ra# testin(& A s$nta+ error is an error in a pro(ra# state#ent that in %io*ates one or #ore r"*es of the *an("a(e in hich it is ritten& An i#proper*$ defined fie*d di#ension or o#itted !e$ords are co##on s$nta+ error& These errors are shon thro"(h error #essa(es (enerated b$ the co#p"ter& A *o(ic error on the other hand dea*s ith the incorrect data fie*ds) o"t:off:ran(e ite#s and in%a*id co#binations& Since the co#pi*er s i** not ded"ct *o(ica* error) the pro(ra##er #"st e+a#ine the o"tp"t& Condition testin( e+ercises the *o(ica* conditions contained in a #od"*e& The possib*e t$pes of e*e#ents in a condition inc*"de a 8oo*ean operator) 8oo*ean %ariab*e) a pair of 8oo*ean parentheses A re*ationa* operator or on arith#etic e+pression& Condition testin( #ethod foc"ses 51 on testin( each condition in the pro(ra# the p"rpose of condition test is to ded"ct not on*$ errors in the condition of a pro(ra# b"t a*so other a errors in the pro(ra#& %.(.'./ SECURIT# TESTING3 Sec"rit$ testin( atte#pts to %erif$ the protection #echanis#s b"i*t in to a s$ste# e**) in fact) protect it fro# i#proper penetration& The s$ste# sec"rit$ #"st be tested for in%"*nerabi*it$ fro# fronta* attac! #"st a*so be tested for in%"*nerabi*it$ fro# rear attac!& D"rin( sec"rit$) the tester p*aces the ro*e of indi%id"a* ho desires to penetrate s$ste#& %.(.'.* VALIDATION TESTING At the c"*#ination of inte(ration testin() softare is co#p*ete*$ asse#b*ed as a pac!a(e& Interfacin( errors ha%e been "nco%ered and corrected and a fina* series of softare test: %a*idation testin( be(ins& Ba*idation testin( can be defined in #an$ a$s) b"t a si#p*e definition is that %a*idation s"cceeds hen the softare f"nctions in #anner that is reasonab*$ e+pected b$ the c"sto#er& Softare %a*idation is achie%ed thro"(h a series of b*ac! bo+ tests that de#onstrate confor#it$ ith re,"ire#ent& After %a*idation test has been cond"cted) one of to conditions e+ists& H The f"nction or perfor#ance characteristics confir# to specifications and are accepted& H A %a*idation fro# specification is "nco%ered and a deficienc$ created& De%iation or errors disco%ered at this step in this project is corrected prior to co#p*etion of the project ith the he*p of the "ser b$ ne(otiatin( to estab*ish a #ethod for reso*%in( deficiencies& Th"s the proposed s$ste# "nder consideration has been tested b$ "sin( %a*idation 52 testin( and fo"nd to be or!in( satisfactori*$& Tho"(h there ere deficiencies in the s$ste# the$ ere not catastrophic& %.(.'.( USER ACCEPTANCE TESTING User acceptance of the s$ste# is !e$ factor for the s"ccess of an$ s$ste#& The s$ste# "nder consideration is tested for "ser acceptance b$ constant*$ !eepin( in to"ch ith prospecti%e s$ste# and "ser at the ti#e of de%e*opin( and #a!in( chan(es hene%er re,"ired& This is done in re(ardin( to the fo**oin( points& Inp"t screen desi(n& O"tp"t screen desi(n& S4<r8 C49 53 S8r!5h4t53 54 55 56 57 58 59 60 REFERENCES L3M D& 8ai) '& G") S& Che**appan) D& 'an() D& D"an) and 8& Ma) PAS> Predicate:based a"thentication ser%ices a(ainst poerf"* passi%e ad%ersaries)P in Proc& IEEE Ann"& Co#p"t& Sec"rit$ App*& Conf&) Dec& 5--1) pp& 977N995& L5M D& 'einsha**) Co(niti%e a"thentication sche#es safe a(ainst sp$ are)P in Proc& IEEE S$#p& Sec"rit$ Pri%ac$) Ma$ 5--.) pp& 52KN7--& L7M P& D"nph$) A& P& 4einer) and N& Aso!an) A c*oser *oo! at reco(nition based (raphica* passords on #obi*e de%ices)P in Proc& ACM S$#p& Usab*e Pri%ac$ Sec"rit$) 5-3-) pp& 3N35& L9M '& S& Geis*er and 8& 6& S"per) Percept"a* or(aniAation of to di#ensiona* patterns)P Ps$cho*& Re%&) %o*& 3-/) no& 9) pp& .//N/-1) 5---& LKM T& ;& 8rad$) T& Eon!*e) and G& A& A*%areA) A re%ie of %is"a* #e#or$ capacit$> 8e$ond indi%id"a* ite#s and toard str"ct"red representations)P6& Bision) %o*& 33) no& K) pp& 3N79) 5-33 61