We Have Numbers Of Free Samples
For Each Subject To Make A Difference In Your Grade
E-Voting – Network Security
Total Views 707
Contents
- Introduction
- Accuracy
- Security
- Simplicity
- Privacy
- Democracy
- Exisiting approaches
- Process
- Authentication
- Counting
- Generation of anonymous username
- Privacy
- Process
- Data security algorithm
- AES algorithm
- SubBytes
- ShiftRows
- Mix columns
- XorRoundKey
- RSA Algorithm
- Algorithm
- AES algorithm
- Assumption
- Verification of authenticity and anonymity
- References
Introduction
Quick and reliable mean for presenting options in front of intended audience and getting there preferred choice is by mean of voting, and this process can be cumbersome or can be smooth based on approaches, manual approach where, one need to go, may or may not need to stand in queues, and the vote on the ballet paper or may be electronic machines, those use to list all possible options and among them one need to ick the candidate among, is one kind of process but that process is time taking since, one need to present their physically. Other approach that can be taken is online voting, where one can use their personal device to cast their votes, and for that to need to present their identities to system and once authenticated they can use the same for voting,
Online voting system need to carry such kind of requirements,
- Accuracy
- Security
- Simplicity
- Privacy
- Democracy
Among the available requirements, privacy where identity of one needs to be anonymous and their view should remain personal and should be known to other by the system is one of the major concerns. Whereas security, which implies that there are no ways, using that one can get the unauthorized access of the system and use the same for illegal voting or gaining any kind of information or alteration of the same can be achieved should not allowed and system should be robust enough to deal with those.
Currently there are many ways to establish security and privacy in voting systems, using cryptography that will be a help for encrypting the data and securing that against flat access, and will impose abstract level access. [1]
Existing Approaches
In this paper, we are also focusing on few of the work that has already been covered keeping focus on security and privacy, and we will look at the weakness imposed by those so that we can come up with protocols and solutions those will be much more reliable by overcoming those weaknesses.
One approach as suggested by (Amir Omidi, Saeed Moradi “Modeling and Quantitative Evaluation of an Internet Voting System Based on Dependable Web Services”, 978-1-4673-0479-5/12/©2012 IEEE), placed an architecture that was on the basis of web services view, those were dependent on each other and then by using reward petri nets and RBD, and then designed model was tested quantitively, to decide whether to use this system or not. So by using web services based components, this model ensure the high availability, which means that services will be available in case of any failure also, (Prof. Emil Sofron, Prof. Ion Tutanescu, “Anatomy and Types of Attacks against Computer Networks”, 978-1-4673-1520-3/12/$31.00 ©2012 IEEE ), reviews various type of attacks those are related to security be it active attacks and passive attacks, so as the connected networks are easily target and can be penetrated and same can be proved in much more easier way then to proving that network is full proof, so instead of looking at the ways to secure network, better is to secure content that is flowing through, so one may be able to steal the content that is flowing around but once the content itself is encrypted using encryption algorithms then it will be hard to guess that.
Process
There are mainly three phases those are considered in this scenario,
First phase is registration phase where one will register themselves in group via admin, and will be allocated an anonymous username the will not have any direct relationship with the real identity of the user, and using an algorithm the name will be derived for the user. For that username there will be temporary password that would be provided, and user need to use that to get first access and later with the password created need to be used. The whole data set that is getting generated will be stored in encrypted form and RSA algorithm will be used for the same.
Authentication and voting phase, second phase is authentication and voting phase, where a secured authentication server will first decrypt the details sent by the user (username and password), and will provide a token, that will act as public key, and the encoded password can be used as private key.
In Voting phase user, will select and send it, in sent packet there needs to be two messages, and both will be encrypted so one will not be able to identify which messages, is what. Message packet will contain signature that will be encrypted using private key, and other will be voting message or selected option.
Counting– Last phase where all votes will be decrypted and will be counted, in this phase democracy is important component, where all votes should be converted back to its original option and should be consistent.
So for all the three above needs to be considered in system design which will let administrator let capture the user and add them to relevant group and also will provide anonyms username and password to cast their votes and the secure mechanism to authenticate and let them cast vote and last get actual count.
So for implementing anonymous user creation, we are using UUID approach where an anonymous id will be generated for one employee and that UUID can be used as user name, and against an employee id. So UUID needs to stored flat, but employee id needs to be stored encrypted, for encryption we are using cryptography and digital signature.
Generation of anonymous username– Since we are using UUID for per user, so below is the algorithm for generation of uuid, [8]
Obtain system wide global lock
Generate timestamp, clock sequence and node id.
Get the current time with 60 bits node value.
Current node id value needs to be stored in.
Append a random number using random number generation algorithm and append to existing set.
If node id is corrupted or not matching, then generate different time sequence.
Use the generated value, as UUID, and release the lock.
Using this algorithm, generation of username will be completely anonymous, and the relation mapping needs to be saved and persisted in the form that is can be identified.
For encryption of the whole data that is flowing through the system can be encrypted using public and private key mechanism. So for that all the content even post response will be encrypted and then sent via the network, so even in the case someone sensing the data over the network, can not be able to get the actual information sent across, and one even being the admin by looking at the encrypted data, can not identify which user sent this data.
Process–
For registration process, when the admin request for a new user create request using his credential to secured server then in response voting server sends back a token that will be runtime generate session id and will be remain same for the whole user creation and will be used as encryption key, so once admin create a user, client side that information will be encrypted by the key provided on top of that whole data packet will have a digital signature that will be achieved by private key of the client and will sent to server, with key, then the whole message will be check for authenticity by using server side signature verification algorithm that uses public key and verify it the signature is valid and if it new user will be created and it will return the UUID to employee and the temp password, using that user can cast the vote and update the password. [8]
Below is the data flow that take place for the whole communication process,

Data Security Algorithm
To maintain security of the data and to provide a secure system, we are using two algorithms those will be helping two encrypt the data while in transit and will be decrypted when reached to respective end. The algorithms that we are going to use are, [3]
Advanced encryption Algorithm also known as AES.
Riverst Shamir Adleman also known as RSA algorithm
AES algorithm steps-
Use cipher and generate set of round keys.
Get state array with user input data
Add initial round key to starting of array
Perform nine iterations of user data modification
Last array data is the data that needs to send as cipher text.
The reason that the rounds have been recorded as “nine pursued by a last tenth round” is on the grounds that the tenth round includes a somewhat extraordinary control from the others.
The square to be encoded is only an arrangement of 128 bits. AES works with byte amounts so we first believer the 128 bits into 16 bytes. We state “convert,” be that as it may, in actuality, it is in all likelihood put away thusly as of now. Activities in RSN/AES are performed on a two-dimensional byte exhibit of four lines and four segments. Toward the beginning of the encryption, the 16 bytes of information, numbered D0? D15, are stacked into the cluster as appeared Table below. [4]

Each round of the encryption procedure requires a progression of ventures to change the state exhibit. These means include four sorts of activities called:
- SubBytes
- ShiftRows
- Mix columns
- XorRoundKey
And below is the flow diagram of AES algorithm,

After that encrypted data needs to be digitally signed by using RSA algorithm, Biggest befit by using RSA algorithm is that it uses public private key based approach which means the end user will encrypt the data with his public key but that message can be decrypted by someone by using his private key only, with they both are in mutual agreement, so by providing signature to the message by public key, and decoding it will read by the intended user only. [5]
RSA Algorithm,
Algorithm, Process to use RSA algorithm is as,
random primes of large values, p and q, of approx equal size such that their product n=pq is of the required bit length, e.g. 1024 bits.
Calculate n=pq and ϕ=(p−1)(q−1).
Pick integer e, 1<e<ϕ, such that gcd(e,ϕ)=1
Calculate the secret exponent d, 1<d<ϕ, such that ed≡1modϕ.
public key is (n,e) and private key (d,p,q). values d, p, q and ϕ are secret. n is known as the modulus.
e is public exponent.
d is secret exponent.
And below is the flow of RSA algorithm,

Assumption
Assumption that have been made throughout the designing of the systems, is that , there are limited and defined number of systems, those are having privilege to add user and having permission greater than what other employees will be having, and number of terminal those will be re-profile for adding new users, will be IT approved means that they won’t be storing any kind of information or data intermediate like login on which user comes what time and group id etc. and the admin users cannot take place in the contest when they are registering users for one.
Verification of Authenticity and Anonymity
During registration symmetric key pair will be sent to server in which one is public key that will be propagated and other will be private key of the user. Server envelop will have other details too related to user and once user will be created the same will be returned by the server and username and can be found back by using user private key. So in this complete communicate the data and the message that is username, password, group number and employee id all are completely secured using encryption and even in case of network attack, attacker won’t be able to view the original intended text,
Next is created username, if that is going to be the same as employee name or code in that case it would have been way easy to track which employee is voting and in favor of whom, so we have implemented UUID based username that also uses random number generation within the username, and generated user, group and username will have a mapping and that will stored against in secret store that can only be ready by the program not by human, and username password will be given to user only, and after generated username won’t make any sense apart from intended user., and all the logging and other activities trace will be done on the basis of the anonymous username only so that there will be log of the activities that has happened in the voting system, but there won’t be any trace of the actual user of it. In few of scenarios UUID is back traceable so we have also included random number generation algorithm within, so that UUID tracing also will not be helpful.
References
[1] http://etutorials.org/Networking/802.11+security.+wi-fi+protected+access+and+802.11i/Appendixes/Appendix+A.+Overview+of+the+AES+Block+Cipher/Steps+in+the+AES+Encryption+Process/
[2] Guo, H., 2011. Efficient implementation of RSA algorithm based on C language. Mod. Comput., 8: 14-14
[3] He, C. and H. Wu, 2004. Public key RSA algorithm is applied to several problems. Mod. Comput., 178: 72-74.
[4] Internet Data Center, 2011. Data encryption technology of [DB/OL]. http://zy.zhku.edu.cn/info/kcln/10/3.htm.
[5] Kahata, A., 2005. Cryptography and Network Security. Tsinghua University Press, Beijing, China.
[6] Shi, Z., 2007. Computer Network Security Tutorial. Tsinghua University Press, Beijing, China.
[7] Shi, Z., Q. Tan and H. Duan, 2008. The research and application of the RSA algorithm in the digital signature. Microcomput. Appl., 6: 50-51.
[8] UUID, https://tools.ietf.org/html/rfc4122#page-1
Whenever student needs the computer science assignment help for any subject, they can visit the BookMyEssay web portal. The writers have themselves submitted different types of assignment like: networking assignment, network security assignment in their academic life so they very well understand what students want to achieve the academic excellence. The experts improve the academic grades of project and skills through professional writing services.
Download
505
Size
140.91 KB
File Type
[contact-form-7 404 "Not Found"]