Εμφάνιση απλής εγγραφής

Ηλεκτρονικές και κινητές πληρωμές με χρήση σάρωσης QR Code

dc.contributor.advisorΑλέπης, Ευθύμιος
dc.contributor.authorΚαρμένης, Ανδρέας
dc.date.accessioned2018-02-15T12:21:21Z
dc.date.available2018-02-15T12:21:21Z
dc.date.issued2018-12
dc.identifier.urihttps://dione.lib.unipi.gr/xmlui/handle/unipi/10940
dc.description.abstractΤο QR Code Services App, είναι μια εφαρμογή Android η οποία αναλαμβάνει να διεκπαιρεώνει on-line, άμεσες συναλλαγές. Η εφαρμογή, αποτελείται από δύο μέρη. Το ένα μέρος αφορά την android εφαρμογή η οποία εγκαθίσταται στη συσκευή του χρήστη και το δεύτερο μέρος, το λογισμικό που προσομειώνει την πλευρά της τράπεζας. Το τελευταίο, έχει αναπτυχθεί με Java και Spring boot framework. Η τράπεζα, ως είθισται, μετά από ένα αίτημα οικονομικής συναλλαγής, προβαίνει στους απαραίτητους ελέγχους και απαντά με μηνύματα - responses, τα οποία συμπεριλαμβάνουν ως περιεχόμενο την πληροφορία για μια επιτυχημένη είτε μια αποτυχημένη συναλλαγή. Στην περίπτωση της αποτυχημένης συναλλαγής, το response, περιέχει κωδικούς και μηνύματα σφαλμάτων τα οποία περιγράφουν τον λόγο της αποτυχίας. Στις επιτυχημένες απάντησεις-responses, δεν υπάρχουν κωδικοί σφαλμάτων, αλλά υπάρχουν κωδικοί για την ένδειξη μιας πετυχημένης συναλλαγής που περιέχει περισσότερες πληροφορίες σχετικές με την συναλλαγή όπως είναι ο κωδικός ή το αναγνωριστικό της πληρωμής. Από την άλλη, το πρώτο μέρος της εφαρμογής (Android εφαρμογή), είναι μια native εφαρμογή, και ο σκοπός ύπαρξής της είναι η απλούστευση της διαδικασίας της αγοράς ενός προϊόντος συγκριτικά με τις υφιστάμενες παραδοσιακές διαδικασίες και τους τρόπους πληρωμής που ήδη γνωρίζουμε. Ο χρήστης της εφαρμογής, απλά σαρώνει ένα QR Code το οποίο φέρει πάνω του κάποιο προϊόν, με ή χωρίς υλική υπόσταση. Για παράδειγμα, ένα τέτοιο προϊόν μπορεί να είναι ένα εμφιαλωμένο μπουκάλι νερό (υλική υπόσταση), είτε η αγορά ενός προϊόντος στο διαδίκτυο (αγορά αεροπορικού εισιτηρίου - άϋλη υπόσταση) και η εφαρμογή αποκωδικοποιεί το QR Code, εξάγει τις πληροφορίες που ενδιαφέρουν, για παράδειγμα πληροφορίες για τον επιτηδευματία, όπως τα καταστήματα Walmart αλλά και του προϊόντος, για παράδειγμα το όνομα του προϊόντος και η τιμή του. Στη συνέχεια, επεξεργάζεται τα στοιχεία αυτά και ένας συνδυασμός από προεπιλεγμένες πληροφορίες εμφανίζονται στην οθόνη του κινητού του χρήστη. Ο ίδιος, έχει πάντα τον έλεγχο για μια συνέχεια της επικείμενης αγοράς ή ακύρωσής της. Αν επιλεγεί η συνέχεια, ο χρήστης οδηγείται στην επόμενη οθόνη και καλείται να επιλέξει μια από τις χρεωστικές/πιστωτικές κάρτες για παράδειγμα (VISA, MASTER CARD, DISCOVER) ή κάποιο IBAN λογαριασμό του, ανάλογα με ποιές κάρτες και λογαριασμούς έχει εκ των πρωτέρων καταχωρήσει. Πρέπει να τονιστεί ότι η εφαρμογή, για λόγους παρουσίασης και απλούστευσης, θεωρεί ότι ο χρήστης έχει εκ των πρωτέρων δηλώσει μια σειρά από δικές του χρεωστικές/πιστωτικές κάρτες και λογαριασμό(ους) του. Στην παρούσα υλοποίηση, οι πληροφοριες αυτές είναι δηλωμένες σε αρχείο τύπου xml, αλλά σε μια εμπορεύσιμη έκδοση της εφαρμογής, εννοείται πως θα πρέπει η εφαρμογή να επιτρέπει στον χρήστη, να προσθέτει, να αφαιρεί ή να τροποποιεί αυτά τα στοιχεία μέσα από ξεχωριστές οθόνες. Αφου επιλεγεί και η κάρτα ή ο λογαριασμός, από που θα αφαιρεθεί το χρηματικό ποσό, τότε ο χρήστης προτρέπεται να εισάγει και το pin. Το pin είναι ένα τετραψήφιο αριθμητικό δεδομένο το οποίο υπόκειται σε διάφορους ελέγχους. Σε περίπτωση διαφορετικής εισαγωγής, η εφαρμογή αναρτά σχετικά μηνύματα λάθους σε κόκκινες αποχρώσεις και εστιάζει (focuses) στο πεδίο pin έως ότου ο χρήστης δώσει το σωστό συνδυασμό. Αν και στα πλαίσια της υλοποιημένης εφαρμογής, επειδή πρόκειται για μια demo έκδοσή της, δεν θα αποτελούσε πρόβλημα να επιτρέπονταν οποιοιδήποτε συνδυασμοί, ωστόσο, για να είναι περισσότερο ρεαλιστικό, οι κωδικοί, περιορίζονται σε συγκεκριμένα pins, για κάθε κάρτα ή λογαριασμό. Στη συνέχεια, τα pin κωδικοποιούνται και ενσωματώνεται στο request. Aυτή η πληροφορία αποκρύπτεται και αργότερα αποθηκεύεται. Μπορεί μόνο να προβληθεί ως μέρος της καταγγεγραμμένης ιστορικής πληροφορίας (log) κατ’ απαίτηση του χρήστη σε μια ειδική οθόνη, την server logs (εικ. 19). Το επόμενο σταδιο, είναι οι έλεγχοι της εφαρμογής για την διαπίστωση την ύπαρξης ή όχι του ασύρματου ή mobile δικτύου. Σε περίπτωση θετικής έκβασης, δηλαδή αν μπορέσει να αποκτήσει πρόσβαση στο δίκτυο και κατόπιν απαιτούμενης έγκρισης (άδειας) του χρήστη, στέλνει ένα request στην τράπεζα (στο δεύτερο μέρος του λογισμικού της εφαρμογής) . Αν εντός δεκαπέντε δευτερολέπτων, ως χρονικό ορίο, δεν πάρει μια απάντηση τότε, η εφαρμογή απαντά με ένα time out response και αντίστοιχο μήνυμα θα προβληθεί στην οθόνη του χρήστη προκειμένου να τον ενημερώνει για το σχετικό γεγονός. Το λογισμικό το οποίο προσομειώνει την τράπεζα, μπορεί να είναι εγκατεστημένο τοπικά ή απομακρυσμένα. Αυτό ρυθμίζεται απο μια αντίστοιχη οθόνη του χρήστη που διαθέτει η εφαρμογή. Στη θετική έκβαση της παραπάνω απάντησης, η εφαρμογή στέλνει το request στο url το οποίο καθορίζεται από την εικ.16, 17 και το λογισμικό του δεύτερου μερους της εφαρμογής, αναλαμβάνει τους διάφορους ελέγχους εγκυρότητας των μεταφερόμενων στοιχείων και απαντά αναλόγως. Σε κάθε περίπτωση, είτε αποτυχίας είτε επιτυχίας έκβασης της συναλλαγής, μια αφιερωμένη οθόνη της εφαρμογής για αυτό το λόγο, παρουσιάζεται στον χρήστη ενημερώνοντάς τον για την κατάσταση της έκβασης. Επίσης, το κάθε αποτέλεσμα ξεχωριστά, καταγράφεται σαν log σε μια απομακρυσμένη NO-SQL βάση δεδομένων (firebase) της Google. Τέλος, υπάρχει μια αντίστοιχη ξεχωριστή σελίδα της εφαρμογής, η οποία σε πραγματικό χρόνο, ανακτά σε μια λίστα, επεξεργάζεται και παρουσιάζει ανά μέρα ομαδοποιημένα και ταξινομημένα από το πιο πρόσφατο σε μορφή πτυσόμενης λίστας, συμπυκνωμένη πληροφορία σχετικά με συνολικά αριθμητικά πόσα, τα οποία δείχνουν των αριθμό των επιτυχημένων και αποτυχημένων συναλλαγών ανα ημέρα.el
dc.format.extent66el
dc.language.isoelel
dc.publisherΠανεπιστήμιο Πειραιώςel
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Διεθνές*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/*
dc.titleΗλεκτρονικές και κινητές πληρωμές με χρήση σάρωσης QR Codeel
dc.title.alternativeElectronic and mobile payments using QR Code scanel
dc.typeMaster Thesisel
dc.contributor.departmentΣχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Πληροφορικήςel
dc.description.abstractENQR Code Services App is an Android application that undertakes to execute on-line direct transactions. The application consists of two parts. One part concerns the android application that is installed on the user's device and the second part of the software embody the side of the bank. The latter, developed with Java and Spring boot framework. The bank, as usual, after the necessary checks, responds with messages, which include information about a successful or a failed transaction as the content. In the case of a failed transaction, the response contains error codes and logs that describe the reason of the failure. At the successful responses, there are no error codes but there are code indications of a successful transaction containing more transaction-related information such as the payment code or ID. On the other hand, the first part of the app (Android app) is a native application, and its purpose is to simplify the purchase process of a product compared to the existing traditional processes and payment methods we already know.The user of the application simply scans a QR Code on a product, whether or not it has a physical nature, for example, such a product may be a bottled water (physical material) or the purchase of a product on the Internet (the air ticket market - intangible material) and the application decodes the QR Code, extracts the information of interest, for example, information about the trader, such as Walmart and the product, for example the name of the product and its price. It then processes these data and a combination of pre-agreed information is displayed on the mobile user screen. The user, has always under his control the continuation of the upcoming market or its cancellation. If selected to proceed, the user is taken to the next screen and has to choose one of the debit/credit cards for example (VISA, MASTER CARD, DISCOVER) or an IBAN account, depending on which cards and accounts he has previously registered. It should be emphasized that the application, for simplicity reasons of presentation, considers that the user has previously stated a series of his own debit / credit cards and account (s). In the present embodiment, this information is declared in an xml file, but in a commercial version of the application, the application should allow the user to add, remove, or modify these elements through separate and dedicated screens. After selecting the card or account from which the money will be deducted, the user is also prompted to enter the pin. The pin is a four-digit numeric data and subjects to various checks. Only numeric digits are allowed and the pin’s length, has a restriction of four digits, otherwise the application posts relative error messages in red shades and focuses in the pin field until the user gives the correct combination. Although the implemented application is a demo version and not a market one, it would not be a problem to allow any combination, however, in order to give more realism, the pins are limited to specific for each card or account. The pin is then encoded and embedded in the request. This information is hidden from the user in the forthcoming sequence of screens and finally stored. It can only be viewed as part of the logged information upon request of the user on a special screen log. The next step is the check which the application does to determine whether or not any wireless or a mobile network exists. In case of a positive outcome, namely if it can acquire any network, after the required authorization (license) of the user, it sends a request to the bank (the second part of the application software). If within fefteen seconds any timeout occurs, (time out is considered the maximum time which the application waits for the response from the server), then the application responds with a time out response and a relative corresponding message will be displayed on the user screen as an Android toast message to inform for the event. The software that simulates the bank can be installed locally or remotely as well. That is a URL which decides the location and it is set by a special corresponding screen of the app (icon. 16, 17). In the positive outcome of the above response, the application sends the request to the url and the software of the second part of the application takes over the various validity checks of the transferred data and responds accordingly. In any case, either failure or success of the transaction outcome, a dedicated application screen for this reason, is presented to the user by informing him of the outcome status. Also, each result individually, is logged as a record in a Google's remote NO-SQL firebase. Finally, there is a corresponding separate page of the application, which in real time, recovers historical transactions in a list, processes and presents each day grouped and sorted from the most recent event in a fold-out list, solid information about numerical quantities, which show the the totals and the number of successful and failed transactions per day.el
dc.contributor.masterΠροηγμένα Συστήματα Πληροφορικήςel
dc.subject.keywordQR Codeel
dc.subject.keywordJavael
dc.subject.keywordAndroidel
dc.subject.keywordSpringel
dc.date.defense2018-02-16


Αρχεία σε αυτό το τεκμήριο

Thumbnail

Αυτό το τεκμήριο εμφανίζεται στις ακόλουθες συλλογές

Εμφάνιση απλής εγγραφής

Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές
Εκτός από όπου διευκρινίζεται διαφορετικά, το τεκμήριο διανέμεται με την ακόλουθη άδεια:
Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές

Βιβλιοθήκη Πανεπιστημίου Πειραιώς
Επικοινωνήστε μαζί μας
Στείλτε μας τα σχόλιά σας
Created by ELiDOC
Η δημιουργία κι ο εμπλουτισμός του Ιδρυματικού Αποθετηρίου "Διώνη", έγιναν στο πλαίσιο του Έργου «Υπηρεσία Ιδρυματικού Αποθετηρίου και Ψηφιακής Βιβλιοθήκης» της πράξης «Ψηφιακές υπηρεσίες ανοιχτής πρόσβασης της βιβλιοθήκης του Πανεπιστημίου Πειραιώς»