Journal of information and communication convergence engineering 2019; 17(3): 174-184
Published online September 30, 2019
https://doi.org/10.6109/jicce.2019.17.3.174
© Korea Institute of Information and Communication Engineering
In this study, we present a new scheme for smart education utilizing the concept of a blockchain for question sharing. A two-phase encryption technique for encrypting question papers (QSPs) is proposed. In the first phase, QSPs are encrypted using a timestamp, and in the second phase, previously encrypted QSPs are encrypted again using a timestamp, salt hash, and hash from the previous QSPs. These encrypted QSPs are stored in a blockchain along with a smart contract that helps the user to unlock the selected QSP. An algorithm is also proposed for selecting a QSP for the exam that randomly picks a QSP. Moreover, a timestamp-based lock is imposed on the scheme so that no one can decrypt the QSP before the allowed time. Security analysis is conducted to demonstrate the feasibility of the proposed scheme against different attacks. Finally, the effectiveness of the proposed scheme is demonstrated through implementation, and the superiority of the proposed scheme over existing schemes is proven through a comparative study based on different features.
Keywords Blockchain, Internet of Things, Security, Smart education
Blockchain has brought a revolution in the realm of technology [1, 2] and has started to draw the interest of the stakeholders of a wide span of industries including finance, healthcare, and digital content distribution [3-8]. In blockchain, when a transaction occurs in the network, the transaction has to experience validation called a consensus mechanism, a process where some of the participants reach a mutual agreement in allowing that transaction [9]. Each block contains the hash of the previous block because of which it is called a blockchain [10]. In a blockchain, asymmetric cryptography is adopted to issue transactions [11, 12]. Internet of Things (IoT) has brought another revolution in the realm of technology [13-16]. Recently, IoT has established its mark in the education sector [17, 18]. Smart campuses, smart classrooms, digital content, and campus safety are some of the results of IoT. However, IoT technology is facing security risks. Entities in IoT need reliable and tamper-proof protection from attacks like denial-of-service. [19]. Blockchain can mitigate this issue with its security infrastructure [20, 21]. Examination is an important part of education [22, 23]. However, there is a threat, named question paper leaking (QPL), which can cause an unfairness issue during examinations. Nowadays, QPL is a serious issue throughout the world from university entrance examinations to public examinations, and the situation is worse in developing countries [24-27]. QPL can lead to some serious outcomes, such as quality of education being compromised and erosion of ethical standards [27]. Some more cases have been previously reported [28-47]. Although these cases [28-47] only cover the QPL incidents that occurred in 2017, some countries face this problem almost every year. Therefore, QPL occurs not only within developing and underdeveloped countries but also in developed countries. In QPL incidents, along with the students teachers and authorities can also be involved. Therefore, a smart examination system needs to be developed that can share examination papers securely without the concern of QPL. Moreover, social engineering, phishing etc., can loot anyone’s credentials to access data anytime. Therefore, examination management systems need more than user credential and random question selection. Question sharing (QS) should be performed through a more robust system, where user credential is less important. In this study, a blockchain-based smart and secured QS scheme (termed as BSSSQS) is proposed, a topic that has not been explored yet to the best of our knowledge. The major contributions of this study are as follows:
• The proposed scheme can increase the security of questions and provide seamless QS sharing.
• A two-phase encryption technique is proposed to provide security for question papers (QSPs).
• A randomization algorithm is proposed for selecting QSPs before the exam.
• The proposed scheme has been implemented, and the performance of the system has been analyzed.
The remaining sections of this paper are organized as follows: a discussion on existing works is presented in Section II. Section III illustrates the system model of BSSSQS. In Section IV, different transactions of BSSSQS are discussed in detail. A security analysis against different attacks is demonstrated in Section V. Section VI represents a discussion on performance analysis. Finally, Section VII draws the conclusions from this study.
To digitalize the examination system, different ideas have been shared previously [48-54]. In [48], three models of web examination system, such as B/S, C/S, and B/S combined with C/S, are discussed. Another web-based examination system was proposed for distant and formal education in [49]. In [50], an online examination system for PE theory courses was proposed, where every user uses a username and password to access the portal. In [51], an online examination system was proposed where MD5 encryption technique was exploited for security. An examination management system based on flat network was demonstrated by [52], which provides role-based security. In [53], a web-based examination system was proposed and integrated with existing learning management systems, whereas an online examination system based on TCP/IP client-server architecture was proposed in [54]. These systems mainly focus on system design and overall management. However, they could not guarantee to solve the QPL incidents.
We devised a blockchain-based QS scheme to make it secure and smart, as shown in Fig. 1. Four major entities are described in the subsections.
In this entity, actors have to submit questions for the exam. They have a deadline for submitting questions. They can modify or delete questions before submitting. However, once they submit the question, they cannot change the questions anymore.
This entity involves initial management of questions. After getting questions from the QUS, QC stores questions before sending it to the next entity. In this entity, questions are modified to prepare QSPs, where a QSP consists of a set of questions. Then, the QSPs are handed over to the next entity. This entity consists of seven modules. The functions of each module are summarized as follows. Question cloud manager (QCM): manages internal functionality; signature verifier (SV): verifies signatures of the requester; format question (FQ): formats and modifies the questions; question pool (QNP): stores modified questions; question filter (QF): sorts and makes sets; question queue (QQ): stores questions; and database (DB): contains information like signature and course.
This entity holds the information of all the connected minions (nodes) to which it sends QSPs. This entity also maintains communication with its minions through a blockchain cloud. It also selects a QSP for the exam. Furthermore, this entity performs security mechanisms on QSPs. It comprises thirteen modules. The functions of each module are summarized here. Question queue (QNQ): stores QSPs temporarily; BSSSQS master manager (BMM): manages internal functionality; timestamp (TS): converts date to timestamp; question set (QS): organizes QSPs based on the course list; salt engine (SE): generates random data; data encryptor (DE): encrypts QSPs; encryption factory (EF): encrypts QSPs; hash generator (HG): generates hash of QSPs; contract generator (CG): generates a smart contract; database (DB): stores data of QSPs; guffy bot (GB): monitors internal tasks; question picker (QP): selects a QSP; and exclusion pool (EP): stores illegal QSPs.
This entity contains processed QSPs in the blockchain. No one can access QSPs without experiencing smart contract, timestamp verification, etc. This entity consists of eight modules. The functions of each module are as follows: BSSSQS minion manager (BMNM): manages internal functionality; blockchain (BC): blockchain-based storage; minion bot (MB): monitors internal activity; smart contract manager (SCM): handles authorization requests and decrypts QSPs; database (DB): contains decrypted QSPs; user panel (UP): provides user interface and manages tasks; session manager (SM): contains information related to user activeness and authorization; and user authentication and authorization manager (UAAM): verifies user credentials.
In this section, we describe the different types of transactions performed in BSSSQS. The list of important notations with descriptions are summarized in Table 1.
Notation | Description |
---|---|
Nonce, Prime number, Question | |
Timestamp, Salt hash, Questionnaire token | |
Token, Encrypted QSP, Smart contract | |
θ(·) | One way key generation function |
Encryption and Decryption function |
Two types of major transactions-authentication of QUS and questions handover to QC-take place between QUS and QC. Every user in QUS has a unique signature, which is stored in QC. Each user has to prove his identity with proper credentials to send questions to QC, as shown in Fig. 2. The proposed scheme assumes that all communication between QUS and QC is done by employing asymmetric key encryption. Before sending questions, QUS sends a request to QC to obtain a public key of QC. QUS sends the request by sending data
Here,
QUS first encrypts the question using
Here, transactions are divided into two main categories shown in Fig. 3: 1) processing questions within different modules of QC, and 2) sending QSPs from QQ to BSSSQSmaster for further processing. After the deadline of question submission, FQ formats and modifies the questions to prepare QSPs. The QSPs are then sent to QNP, where the questions are stored temporarily, and after obtaining proper instructions from QCM, QSPs are sent to QF. QF selects some QSPs based on certain criteria and forwards these selected QSPs to QQ before sending to BSSSQSmaster. When the collection is finished, QQ sends QSPs to BSSSQSmaster.
This segment covers transactions between BSSSQSmaster and BSSSQSminion, as shown in Fig. 4. The primary tasks of BSSSQSmaster are summarized as follows: (1) to encrypt QSPs and send these encrypted QSPs to BSSSQSminion and (2) to select a QSP for the exam and send permission notification to BSSSQSminion for accessing the selected QSP. BSSSQSmaster plays a very significant role in providing security to QSPs. Initially, questions are stored in QNQ. After getting QSPs from QNQ, BMM picks the timestamp
The first phase of encryption is managed by QS. First, QS requests SE for generating a salt hash 𝕊ħ. After getting 𝕊ħ from SE, QS stores it for the next phase of encryption. Second, QS sends QSPs to DE with
Finally, QS sends encrypted QSPs to EF with
The second phase of encryption happens in EF. EF generates a default genesis block (i.e., first block) with random text and encrypts it with
where
After the encryption, CG stores the key in DB. At the time of the exam, BSSSQSmaster sends the key along with a selected question hash. After getting the encrypted smart contract from CG, EF sends blocks and the smart contract to GB. As GB gets the blocks and contract, it initiates the process of sending these resources to BSSSQSminion. At first, GB pulls the existing minion list from DB. When GB get all lists, it begins sending blocks and the contract to BSSSQSminion through the blockchain cloud. When a QSP has to be selected for an exam, GB sends an instruction to QP for initiating the process of selecting a QSP for the exam along with ℂ
where
where
This section covers the transactions between different modules of BSSSQSminion, as shown in Fig. 5. Note that U in Fig. 5 represents a user in the system. The transactions are categorized into the following three types: (1) storing and maintaining QSP blocks in blockchain, (2) updating the smart contract, and (3) alerting authority about the permission to access QSPs. After getting blocks and the smart contract, BMNM sends blocks to BC and smart contract to SCM for the selected exam. When BMNM gets a QSP selection notification from BSSSQSmaster, BMNM passes this notification to UP and UP alerts users about the access. When a user tries to enter UP, he has to experience a validation process. UAAM sends a request to DB to send information regarding the requested signature. If the user is valid, DB returns user information, otherwise, it reruns empty data. When UAAM gets validation from DB, it stores a token in SM for maintaining the user session. Every minion manages its users by itself. After that, UAAM notifies UP about the response. As users get a notification about the QSP and key for decrypting ℂ
Finally,
where
In this section, we propose different propositions related to security against different attacks with proof.
In this section, we discuss the experimental results and compare the proposed BSSSQS with existing schemes based on different features to demonstrate the feasibility of BSSSQS.
Three computers were considered for the experiment. Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz was considered as QUS with 16 GB. Microsoft Windows 10 Professional 64-bit was used as an operating system (OS) in QUS. Intel(R) Xeon(R) Processor E5-2697A V4 @ 2.60 GHz was considered as QC and BSSSQSmaster with 32 GB. CentOS 7.5 was utilized as an OS in QC and BSSSQSmaster. Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz was considered as BSSSQSminion with 32 GB. Ubuntu 18.04.1 LTS was utilized as an OS in BSSSQSminion. RSA was considered for asymmetric encryption, and Twofish was considered for symmetric encryption. The middleware in QUS was built using Node.js, the middleware in QC was built using PHP, and the middleware in BSSSQSmaster and in BSSSQSminion was built using Python. The blockchain network was built and maintained using Python. As the proposed BSSSQS is a private network and blocks were created in BSSSQSmaster, no consensus mechanism was considered during the experiment. Fig. 6 represents the result of the experiments performed in BSSSQS. In Fig. 6(a), time to transfer questions (TTQ) from QUS to QC is demonstrated for different question sizes. Requesting public key and validation of user identity is also included in TTQ. With the increasing size of questions, TTQ also increases. This is because more time is required for encrypting and transferring larger questions over the network. Fig. 6(b) illustrates the processing time for performing security mechanisms in BSSSQSmaster and BSSSQSminion. The processing time increased with increasing QSP size for phase-1 and phase-2 encryption in BSSSQSmaster and phase-1 and phase- 2 decryption in BSSSQSminion. The computation power in BSSSQSmaster is much higher than that of BSSSQSminion . Thus, the processing time in BSSSQSmaster is lesser than that in BSSSQSminion. Eq. (3) and Eq. (4) were utilized for calculating the processing time while performing phase-1 and phase-2 encryption in BSSSQSmaster, respectively. Eq. (8) and Eq. (9) were used for calculating the processing time while performing phase-1 and phase-2 decryption in BSSSQSminion, respectively. Phase-1 encryption requires less time than phase-2. This is because the key is generated from the previous block’s hash, and the size of the key in phase-2 increases with the increase of block. Phase-1 decryption takes more time than phase-2 decryption. To decrypt in phase-2, the hash of the previous block is required and a combination of the previous block’s hash increases the key size. Fig. 6(c) depicts the block creation for different QSP sizes. With the increase in the size of QSP, block creation time also increases. The block contains QSP, timestamp, nonce, and the previous block’s hash. While creating blocks, data were encrypted. After preparing the aforementioned attributes, the block is created and a hash is generated that works as the identity of the block. The higher the QSP size, the more time is required for encrypting data and generating the hash. Thus, the block time increases. Fig. 6(d) demonstrates the change in the block size for different QSP sizes. With increasing size of QSP, block size also increases. Fig. 6(e) portrays the change in time for selecting the QSP for the different number of QSPs. Eq. (6) and Eq. (7) were used during calculating time for selecting the QSP. When the number of QSPs is increased, QSP selection time also increases because the more QSPs in the list, the more time is required to filter compromised QSPs. Overall, the increase in QSP selection time is very small.
A comparative study between BSSSQS and existing models ([48]-[54]) was performed, as shown in Table 2, where (√) means supported and (×) means not supported, by considering the following features.
Features | Schemes | |||||||
---|---|---|---|---|---|---|---|---|
Yang [50] | Chang [48] | Lu [51] | Zhai [52] | Henke [53] | Kaya [49] | Younis [54] | BSSSQS | |
Secure login | √ | √ | √ | √ | √ | √ | √ | √ |
QSP generation | × | √ | √ | √ | × | √ | √ | √ |
QSP encryption | × | × | × | × | × | × | × | √ |
QSP selection | × | × | × | × | √ | √ | √ | √ |
Timestamp lock | × | × | × | × | × | × | × | √ |
• Secure login: This feature covers the security in the login process like password encryption, random password, etc. BSSSQS along with all of the existing models (([48]-[54]) support secure login.
• QSP generation: This feature generates a QSP randomly from a list of questions. BSSSQS randomly generates QSPs from the provided questions and among the existing systems. Chang [48], Lu [51], Zhai [52], Kaya [49], and Younis [54] supported this.
• QSP encryption: This feature encrypts the QSP to prevent unauthorized access. Only BSSSQS performs encryption in QSPs.
• QSP selection: This feature supports the random selection of a QSP. BSSSQS randomly selects a QSP, and among the existing systems, Henke [53], Kaya [49], and Younis [54] support this feature.
• Timestamp lock: This feature helps impose a restriction of time on QSPs so that no one can access QSPs before the allowed time. Only BSSSQS imposes a timestamp lock on the QSPs.
In this study, we proposed a secured QS scheme exploiting the security mechanism of blockchain. In this scheme, QSP experiences two-phase encryption to prevent unethical access before the exam. Moreover, a restriction of time is issued in the proposed scheme so that every minion has to wait for system permission to initiate the decryption process of QSP. Furthermore, QSP is selected by master employing the proposed randomize algorithm. A combination of these features can provide a secured QS system. We analyzed BSSSQS’s security by proposing different propositions with proofs. We compared the performance of BSSSQS with other existing education management schemes. Based on the theoretical comparison, it can be demonstrated that BSSSQS is more secure than other models. We implemented BSSSQS and performed experiments on the implementation to show the effectiveness of BSSSQS. Therefore, we can conclude that BSSSQS can be a promising approach for providing proper security to mitigate the QPL problem in the future smart education system.
was born in 1992. He received his B.Sc. in software engineering and M.Sc. in computer science from American International University-Bangladesh (AIUB), Dhaka, Bangladesh, in 2014 and 2017, respectively. He is currently working toward his PhD degree with the WENS Laboratory, Kumoh National Institute of Technology, Gumi, South Korea. He has more than five years of experience of working in the software development field. He has participated in various software competitions with good achievements. His major research interests include blockchain, Internet of Things, unmanned aerial vehicles, social Internet of Things, mobile edge computing, web of things, semantic web, wireless network, and distributed systems.
received the B.Sc. and M.Sc. degrees in computer science and engineering from the Chittagong University of Engineering and Technology, Chittagong, Bangladesh, in November 2005 and January 2014, respectively. He was awarded the Ph.D. degree from the Kumoh National Institute of Technology, Gumi, South Korea, in February 2018. Since 2007, he has been a faculty member with the Department of Electrical and Electronic Engineering, University of Chittagong, Chittagong, Bangladesh, where he is currently an Associate Professor. He has co-authored more than 45 technical papers in international journals and conference proceedings. He is an Associate Editor of the IEEE Access. Moreover, he regularly serves as a reviewer and TPC member in many reputed journals and conferences. His major research interests include 5G, cognitive radio networks, cooperative communications, MIMO, computer networks, NOMA, spatial modulation, blockchain, internet of things, etc.
received his Ph.D. degrees in electrical engineering and computer science from Seoul National University on 2006. He was with WiMAX Design Lab, Samsung Electronics, Suwon, South Korea from 2007 to 2010. He joined as full-time professor to School of Electronics, Kumoh National Institute of Technology, Gumi, South Korea. He is currently an Associate Professor. He was a post Doc. researcher at University of Washington, Seattle, WA, USA from 2006 to 2007. In addition, he was a visiting scholar to University of the British Columbia at 2017. His research interests include wireless communications, next generation mobile wireless broadband networks, signal processing, Internet of things, etc.
Journal of information and communication convergence engineering 2019; 17(3): 174-184
Published online September 30, 2019 https://doi.org/10.6109/jicce.2019.17.3.174
Copyright © Korea Institute of Information and Communication Engineering.
Anik Islam, Md Fazlul Kader, Soo Young Shin
Kumoh National Institute of Technology
In this study, we present a new scheme for smart education utilizing the concept of a blockchain for question sharing. A two-phase encryption technique for encrypting question papers (QSPs) is proposed. In the first phase, QSPs are encrypted using a timestamp, and in the second phase, previously encrypted QSPs are encrypted again using a timestamp, salt hash, and hash from the previous QSPs. These encrypted QSPs are stored in a blockchain along with a smart contract that helps the user to unlock the selected QSP. An algorithm is also proposed for selecting a QSP for the exam that randomly picks a QSP. Moreover, a timestamp-based lock is imposed on the scheme so that no one can decrypt the QSP before the allowed time. Security analysis is conducted to demonstrate the feasibility of the proposed scheme against different attacks. Finally, the effectiveness of the proposed scheme is demonstrated through implementation, and the superiority of the proposed scheme over existing schemes is proven through a comparative study based on different features.
Keywords: Blockchain, Internet of Things, Security, Smart education
Blockchain has brought a revolution in the realm of technology [1, 2] and has started to draw the interest of the stakeholders of a wide span of industries including finance, healthcare, and digital content distribution [3-8]. In blockchain, when a transaction occurs in the network, the transaction has to experience validation called a consensus mechanism, a process where some of the participants reach a mutual agreement in allowing that transaction [9]. Each block contains the hash of the previous block because of which it is called a blockchain [10]. In a blockchain, asymmetric cryptography is adopted to issue transactions [11, 12]. Internet of Things (IoT) has brought another revolution in the realm of technology [13-16]. Recently, IoT has established its mark in the education sector [17, 18]. Smart campuses, smart classrooms, digital content, and campus safety are some of the results of IoT. However, IoT technology is facing security risks. Entities in IoT need reliable and tamper-proof protection from attacks like denial-of-service. [19]. Blockchain can mitigate this issue with its security infrastructure [20, 21]. Examination is an important part of education [22, 23]. However, there is a threat, named question paper leaking (QPL), which can cause an unfairness issue during examinations. Nowadays, QPL is a serious issue throughout the world from university entrance examinations to public examinations, and the situation is worse in developing countries [24-27]. QPL can lead to some serious outcomes, such as quality of education being compromised and erosion of ethical standards [27]. Some more cases have been previously reported [28-47]. Although these cases [28-47] only cover the QPL incidents that occurred in 2017, some countries face this problem almost every year. Therefore, QPL occurs not only within developing and underdeveloped countries but also in developed countries. In QPL incidents, along with the students teachers and authorities can also be involved. Therefore, a smart examination system needs to be developed that can share examination papers securely without the concern of QPL. Moreover, social engineering, phishing etc., can loot anyone’s credentials to access data anytime. Therefore, examination management systems need more than user credential and random question selection. Question sharing (QS) should be performed through a more robust system, where user credential is less important. In this study, a blockchain-based smart and secured QS scheme (termed as BSSSQS) is proposed, a topic that has not been explored yet to the best of our knowledge. The major contributions of this study are as follows:
• The proposed scheme can increase the security of questions and provide seamless QS sharing.
• A two-phase encryption technique is proposed to provide security for question papers (QSPs).
• A randomization algorithm is proposed for selecting QSPs before the exam.
• The proposed scheme has been implemented, and the performance of the system has been analyzed.
The remaining sections of this paper are organized as follows: a discussion on existing works is presented in Section II. Section III illustrates the system model of BSSSQS. In Section IV, different transactions of BSSSQS are discussed in detail. A security analysis against different attacks is demonstrated in Section V. Section VI represents a discussion on performance analysis. Finally, Section VII draws the conclusions from this study.
To digitalize the examination system, different ideas have been shared previously [48-54]. In [48], three models of web examination system, such as B/S, C/S, and B/S combined with C/S, are discussed. Another web-based examination system was proposed for distant and formal education in [49]. In [50], an online examination system for PE theory courses was proposed, where every user uses a username and password to access the portal. In [51], an online examination system was proposed where MD5 encryption technique was exploited for security. An examination management system based on flat network was demonstrated by [52], which provides role-based security. In [53], a web-based examination system was proposed and integrated with existing learning management systems, whereas an online examination system based on TCP/IP client-server architecture was proposed in [54]. These systems mainly focus on system design and overall management. However, they could not guarantee to solve the QPL incidents.
We devised a blockchain-based QS scheme to make it secure and smart, as shown in Fig. 1. Four major entities are described in the subsections.
In this entity, actors have to submit questions for the exam. They have a deadline for submitting questions. They can modify or delete questions before submitting. However, once they submit the question, they cannot change the questions anymore.
This entity involves initial management of questions. After getting questions from the QUS, QC stores questions before sending it to the next entity. In this entity, questions are modified to prepare QSPs, where a QSP consists of a set of questions. Then, the QSPs are handed over to the next entity. This entity consists of seven modules. The functions of each module are summarized as follows. Question cloud manager (QCM): manages internal functionality; signature verifier (SV): verifies signatures of the requester; format question (FQ): formats and modifies the questions; question pool (QNP): stores modified questions; question filter (QF): sorts and makes sets; question queue (QQ): stores questions; and database (DB): contains information like signature and course.
This entity holds the information of all the connected minions (nodes) to which it sends QSPs. This entity also maintains communication with its minions through a blockchain cloud. It also selects a QSP for the exam. Furthermore, this entity performs security mechanisms on QSPs. It comprises thirteen modules. The functions of each module are summarized here. Question queue (QNQ): stores QSPs temporarily; BSSSQS master manager (BMM): manages internal functionality; timestamp (TS): converts date to timestamp; question set (QS): organizes QSPs based on the course list; salt engine (SE): generates random data; data encryptor (DE): encrypts QSPs; encryption factory (EF): encrypts QSPs; hash generator (HG): generates hash of QSPs; contract generator (CG): generates a smart contract; database (DB): stores data of QSPs; guffy bot (GB): monitors internal tasks; question picker (QP): selects a QSP; and exclusion pool (EP): stores illegal QSPs.
This entity contains processed QSPs in the blockchain. No one can access QSPs without experiencing smart contract, timestamp verification, etc. This entity consists of eight modules. The functions of each module are as follows: BSSSQS minion manager (BMNM): manages internal functionality; blockchain (BC): blockchain-based storage; minion bot (MB): monitors internal activity; smart contract manager (SCM): handles authorization requests and decrypts QSPs; database (DB): contains decrypted QSPs; user panel (UP): provides user interface and manages tasks; session manager (SM): contains information related to user activeness and authorization; and user authentication and authorization manager (UAAM): verifies user credentials.
In this section, we describe the different types of transactions performed in BSSSQS. The list of important notations with descriptions are summarized in Table 1.
Notation | Description |
---|---|
Nonce, Prime number, Question | |
Timestamp, Salt hash, Questionnaire token | |
Token, Encrypted QSP, Smart contract | |
θ(·) | One way key generation function |
Encryption and Decryption function |
Two types of major transactions-authentication of QUS and questions handover to QC-take place between QUS and QC. Every user in QUS has a unique signature, which is stored in QC. Each user has to prove his identity with proper credentials to send questions to QC, as shown in Fig. 2. The proposed scheme assumes that all communication between QUS and QC is done by employing asymmetric key encryption. Before sending questions, QUS sends a request to QC to obtain a public key of QC. QUS sends the request by sending data
Here,
QUS first encrypts the question using
Here, transactions are divided into two main categories shown in Fig. 3: 1) processing questions within different modules of QC, and 2) sending QSPs from QQ to BSSSQSmaster for further processing. After the deadline of question submission, FQ formats and modifies the questions to prepare QSPs. The QSPs are then sent to QNP, where the questions are stored temporarily, and after obtaining proper instructions from QCM, QSPs are sent to QF. QF selects some QSPs based on certain criteria and forwards these selected QSPs to QQ before sending to BSSSQSmaster. When the collection is finished, QQ sends QSPs to BSSSQSmaster.
This segment covers transactions between BSSSQSmaster and BSSSQSminion, as shown in Fig. 4. The primary tasks of BSSSQSmaster are summarized as follows: (1) to encrypt QSPs and send these encrypted QSPs to BSSSQSminion and (2) to select a QSP for the exam and send permission notification to BSSSQSminion for accessing the selected QSP. BSSSQSmaster plays a very significant role in providing security to QSPs. Initially, questions are stored in QNQ. After getting QSPs from QNQ, BMM picks the timestamp
The first phase of encryption is managed by QS. First, QS requests SE for generating a salt hash 𝕊ħ. After getting 𝕊ħ from SE, QS stores it for the next phase of encryption. Second, QS sends QSPs to DE with
Finally, QS sends encrypted QSPs to EF with
The second phase of encryption happens in EF. EF generates a default genesis block (i.e., first block) with random text and encrypts it with
where
After the encryption, CG stores the key in DB. At the time of the exam, BSSSQSmaster sends the key along with a selected question hash. After getting the encrypted smart contract from CG, EF sends blocks and the smart contract to GB. As GB gets the blocks and contract, it initiates the process of sending these resources to BSSSQSminion. At first, GB pulls the existing minion list from DB. When GB get all lists, it begins sending blocks and the contract to BSSSQSminion through the blockchain cloud. When a QSP has to be selected for an exam, GB sends an instruction to QP for initiating the process of selecting a QSP for the exam along with ℂ
where
where
This section covers the transactions between different modules of BSSSQSminion, as shown in Fig. 5. Note that U in Fig. 5 represents a user in the system. The transactions are categorized into the following three types: (1) storing and maintaining QSP blocks in blockchain, (2) updating the smart contract, and (3) alerting authority about the permission to access QSPs. After getting blocks and the smart contract, BMNM sends blocks to BC and smart contract to SCM for the selected exam. When BMNM gets a QSP selection notification from BSSSQSmaster, BMNM passes this notification to UP and UP alerts users about the access. When a user tries to enter UP, he has to experience a validation process. UAAM sends a request to DB to send information regarding the requested signature. If the user is valid, DB returns user information, otherwise, it reruns empty data. When UAAM gets validation from DB, it stores a token in SM for maintaining the user session. Every minion manages its users by itself. After that, UAAM notifies UP about the response. As users get a notification about the QSP and key for decrypting ℂ
Finally,
where
In this section, we propose different propositions related to security against different attacks with proof.
In this section, we discuss the experimental results and compare the proposed BSSSQS with existing schemes based on different features to demonstrate the feasibility of BSSSQS.
Three computers were considered for the experiment. Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz was considered as QUS with 16 GB. Microsoft Windows 10 Professional 64-bit was used as an operating system (OS) in QUS. Intel(R) Xeon(R) Processor E5-2697A V4 @ 2.60 GHz was considered as QC and BSSSQSmaster with 32 GB. CentOS 7.5 was utilized as an OS in QC and BSSSQSmaster. Intel(R) Core(TM) i5-4670 CPU @ 3.40GHz was considered as BSSSQSminion with 32 GB. Ubuntu 18.04.1 LTS was utilized as an OS in BSSSQSminion. RSA was considered for asymmetric encryption, and Twofish was considered for symmetric encryption. The middleware in QUS was built using Node.js, the middleware in QC was built using PHP, and the middleware in BSSSQSmaster and in BSSSQSminion was built using Python. The blockchain network was built and maintained using Python. As the proposed BSSSQS is a private network and blocks were created in BSSSQSmaster, no consensus mechanism was considered during the experiment. Fig. 6 represents the result of the experiments performed in BSSSQS. In Fig. 6(a), time to transfer questions (TTQ) from QUS to QC is demonstrated for different question sizes. Requesting public key and validation of user identity is also included in TTQ. With the increasing size of questions, TTQ also increases. This is because more time is required for encrypting and transferring larger questions over the network. Fig. 6(b) illustrates the processing time for performing security mechanisms in BSSSQSmaster and BSSSQSminion. The processing time increased with increasing QSP size for phase-1 and phase-2 encryption in BSSSQSmaster and phase-1 and phase- 2 decryption in BSSSQSminion. The computation power in BSSSQSmaster is much higher than that of BSSSQSminion . Thus, the processing time in BSSSQSmaster is lesser than that in BSSSQSminion. Eq. (3) and Eq. (4) were utilized for calculating the processing time while performing phase-1 and phase-2 encryption in BSSSQSmaster, respectively. Eq. (8) and Eq. (9) were used for calculating the processing time while performing phase-1 and phase-2 decryption in BSSSQSminion, respectively. Phase-1 encryption requires less time than phase-2. This is because the key is generated from the previous block’s hash, and the size of the key in phase-2 increases with the increase of block. Phase-1 decryption takes more time than phase-2 decryption. To decrypt in phase-2, the hash of the previous block is required and a combination of the previous block’s hash increases the key size. Fig. 6(c) depicts the block creation for different QSP sizes. With the increase in the size of QSP, block creation time also increases. The block contains QSP, timestamp, nonce, and the previous block’s hash. While creating blocks, data were encrypted. After preparing the aforementioned attributes, the block is created and a hash is generated that works as the identity of the block. The higher the QSP size, the more time is required for encrypting data and generating the hash. Thus, the block time increases. Fig. 6(d) demonstrates the change in the block size for different QSP sizes. With increasing size of QSP, block size also increases. Fig. 6(e) portrays the change in time for selecting the QSP for the different number of QSPs. Eq. (6) and Eq. (7) were used during calculating time for selecting the QSP. When the number of QSPs is increased, QSP selection time also increases because the more QSPs in the list, the more time is required to filter compromised QSPs. Overall, the increase in QSP selection time is very small.
A comparative study between BSSSQS and existing models ([48]-[54]) was performed, as shown in Table 2, where (√) means supported and (×) means not supported, by considering the following features.
Features | Schemes | |||||||
---|---|---|---|---|---|---|---|---|
Yang [50] | Chang [48] | Lu [51] | Zhai [52] | Henke [53] | Kaya [49] | Younis [54] | BSSSQS | |
Secure login | √ | √ | √ | √ | √ | √ | √ | √ |
QSP generation | × | √ | √ | √ | × | √ | √ | √ |
QSP encryption | × | × | × | × | × | × | × | √ |
QSP selection | × | × | × | × | √ | √ | √ | √ |
Timestamp lock | × | × | × | × | × | × | × | √ |
• Secure login: This feature covers the security in the login process like password encryption, random password, etc. BSSSQS along with all of the existing models (([48]-[54]) support secure login.
• QSP generation: This feature generates a QSP randomly from a list of questions. BSSSQS randomly generates QSPs from the provided questions and among the existing systems. Chang [48], Lu [51], Zhai [52], Kaya [49], and Younis [54] supported this.
• QSP encryption: This feature encrypts the QSP to prevent unauthorized access. Only BSSSQS performs encryption in QSPs.
• QSP selection: This feature supports the random selection of a QSP. BSSSQS randomly selects a QSP, and among the existing systems, Henke [53], Kaya [49], and Younis [54] support this feature.
• Timestamp lock: This feature helps impose a restriction of time on QSPs so that no one can access QSPs before the allowed time. Only BSSSQS imposes a timestamp lock on the QSPs.
In this study, we proposed a secured QS scheme exploiting the security mechanism of blockchain. In this scheme, QSP experiences two-phase encryption to prevent unethical access before the exam. Moreover, a restriction of time is issued in the proposed scheme so that every minion has to wait for system permission to initiate the decryption process of QSP. Furthermore, QSP is selected by master employing the proposed randomize algorithm. A combination of these features can provide a secured QS system. We analyzed BSSSQS’s security by proposing different propositions with proofs. We compared the performance of BSSSQS with other existing education management schemes. Based on the theoretical comparison, it can be demonstrated that BSSSQS is more secure than other models. We implemented BSSSQS and performed experiments on the implementation to show the effectiveness of BSSSQS. Therefore, we can conclude that BSSSQS can be a promising approach for providing proper security to mitigate the QPL problem in the future smart education system.
Notation | Description |
---|---|
Nonce, Prime number, Question | |
Timestamp, Salt hash, Questionnaire token | |
Token, Encrypted QSP, Smart contract | |
θ(·) | One way key generation function |
Encryption and Decryption function |
Ting Chain, Am-Suk Oh, and Seung-Soo Shin, Member, KIICE
Journal of information and communication convergence engineering 2024; 22(4): 296-302 https://doi.org/10.56977/jicce.2024.22.4.296Ashraf Al Sharah, Hamza Abu Owida, Talal A. Edwan, and Feras Alnaimat
Journal of information and communication convergence engineering 2022; 20(4): 250-258 https://doi.org/10.56977/jicce.2022.20.4.250Jeongkyu Hong*, Member, KIICE
Journal of information and communication convergence engineering 2024; 22(1): 64-69 https://doi.org/10.56977/jicce.2024.22.1.64