You are on page 1of 34

Introduction

Quick Response (QR) codes are versatile. A piece of long multilingual text, a linked URL, an automated SMS message, a business card or just about any information can be embedded into the two-dimensional barcode. Coupled with moderate equipped mobile devices, QR Codes can connect the users to the information quickly and easily. In this paper, we explore how QR codes can be used in education. The low technical barrier of creating and reading QR codes allows innovative educators to incorporate them into their educational endeavours. The operations to retrieve or store QR codes are incredibly simple and quick, and with mobile devices, make them the ideal educational tools for teaching and learning.

Now mobile phones can implement many new kinds of applications such as taking photos, and movie shooting by using embedded camera devices. So mobile phones with embedded camera devices can be used to recognize the barcode.

This project proposes the use of QR codes more innovatively by deploying various modules for various purposes. It also provides a module for encryption in order to make QR code more secure and safe.

Literature Review
What is QR code?

Fig: Quick Response Code

The QR (Quick Response) Code is a two-dimensional (2-D) matrix code that belongs to a larger set of machine-readable codes, all of which are often referred to as barcodes, regardless of whether they are made up of bars, squares or other-shaped elements. Compared with 1-D codes, 2-D codes can hold a larger amount of data in a smaller space, and compared with other 2-D codes, QR Code Essentials.

The QR Code can hold much more data still. In addition, an advanced error-correction method and other unique characteristics allow the QR Code to be read more reliably and at higher speeds than other codes. Like written language, barcodes are visual representations of information. Unlike language, however, which humans can read, barcodes are designed to be read and understood (decoded) by computers, using machine-vision systems consisting of optical laser scanners or cameras and barcode-interpreting software. The rules with which a barcode is constructed (its grammar) and the character set it uses (its alphabet) are called its symbology.

To barcode-reading software, both of these 1-D barcodes are identical. Changing the height of the bars does not change the information they contain.

Differences in the second, vertical dimension of the bars and spaceswhether they are taller or shorterdoes not matter; all that counts is how wide they are and what order they are placed in.

From 1-D to 2-D codes After the commercial introduction of 1-D barcodes in 1966, they quickly gained widespread acceptance. In time, however, demand grew for new types of codes that could hold more information and use more character types, yet occupy a smaller space. Attempts were consequently made to increase the amount of data contained in barcodes by increasing the number of bars or creating multiple-barcode layouts. These efforts, however, resulted in a larger barcode area, complicated reading requirements and increased printing costs. To solve these problems, two-dimensional (2-D) codes were developed, first as stacked barcodes, which repeat the same linear symbology vertically, and then as matrix codes, composed of small, symmetrical elements arranged in a square or rectangle.

Multiple-barcode

2-D stacked barcode

2-D matrix code

Because 2-D matrix codes contain information in both the horizontal and vertical direction, they met the need for high data density and small size, yet further improvements were still

to follow, including those introduced by the QR Code. The following table summarizes the features and characteristics of some typical 2-D codes. The following table summarizes the features and characteristic of some typical 2-D codes.

How the QR Code works

Unlike 1-D barcodes, the QR Code is a 2-D matrix code that conveys information not by the size and position of bars and spaces in a single (horizontal) dimension, but by the arrangement of its dark and light elements, called modules, in columns and rows, i.e. in both the horizontal and vertical directions. Each dark or light module of a QR Code symbola specific instance of a coderepresents a 0 or 1, thus making it machineintelligible.

The QR Code modules perform several functions: Some contain the actual data itself, while others are grouped into various function patterns that improve reading performance and allow symbol alignment, error correction and distortion compensation. The timing pattern lets the scanning device know the size of the symbol. There is also a required quiet zone, a fourmodulewide buffer area containing no data, to ensure that surrounding text or markings are not mistaken for QR Code data. Conventional 2-D matrix codes required a considerable amount of time to be spent searching a symbols code to determine its angle of orientation, position (x and y coordinates) and size. To address this problem, the QR Code was designed with special position-detection patterns located in three corners of each symbol. The patterns have a symmetrical scan-line ratio of 1:1:3:1:1, which allows them to be scanned from any direction within a full 360 degrees. In addition, the positional relationship of the patterns allows quick access to the relevant angle, position and size information contained in the codes periphery.

As a result, the QR Code does not require lengthy code searching, enabling reading speeds 20 times faster than those of conventional matrix codes. Also, searching the position detection patterns can be performed by the scanning hardware, further increasing overall speed by allowing image reading and data processing to be carried out simultaneously.

QR Code Symbol Versions


QR Codes can be generated in 40 different symbol versions, from 21 x 21 modules (version 1) to 177 x 177 modules (version 40).

Each higher symbol version has 4 additional modules per side (16 additional modules per symbol), and can contain a proportionally larger amount of data. The maximum amount of data that can be contained by a given symbol is determined by its version, type of characters and error-correction level.

Types of QR codes.

URL: These are the codes that redirect the user to a website. As soon the code is scanned, the phone browser will open and load the company website. Company can put URL QR codes on their promotional materials so that their customers who are looking for more information can land on their website. meCard: Containing contact details, these codes automatically save information in a users phone address book. This saves users from the hassle of entering the information manually and from making input mistakes. These codes are very useful in an event such as conventions, conferences, and seminars where there is a need to exchange business card.

vCard: A vCard QR code can store more data than meCard QR code, like a salutation, job title, mobile number, work details, address, zip code, and country. Such information is useful if a person is working on a global level and needs to share more information about to consumers.

Calendar Event: Usually found on invitation cards and movie or concert tickets, these codes have information regarding the event date, time, and location. They can also hold event descriptions. These codes also have an option to automatically save the event in the phones calendar.

Email: When scanned, email QR codes will have an email address to provide. Email QR codes can also open email composition window on a users phone, with the email address field already filled in. These codes can prompt users to send an email.

Phone Number: This code is used to encode a phone number so when a phone scans it, it will produce a number on its home screen. This encourages users to call the advertiser, rather than continue searching. This type of QR code is especially useful for pizza delivery and similar services.

SMS: This type of QR code prompts an SMS message from the users phone, automatically addressing and composing the text message. An SMS QR code is best used for subscription services.

GPS Map Coordinates: Information regarding the location of a particular place or an object is stored using latitude and longitude coordinates and can be displayed on a smartphone. This code can also provide directions.

Social Media: Use this code to get a person to like a Facebook page or retweet on Twitter. You can also use this code to share information on social networking websites. Plain Text: This code displays a text message to the codes scanner, and is useful for communicating short messages.

YouTube Video: Embedding a YouTube video in your QR code directs users to promotional or how-to videos about your company.

LinkedIn Share: Creating a QR Code for LinkedIn lets clients and customers find your profile easily on this popular business networking site.

FourSquare Venue: You can create a QR code to capitalize on the popularity for the FourSquare app, which entices customers to check in at your location and tell their friends.

System Study
QR Code Generator

As the inventor of the QR Code and owner of the QR Code trademark, DENSO Wave Incorporated has allowed the patents for the code to be freely available to the public. Consequently, many websites now feature online QR Code generators or downloadable code-generating software. Such code generators and software are not certified by the International Organization for Standardization (ISO), however, so there is no way of telling if they adhere to the relevant ISO Standard 18004, which is based on the DENSO Wave patent. As a result, the code symbols they create may not be readable by all devices or the reading quality may be reduced. (An easy test is to create the same code symbol with two or more online generators and compare the results. Differences in the arrangement of the modulessimilar to the differences in language translationwill be immediately apparent.) Of particular concern is the fact that non-ISO-compliant code generators do not determine the minimum printable size of a given QR Code symbol. If a symbol is printed at a size that is below the ISO-specified minimumwhich takes into account the amount of data contained in that symbol, the symbol version and the resolution of the printing devicereadability will be dramatically reduced.

Using QR Code-generating software that is not ISO compliant can be especially problematic if the QR Code is to be read by smart phones, whose quality may greatly vary. Also, the QR Code-reading software used by smart phones, like code generating software, is not necessarily based on ISO specifications.

Only ISO-compliant QR Code-generating software can ensure maximum symbol readability and specify the minimum printable size for a given symbol

To ensure that a QR Code will be successfully read by the highest percentage of devices, therefore, it is essential to use code-generating software offered only by a reputable manufacturer who can be trusted to comply with ISO specifications.

Reading QR Codes

High-speed reading:

Faster scanning and the ability to scan barcodes from a distance increase operator efficiency. Look for devices with advanced CCD scanning technology, which enables even high-density or poorly printed barcodes to be read at high speed and from a distance.

Ease of use:

Lightweight, ergonomic designs, featuring large display screens and easy-to-hold grips, reduce operator fatigue, a key factor in productivity.

Durability:

In the field, hand-held scanners and terminals are vulnerable to harsh environments and rough handling, including being bumped or dropped. Devices featuring rugged, drop-resistant construction and resistance to water and dust protect your equipment investment.

Long battery life:

Scanners are available with power-saving features that result in longer operating time, eliminating frequent, time-consuming battery changes.

Experience and reputation of the manufacturer:

Look for a manufacturer that has established itself as an industry leader and innovator, and whose products have stood the test of time.

Encryption
Encryption is the conversion of data into a form, called a ciphertext, that cannot be easily understood by unauthorized people. Decryption is the process of converting encrypted data back into its original form, so it can be understood. The use of encryption/decryption is as old as the art of communication. In wartime, a cipher, often incorrectly called a code, can be employed to keep the enemy from obtaining the contents of transmissions. (Technically, a code is a means of representing a signal without the intent of keeping it secret; examples are Morse code and ASCII.) Simple ciphers include the substitution of letters for numbers, the rotation of letters in the alphabet, and the "scrambling" of voice signals by inverting the sideband frequencies. More complex ciphers work according to sophisticated computer algorithms that rearrange the data bits in digital signals. In order to easily recover the contents of an encrypted signal, the correct decryption key is required. The key is an algorithm that undoes the work of the encryption algorithm. Alternatively, a computer can be used in an attempt to break the cipher. The more complex the encryption algorithm, the more difficult it becomes to eavesdrop on the communications without access to the key. Encryption/decryption is especially important in wireless communications. This is because wireless circuits are easier to tap than their hard-wired counterparts. Nevertheless, encryption/decryption is a good idea when carrying out any kind of sensitive transaction, such as a credit-card purchase online, or the discussion of a company secret between different departments in the organization. The stronger the cipher -- that is, the harder it is for unauthorized people to break it -- the better, in general. However, as the strength of encryption/decryption increases, so does the cost. In recent years, a controversy has arisen over so-called strong encryption. This refers to ciphers that are essentially unbreakable without the decryption keys. While most companies and their customers view it as a means of keeping secrets and minimizing fraud, some governments view strong encryption as a potential vehicle by which terrorists might evade authorities. These governments, including that of the United States, want to set up a keyescrow arrangement. This means everyone who uses a cipher would be required to provide the government with a copy of the key. Decryption keys would be stored in a supposedly

secure place, used only by authorities, and used only if backed up by a court order. Opponents of this scheme argue that criminals could hack into the key-escrow database and illegally obtain, steal, or alter the keys. Supporters claim that while this is a possibility, implementing the key escrow scheme would be better than doing nothing to prevent criminals from freely using encryption/decryption.

Encryption in QR codes
When we talk about Encrypted Code, we do not mean that the code itself (e.g. QR Code) is encrypted, but, instead, a part of the URL where the code is pointing is encrypted.

The Encrypted Codes feature can be used to hide or encrypt sensitive parts of the target URL of your code or to prevent users from manipulating parts of the URL, e.g. changing the values of parameters.

This can be of relevance in the following use cases:


Contests Games Voting Security applications Prevent crawling of sensitive data

Encrypted Codes are standard Dynamic Link Codes and therefore manageable, trackable and editable like all other System Codes.

The contact data is stored in a database and accessible by providing the contact ID. Without encryption, the URL for recalling this contact data would probably look something like this:

http://www.somesite.com/contactpage.php?contactid=12345

The problem with that approach is that someone could easily try contact IDs other than the given ID of 12345 and collect the contact information that is associated with those other IDs. Thats certainly something the BeeTagg Contact application has to prevent, and it can do so by using Encrypted Codes. The visible URL after encryption looks similar to this:

http://www.xyz.com/en/m/contact/data/-1/-1/0v0fZINM__Wc-WWFf7h93A

The last part of the URL (bold) is the ID of the contact, but in an encrypted form. Therefore, plugging in random IDs to the URL will no longer lead you to a customers contact information. Sure, you could encrypt the sensitive part of the URL yourself, but it means exactly that: you need to do it yourself.

Encryption Algorithms

XOR

XOR is not a real encryption algorithm. It only obfuscates the text, but in most cases XOR will be sufficient. The advantage of XOR is that the length of the encrypted text has the same length as the non-encrypted text and decryption is easier.

Rijandael

Rijandael is a standardized encryption algorithm. It is very secure, but implementation is not as easy as with XOR and the length of the encrypted text is longer than the non-encrypted text. Keep that in mind, because URLs have a limited length (a URL shouldnt exceed 1024 characters, because some browsers cannot handle them otherwise).

In order for Encrypted Codes to work you need to 1. Provide a secret encryption key. Secret means that you should not tell anybody and you should not share it with others.

Example: ThI3**iS--an"EncRPtiOn::::KeY 2. Select one of the two encryption algorithms XOR or Rijandael 3. Define which part of the URL should be encrypted.

Requirement Analysis

Use Case Diagram & Class Diagram

Android :
Android is basically an operating system for smartphones. But we find now integrated into PDAs, touch pads or televisions, even cars (trip computer) or netbooks. The OS was created by the start-up of the same name, which is owned by Google since 2005 .

Specifications :

This operating system is based on version 2.6 of Linux, so it has a monolithic system kernel, what means that all system functions and drivers are grouped into one block of code. Architecture :

Android consists of five layers: -The Linux kernel 2.6-which includes useful drivers that allow for example WiFi or Bluetooth. -The library written in C and C + + that provide higher level functionality such as an HTML engine, or a database (SQLite). -A runtime environment for applications based on a virtual machine, made for inefficient machines such as telephones. The aim is to translate JAVA in machine language understood by Android. -A JAVA framework that allows applications running on the virtual machine to organize and cooperate.The user applications written in Java (Web browser, contact manager etc. ..)

Implementation User Interface Code

This is the user interface development of our code it consisists of two main packages one is for design framework of our project responsible for views and layout of application, and other contains main class and the codes which generates QR code and add Encryption to them.

Fig : Model Email Content

The Model package consists of the framework or the layout which interprets the way of contents of every type of data stored in QR code.The email models is responsible for email contents to be stored in QR code such as email address, subject and Email Message.

Fig : Model Mecard Content

This model takes care of the content to be stored from Me card in QR code It includes name address, PIN, Phone no. etc.

Fig : Model Phone Content

This Model is responsible for the phone contents such as phone number.

Fig : Model QR Content

This models tell the values to get form various types of data and how to set them in a QR code.

Fig : Model SMS Content

This model stores the contents of the sms such as phone number and the text message received via the number.

View Model Package

Fig : View Model Email

The view model packages refers to the design of the various tabs of the QR code generator. The view model email class define how data will be taken form actual design on the email tabs.

Fig : View Model Mecard

This class is responsible for the design on me card contents taken from Mecard tab.

Fig : View Model Phone

This class takes valued related to phone content from which qr code needs to be generated.

Testing And Results

Applications
Although the QR Code was originally designed to track automotive components and systems through the manufacturing process and distribution supply chain, it has rapidly spread to virtually every other area where traditional barcodes are used, as well as some entirely new ones. Typical applications include: Manufacturing Product traceability Process control Order and time tracking Inventory and equipment management Warehousing and logistics Item tracking Retailing Point-of-purchase product identification Sales management Inventory control Healthcare Medical records management Patient identification Medication tracking Equipment and device tracking Life sciences Specimen tracking Transportation Fleet management Ticketing and boarding passes Office automation Document management Marketing and advertising Mobile marketing Electronic tickets, coupons, payments and loyalty programs

Advantages And Limitaions

Advantages
1. Fast, omni directional scanning. 2. High-capacity data storage. 3. Small size. 4. Error correction. 5. Many types of data. 6. Distortion compensation. 7. Linkability (Structured Append. 8. Direct Marking. 9. Most of all the Qr code generated have encrypted data and thus provides better safety

measure than normal codes.

Limitaions

1. Since Qr codes are main used for marketing purpose they are now used as large medium to encode data, so they cannot be a safe medium to encode a confidential data.

2. Making encryption better and developing a universal decoder for decoding encrypted codes is not available yet universally.

Future Work

The possibilities for attacks proposed open up a quite large held for further research. The main target lies in the accurate analysis and practical application of one or more of the outlined attacks on a given target. Furthermore, it should be investigated which parts of a QR Code are the easiest to attack, and what countermeasures can be taken to thwart attacks.

In even more general terms, it would be very interesting to and metrics that can be used to measure the vulnerability of QR Codes depending on a given type of attack outline and with respect to characteristics like black/white-distribution, version, masking, etc. Last but not least, other 2D-Codes such as Aztec or DataMatrix need to be analyzed in the same way to identify possible attack vectors and find suitable countermeasures.

Conclusion

In general, we believe that QR codes have great potential in business media. Some possibilities are there are many creative ideas waiting for us to explore. We examine outlined the dangers of possible malicious attacks utilizing manipulated QR Codes.

Since QR Codes gain increasing popularity through their use for marketing purposes, we expect that this kind of attack will receive more and more attention by the hacking community in the future. This paper will present some security conscious of the mobile phones users.

REFERENCES

[1] H. S. Al-Khalifa. Utilizing qr code and mobile phones for blinds and visually impaired people. In ICCHP, pages 1065{1069, 2008.

[2] A. Alapetite. Dynamic 2d-barcodes for multi-device web session migration including mobile phones. Personal and Ubiquitous Computing, 14(1):45{52, 2010.

[3] R. Bose and D. Ray-Chaudhuri. On a class of error correcting binary group codes*. Information and control, 3(1):68{79, 1960. [4] M. Canadi, W. H opken, and M. Fuchs. Application of qr codes in online travel distribution. In ENTER, pages 137{148, 2010.

[5] J. Gao, V. Kulkarni, H. Ranavat, L. Chang, and H. Mei. A 2d barcode-based mobile payment system. In MUE, pages 320{329, 2009.

[6] J. Z. Gao, L. Prakash, and R. Jagatesan. Understanding 2d-barcode technology and applications in m-commerce - design and implementation of a 2d barcode processing solution. In COMPSAC (2), pages 49{56, 2007.

[7] J. Z. Gao, H. Veeraragavathatham, S. Savanur, and J. Xia. A 2d-barcode based mobile advertising solution. In SEKE, pages 466{472, 2009.

[8] A. Hocquenghem. Codes correcteurs d^a_A _Zerreurs. Chi_res, 2(147-156):4, 1959.

[9] Y.-P. Huang, Y.-T. Chang, and F. E. Sandnes. Ubiquitous information transfer across different platforms by qr codes. J. Mobile Multimedia, 6(1):3{14, 2010.

[10] ISO 16022:2006. Data Matrix bar code symbology speci_cation. ISO, Geneva, Switzerland.

[11] ISO 18004:2006. QR Code bar code symbology specification. ISO, Geneva, Switzerland.

[12] ISO 24778:2008. Aztec Code bar code symbology specification. ISO, Geneva, Switzerland.

[13] S. Lisa and G. Piersantelli. Use of 2d barcode to access multimedia content and the web from a mobile handset. In GLOBECOM, pages 5594{5596, 2008.

[14] I. Reed and G. Solomon. Polynomial codes over certain _nite _elds. Journal of the Society for Industrial and Applied Mathematics, 8(2):300{304, 1960.

[15] M. R. Rieback, B. Crispo, and A. S. Tanenbaum. Is your cat infected with a computer virus? In PERCOM '06: Proceedings of the Fourth Annual IEEE International Conference on Pervasive Computing and Communications, pages 169{179, Washington, DC, USA, 2006. IEEE Computer Society.

You might also like