HQTP v.2: Holy Quran Transfer Protocol version 2

4 downloads 215478 Views 541KB Size Report
data transmission with digital signature feature to guarantee security. However, HQTP .... field offer a great choice to add additional features without changing the ...
HQTP v.2 : Holy Quran Transfer Protocol version 2 Muneer Bani Yassein

Yarub A. Wahsheh

Department of Computer Science Jordan University of Science and Technology Irbid- Jordan [email protected]

Department of Computer Science Jordan University of Science and Technology Irbid- Jordan [email protected]

Abstract— Holy Quran is the religious book of Islam. It is very special type of data for more than 1.6 billion Muslims over the world. With the advancements of Information Technology it is now available in digital forms through the internet, websites and mobile applications. There is a remarkable need of having a standard rules to manage and monitor Holy Quran electronic versions. In this paper, an application layer protocol for Holy Quran is shown; it is a new version of Holy Quran Transfer Protocol (HQTP). The new version solves the reliability problems in previous version and enhances the protocol structure. It presents additional features such as image and video transmission, search queries and elementary security features. Keywords— Holy Quran; Integrity; Networking Protocols.

I.

Quran

Authenticatio; Quran

INTRODUCTION

Holy Quran is the religious book of Islam. Muslims believe that it is the message of Allah to the human being and the miracle of the Prophet Mohammad (pbuh). Holy Quran is the main source of legislation that includes rules, ethics, lessons and philosophy, managing Muslims life, relationships and behavior. Holy Quran consists of 114 chapters (Sura), and 6,236 verses (Ayah)[1]. Arabic is the language of Holy Quran and Prophet Muhammad (pbuh) saying. Muslims believe that Holy Quran is saved of change; it was saved by hearts and written on papers. Nowadays with the advancement of Information Technology, Holy Quran is available in digital forms, with the support of multimedia and mobile devices [1]. Since Holy Quran is a unique type of data, Islamic governments and the responsible organizations of printing Holy Quran do monitor each printed copy to guarantee data integrity. Any printed copy must go through strict check operations to get permissions of being published. Unfortunately, electronic copies of Holy Quran are published without censorship. This leads to errors in Holy Quran text, especially with Arabic diacritical marks (Tashkeel). Although Holy Quran text, images, audio and videos are published through the Internet, websites and mobile applications, there is no common used standard that manage this process. There is a remarkable need for a standard way to treat this unique type of data. This standard rules should be common and creative to fit the needs of 1.6 billion Muslims

over the world, by 2030 the expected number of Muslims will reach 2.2 billion [2]. Holy Quran Transfer Protocol (HQTP) [3] is a networking protocol that operates in the application layer. It was designed in 2013 to specify the needed rules to transmit Holy Quran over the internet in a secure way, supporting text and audio data transmission with digital signature feature to guarantee security. However, HQTP audio transmission has reliability problems. User Datagram Protocol (UDP) was used to transmit audio packets. Audio data was encapsulated in unreliable Transport layer protocol which is not acceptable in Holy Quran data transmission. In this paper we present a new version of HQTP, the main goal is solving the reliability problems and enhance the protocol structure. New features and services are added to the protocol to meet the needs of Muslims, and allow more censorship of electronic copies of Holy Quran. The rest of this paper is organized as follows: a brief of related work is shown in section two, section three presents the protocol structure where section four shows a comparison between HQTP version 1 and the new version. Finally section five presents the conclusion and future work plans. II.

RELATED WORK

HQTP version 1 [3] presents an application layer protocol, that identified common known rules to manage the process of publishing digital forms of Holy Quran. The study specified header fields which operates as control structure, and payload that contains the needed data. The protocol works on a clientserver model with different message types to manage clientserver communication. HQTP v1 allow both text and audio transmission, with a digital signature and hashing algorithm mechanisms to guarantee server authentication and data integrity. Additional services such as Holy Quran translation and Interpretation were handled by the protocol. Text packets were encapsulated using Transmission Control Protocol and audio packets were encapsulated using UDP to support real-time audio streaming feature even on low connectivity devices [3]. The study of [4] presents an information system for Holy Quran that links hard copies of Holy Quran with digital resources. Quick Response (QR) codes are used to store parameters on each page of Holy Quran, with a specific

mobile application the user can link the physical page with its corresponding electronic resources such as audio, translation and interpretation (Tafseer). The application will retrieve data from local database if it was cached before. The application can get Holy Quran data using URLs stored in the QR code, or use the parameters and get the needed data from HQTP server.

Message Type Single Request

Description Client request of Holy Quran data as specified in header fields Client request of a range of Holy Quran data as specified in header fields and range option Server response of Holy Quran data as specified in header fields Request server information Response of server information Sent from server back to client when the request is invalid (invalid msg type or option) Sent from client to the server when invalid message is received Sent from client to TTP Query search request, search option will be used Query search response

Range Request

An Integrity and authentication model to evaluate Holy Quran electronic copies were discussed in [5]. A specific Meta data is used with hashing algorithms to detect any modification on Holy Quran data. Comparisons between different hashing algorithm and different text styles were shown, and then the proposed system was evaluated and used to check an online copy of Holy Quran. Results showed that using hashing algorithms are effective detecting distortion, even if it was in Arabic diacritical marks.

HQTP Response

Server Info Request Server Info Response Bad Request

The study of [6] use digital signature with public key infrastructure for Holy Quran electronic copies, to achieve authentication and verification an Islamic Institute is used as the authentication authority. Specific software can be used to check online Holy Quran scripts.

Bad Response

Report Message Search Request Search Response

III. PROTOCOL STRUCTURE HQTP version 2 enhance the structure of version 1, the protocol structure include protocol header and payload. The protocol structure is encapsulated using TCP segments with unspecified port number, TCP guarantees reliability and connection oriented service.

 Flags: 16 bit field specifies the characteristics of HQTP message.

Additional connection of (Real Time Streaming Protocol) RTSP can be used to control Multimedia streaming (audio and video)[7]. However, this is left as an implementation issue.

A. Protocol Header HQTP v2 header is shown in figure 1; it is similar to HQTP v1 with some modifications.

Flag

Name

Description

Quran

Holy Quran

TXT

Text

AUD

Audio

IMG

Image

VID

Video

SEC

Security

Message payload contains Holy Quran Text data in payload Audio data in Payload Image data in payload Video data in payload Security mode is enabled and digital signature of each verse will be sent

INF

Information

COMP

Compression

Fig. 1. HQTP Header.

Message Payload contains Holy Quran related information such as translation and interpretation Data is compressed

 Version: single byte identifies the used version of HQTP; this will be compatible for future versions.  Message type: as specified in HQTP v1, there are seven types of HQTP messages. Table 1 shows the message types of HQTP v2.



Verse (Ayah) Number: two bytes field identifies the requested or sent Verse. The range of this field is from 1 to 286.



Chapter (Sura) Number: one byte field identifies the requested or sent Chapter. The range of this field is from 1 to 114.



Header Length: one byte field that specify the length of header in terms of 2 bytes. So to calculate the actual header length, multiply this number by 2.



Server ID: two bytes field that contains unique number that identify the HQTP server.



Options: additional data for specific types, each option use three sub-fields: type, length and value. Option field offer a great choice to add additional features without changing the protocol structure. Option types include:

1)

Digital Signature (DS): this option is used to guarantee data integrity and server authentication. It uses SHA-1 hashing algorithm and Digital Signature Algorithm to sign each HQTP message with the server's private key. The digital signature is included with option field and the SEC flag will be enabled.

2)

Search: this option is a new feature in HQTP v2, it is used with search request and search response message type and the value of this option is the requested search query.

3)

Range: this option is used with Range Request message type, the client can specify the start points of verse (Ayah) and chapter (Sura) using the header fields, end points will be specified using this option, and the value will be divided in to two fields: end verse (Ayah) and end chapter (Sura). Note that the server will reply with normal response messages for each verse.

4)

5)

6)

Translation: this option can be used by both client and server, the client can request the translation of the specified verse and chapter, and the server can send a list of available languages. Note that the INF flag will be enabled to use this option.

IV.

OVERVIEW OF HQTP V2 SECURITY

Security features are implemented using Digital Signature option and SEC flag. A hash code of each HQTP v2 message will be computed using SHA-1 hashing algorithm and this hash code is encrypted using HQTP server's private key with DSA algorithm. Note that the usage of public key cryptography requires a public key infrastructure PKI or Trusted Third Party (TTP). In our study we consider that this trusted authority can be a governmental organization like the ministry of Awqaf and Islamic Affairs, this will give Islamic governments more control and Censorship over electronic copies of Holy Quran. Clients can get HQTP server's public key using Server Info Request, the request will contain the ID of the server and it can be sent to the server or to the TTP. A signed certificate with the TTP private key will be sent back to the client using Server Info Response message, this certificate will include: HQTP Server's public key, ID and IP address (or domain name). At the client side, a hash code of each HQTP message is computed using SHA-1 hashing algorithm, then the server's public key is used to decrypt the received digital signature and get the received hash code. The next step is comparing the computed hash code with the received one; if they are equals then HQTP server is authenticated and HQTP message data integrity is guaranteed. This step will prevent data fabrication attacks. Note that HQTP server can redirect a client to another HQTP server, and provide the client with the new server's info (IP address and certificate). This can help in load balancing between servers and guarantee availability of service. Also Data compression will guarantee better utilization of bandwidth. Figure 2 shows server side message transmission steps and figure 3 shows the client side. Note that: M: a message of HQTP.

Interpretation (Tafseer): this option can be used by both client and server, the client can request the Interpretation of the specified verse and chapter, and the server can send a list of available Interpretation resources. Note that the INF flag will be enabled to use this option.

Z: Compression function.

Padding: additional bits to make the header length a multiple of two bytes.

DR: Decryption with Public Key.

7) End of options: this is the end of header. B. Protocol Payload HQTP v2 payload will contain the Holy Quran data as text, audio, image or video. Additional information can be included such as translation, interpretation and search results.

Z': Decompression function. DS: Digital Signature. ER: Encryption with Private Key.

H(M): compute hash code using SHA-1.

Fig. 2. Server side message transmission.

V.

HQTP: VERSION 2 VS. VERSION 1

The main difference is the reliability service for audio transmission, HQTP v2 uses TCP for all message types and get the benefits of underlying reliable connection oriented protocol where HQTP v1 used UDP as best effort service for audio transmission. Since Holy Quran is a unique type of data, Its application cannot accept any loss of data. Other differences include enhancements on header fields, message types and flags. HQTP v2 supports image and video services for Holy Quran transmission, also search query services were added to the protocol. From a security side, using digital signature was optional in version 1 and it is elementary in version 2.

VI.

CONCLUSION AND FUTURE WORK

In this paper we present a new version of the application layer protocol Holy Quran Transport protocol (HQTP). Our goal is to define common standard for Holy Quran data transfer, Control electronic copies and overcome problems of the previous version. The main issue was performing a reliable data transfer with security features that guarantee server authentication, data integrity, resources availability and bandwidth utilization. The protocol offers text, audio, image and video data transfer, with Holy Quran related services such as search, translation and interpretation. Fig. 3. client side message transmission.

In the future work we plan to publish the first request for comment (RFC), Implement the protocol it and evaluate it.

References [1] [2] [3]

[4]

[5]

[6]

[7]

Wikipedia, Retrieved December, 22, 2015, from http://en.wikipedia.org/wiki/Quran. B. Grim, and M. Karim, “The Future of the Global Muslim Population,” Pew Research Center, pp. 1-209, 2011. H. Wahsheh, Y.Wahsheh, R.Wahsheh, “HQTP: Holy Quran Transfer Protocol”, Proceedings of Taibah University International Conference on Advances in Information Technology for the Holy Quran and Its Sciences, Al-Madinah Al-Munawarah - Saudi Arabia, pp. 365-370, 2013 H. A. Wahsheh, Y. A. Wahsheh, R. A. Wahsheh, “ Novel educational System for Holy Quran using QR codes, ” Proceedings of Zaytona University International Engineering Conference on Sustainability in Design an Innovation ; Amman – Jordan. 2014. I. Alsmadi, M. Zarourb, “Online integrity and authentication checking for Quran electronic versions,” Applied Computing and Informatics Journal, 2015. M. Mostafa, I.Ibrahim, “Securing the Digital Script of the Holy Quran On the Internet”, Proceedings of Taibah University International Conference on Advances in Information Technology for the Holy Quran and Its Sciences, Al-Madinah Al-Munawarah - Saudi Arabia, pp. 58-61, 2013 B. Forouzan, “Data Communications and Networking,” Science Engineering & Math, fifth edition, 2012.