Academic Integrity Tech Tools
Academic Integrity Tech Tools
(Autonomous) (Autonomous)
M ylavaram, India M ylavaram, India
[email protected] [email protected],
Abstract—These days, data recovery is the most crucial useful tool to keep the evaluation process honest and fair. As it
component in many businesses. Thus, data recovery is crucial in pertains to educational assessments and hands -on lab sessions,
many situations. The keylogger, also known as keyboard capture it is critical to guarantee that student work is authentic.
or keylogging, is one of the greatest solutions for these kinds of
issues. The process of recording a keystroke on a keyboard such
that the user is unaware that their actions are being watched is
The proposed solution's central component is the smooth
known as keyboard capture. Users can recover data when a integration of a mechanism fo r taking screenshots that is
working file is damaged for a variety of circumstances, such as activated by a certain event, in this case, pressing the "enter"
power outages, by using the keylogger application. This is a key. This solution instantly takes a screenshot of the student's
surveillance program designed to monitor people who record workspace as soon as they compile and run their C program
keystrokes and extract data from log files. With the help of this by hitting "enter," thereby maintaining a visual record of their
program, we can remember lost emails or URLs. In this coding session.
keylogger project, the user is unaware that, during the The selected email address of the lab supervisor or the
designated time frame, every keystroke they make on the
designated proctor supervising the session receives this
keyboard is being recorded and emailed to the admin's email
screenshot automatically. This discrete and instantaneous
address.
transmission makes it possible to detect any instances of
Keywords— Google translators, automated message sending and plagiarism or code duplication and to act promptly. Upon
receiving, plagiarism detection, and continuous screen capture. getting the screenshot notification, the lab supervisor or
proctor has important insight into the students' in-progress
activity. This covers not only the written code but also the
I. INT RODUCT ION participant's general part icipation and behaviour during the
Our creative concept introduces a sophisticated monitoring lab. Because this method is proactive, teachers may respond to
system that acts as a watchful guardian against plagiaris m in any attempts at academic d ishonesty quickly and efficiently,
the context of online exams. One o f the main co mponents of protecting the integrity of the learning environment. By
our solution is the delimiter "esc" button used strategically. If utilizing this technology, educational establishments can
a student tries to end the exam early by hitting "esc," our discourage students from participating in immo ral activit ies
system reacts quickly, alert ing the exam monitor and starting and foster a feeling of accountability in them. It also gives
an extensive data collection procedure. The chosen monitor teachers a way to help those in need pro mptly and with advice
receives an instant alert upon detection of the "esc" command, and support, encouraging a culture of self-work and skill
giving them real-t ime situational awareness. Concurrently, our improvement. In addition, the system for capturing
technology faithfully logs every keystroke the pupil has made screenshots acts as a warn ing to students, reminding them of
before into an orderly text file. Th is file functions as a the repercussions of trying to manipulate the educational
thorough log and provides informat ion about the student's process in an illegal way. This solution's accountability and
activities throughout the test. transparency help ensure a just assessment of students'
This method guarantees that any effort to co mmit p lagiaris m abilities, freeing up teachers to concentrate on helping
or unethical behaviour is quickly detected and recorded, students develop a true grasp and mastery of the material. To
creating a safe and reliable online testing environment. We sum up, our project's novel strategy for preventing code
hope to preserve academic assessment integrity by plagiarism in lab sessions helps to foster an academic
incorporating this creative solution and giving teachers a atmosphere that values individual growth, disfavours ,
227
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
Acoustic keylogger records keyboard noises; hence, it requires By identifying and discouraging plagiaris m, this strategy seeks
specialized equipment, such as parabolic microphones, to to provide an honest and equitable learning environ ment for
record at up to a hundred feet away. This approach eliminates all students.
the need for physical access and maintenance and provides a
discreet and remote alternative to hardware keyloggers, 4a. Pynput:
however it does require specialist equip ment for sound
capture. The existing system exhibits several drawbacks. Python's pynput module is an effective tool for managing and
Firstly, the hardware keylogger demands substantial keeping track of input devices like keyboards and mice. It
maintenance and regular inspections. Its physical form makes gives developers the capacity to record keyboard and mouse
it v isible to the user of the system, laptop, or mobile device, events, mimic user inputs, and carry out a variety of
compro mising its discreetness. Moreover, the susceptibility to automation activities. Because of its simp le and easy interface,
physical breakage is a notable weakness of the hardware the library can be used for many different purposes, such as
keylogger. Another disadvantage lies in the high cost system automation, accessibility features, and testing.
associated with hardware keyloggers, coupled with the Keyboard Control: You may programmatically rep licate
requirement for a specific exp iration date. These limitations keyboard inputs by using pynput. This involves using
underscore the need for alternative solutions that address these keyboard shortcuts, typing strings, and pressing and releasing
shortcomings for more effective and sustainable monitoring keys. This feature is helpful for auto mating keyboard -
systems. intensive operations like operating apps or filling out forms.
Keyboard Event Monitoring: You may watch live keyboard
IV. PROPOSED MODEL events with this library. You can create custom actions based
on key presses, releases, and combinations by listening for
Our inventive approach introduces an advanced them. Th is functionality is useful for developing keylogger
surveillance system designed to act as a vigilant safeguard detection systems, logging keystrokes, and establishing
against plagiarism within the realm of online examinations. A keyboard-based hotkeys.
key element of our solution lies in the strategic utilizat ion of Mouse Control: Python has the ability to control the mouse as
the "ESC" button. If a student endeavors to prematurely well. Programmat ically, you can scroll, click buttons, move
conclude the exam by activating this function, our system the cursor, and carry out other mouse operations. This feature
promptly reacts, signaling the exam proctor and initiat ing an is helpful for auto mating mouse-intensive operations like
extensive data collection process. Upon the detection of the screen
"ESC" command, the assigned monitor receives an immediate scraping and GUI testing.
notification, ensuring real-t ime awareness of the unfolding Mouse Monitoring: Pynput allows you to track mouse events
situation. Simu ltaneously, our technology meticu lously in real t ime, much as keyboard tracking. You can reply
records each input made by the student, compiling a well- appropriately by keeping an ear out for mouse clicks,
organized textual dossier. Th is dossier serves as a movements, and scroll events. Building programs that need to
comprehensive log, shedding light on the student's actions analyze mouse input, such game utilit ies or systems that
throughout the entirety of the examination. This methodology monitor user behavior, can benefit fro m this functionality.
guarantees the swift identification and documentation of any Cross-Platform Co mpatibility: Pynput is engineered to
attempt at academic d ishonesty, fostering a secure and function flawlessly on a variety of operating systems, such as
dependable online testing environ ment. Through the Linu x, macOS, and Windows. This guarantees that your code
implementation of this inventive solution, we aspire to uphold is still portable and that it can function without change across
the integrity of academic assessments, providing educators different platforms.
with a valuable resource to ensure the sincerity and Event Handlers and Filters: The lib rary contains adaptable
impart iality of the evaluation process. The software keylogger mechanis ms for managing events, enabling you to process and
not only facilitates the recording of keystrokes into documents filter input events according to predetermined standards.
or text files but also enables comprehensive user monitoring Custom handlers can be attached to events to perform custom
through the capture of screenshots. This functionality expands logic in response to input events, and custom filters can be
the surveillance capability of the keylogger, allo wing fo r a defined to collect events selectively.
more thorough and visual analysis of the user's activities.
4b.smtplib:
4.1 METHODOLOGY A built-in library in Python called the smtplib module offers
features for sending emails via the Simp le Mail Transfer
Plag iarism in the classroom has been a major worry in Protocol (SMTP). It enables Python programs to establish a
recent years, especially with regard to online tests and lab connection with an SMTP server, perform any required
sessions. We suggest a thorough approach to tackle this authentication, and send emails programmatically. Since this
problem, one that makes use of important user activit ies like module is a co mponent of the standard library, using it in
clicking "enter," "esc," and keeping an eye on social media. Python programs doesn't require any other dependencies.
228
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
Establishing a Connection with an SMTP Server: Python internationalization and appropriate treat ment of non -ASCII
programs can use the smtplib SMTP class to connect to an characters.
SMTP server by utilizing the smtplib module. The SMTP Managing Attachments: Classes for generating MIM E
server's hostname and port nu mber can be specified by (Multipurpose Internet Mail Extens ions) message components,
developers. such as text, HTM L, and a variety of attach ment kinds like
Authentication: Prior to permitting users to send emails, a lot pictures, documents, and audio files, are provided by the
of SMTP servers demand authentication. Several email mime submodule.The email.mime.mult ipart is used for
authentication methods, including OAuth, login, and plain text composing mu lti-part messages.Developers can generate
authentication, are supported by the smtplib module. The mu lti-part email messages with several body portions,
credentials required to authenticate with the SMTP server can including plain text , HTM L content, and attachments, using
be supplied by developers. the MIMEMultipart class. This makes it easier to compose
Email Sending: Developers can send emails using the intricate emails with a variety of content kinds.
smtplib.SMTP class's sendmail() method when a connection Sending Email Messages: The email module does not have
has been made and authorized. The parameters fo r this method any capabilities for sending emails, however developers can
are the email message, the sender's email address, and the send email messages programmatically by combining it with
recipient's email address or addresses. the smtplib module. Developers may send emails fro m Python
Managing Attachments: By encoding file attachments as applications by using the email modu le to co mpose messages
MIME (Multipurpose Internet Mail Extensions) objects and and smtplib to connect to an SMTP server.
attaching them to the email message, the smtplib modu le
enables developers to send emails with attachments. Users can 4d email.mime:
now attach files to their emails, including documents, photos,
a In Python, the email.mime module is a submodule of the
and videos. larger email module. For the aim of developing and utilizing
TLS Encryption: The smtplib module p rovides Transport Multipurpose Internet Mail Extensions (MIME) message
Layer Security (TLS) encryption, which assures safe components, it offers classes and functions. The MIME
communicat ion between the Python program and the SMTP standard format is used to encode and represent email
server. Developers can use the smtplib's starttls() method to messages that contain multimedia, attach ments, and diverse
activate TLS encryption.Prior to authenticating with the character sets. Python programmers may create a variety of
SMTP class the mail transfer protocol server. MIME message components, including plain text, HTM L,
All things considered, the Python smtplib module offers a attachments, photos, audio files, and more, with the help of the
simp le interface for sending emails programmat ically, which email.mime module. The email.message.EmailMessage class
makes it a useful tool for a nu mber of uses, such as system can then be used to put these message components together
monitoring, email marketing, and automated notifications. into a full email message.
Among the important classes that the email.mime module
4c. email: offers are the following
1.MIM EText: This class represents a portion of a MIM E
A robust library for co mposing, interpreting, and mod ifying message that is composed entirely of plain text . Text-based
email messages is the Python email module. In order to work email messages are made with it.
with email messages, it offers classes and functions for 2.MIM EImage: An image attachment is represented by this
creating new messages, parsing ones that already exist, and class in a MIME message section. It enables developers to
extracting different parts such headers, attachments, and body send emails with picture attachments.
text. Since the email module is a co mponent of the Python 3.MIM EAudio: An audio attachment is represented by this
Standard Library, using it in Python applications does not class in a MIME message part. It lets developers send audio
need any outside dependencies. Email message is used to files as attachments in e-mail correspondence.
create email messages. Developers can use the EmailMessage 4.A base class called MIM EBase is used to create generic
class to write new email messages programmatically. A MIME message portions. It enables programmers to design
number o f attributes, including the sender, recip ient or unique MIME message segments with any kind of payload
recipients, topic, body, and and
extra headers, can be set. Email.parser.BytesParser and any kind of information
email.parser are t wo methods emp loyed to parse email 5.MIM EMu ltipart: This class is used to represent a MIME
messages. Developers can parse raw email messages from message part that has several smaller parts. Email messages
string or byte input by using parser classes. They are ab le to with many parts can be created using it and can contain text,
get data from the message, including attachments, body text, HTML, attachments, and other sorts of material.
and headers.
Changing Email Headers: Email headers can be changed in
accordance with MIME specifications by using the functions
provided by the email.header module. This guarantees
229
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
4e. re: an attachment in an email by the system to the proctor. The
prompt notification allows the proctor to take immediate
Working with regular exp ressions, which are effective tools action and investigate any potential plag iarism or irregularit ies
for text modification and pattern matching, is supported by detected during the exam.
Python's re module. Character co mbinations in strings can be
matched using regular expressions, which are patterns. They 4.1.2 Plagiarism Detection in Lab Session Code:
can be applied to tasks like string validation, replacement, and
search according to predefined criteria or patterns. The system incorporates a feature where it captures a
1.Pattern Matching: Start a string by looking for a pattern screenshot each time the "enter" key is pressed during lab
using the re.match() function. It produces a match object if the sessions, particularly when students are required to write
pattern is detected; if otherwise, it returns None. concise code passages. Subsequently, these screenshots are
2.Search and Replace: You can use the re.sub() function to saved and attached to an email, which is addressed to the
look for a pattern in a string and then swap it out for a proctor or lab supervisor. In terms of checking for plagiarized
different string. Tasks involving text substitution frequently code, the proctor gains a quick overview of situations where
make use of this method. students may be copying code upon receiving the email
3. Pattern Co mpilat ion: To create a regular expression object containing the screenshots. This rapid detection allows the
that can be used for matching operations, a regular expression proctor to intervene promptly, address the issue, and uphold
pattern must first be co mp iled using the re.co mp ile() function. the integrity of the learning process .
For repeated matching operations, efficiency can be enhanced
by compiling a regular expression pattern. 4.1.3 Identifying Plagiarism on Social Media:
4.Grouping and capture: Using parentheses () in the pattern,
regular expressions facilitate the grouping and capture of During exam sessions, the system is configured to monitor
matched substrings. Groups in the match object can be messaging platforms such as Instagram and WhatsApp,
accessed analyzing instances of the "enter" key being pressed, often
by name or index. signaling message activity. To address potential language
5.Character Classes: Character classes let you match particular variations, the system emp loys translators to convert messages
character sets, and regular expressions support them. As an into English, ensuring consistency in the communication
illustration, the characters \d, \w, and \s correspond to any format received by the proctor. Immediate alerts are triggered
character that is a digit, a word, or a whitespace. for any suspicious communication behavior, with the
6.Quantifiers: With quantifiers, you can indicate the number translated message included in an email forwarded to the
of times a character or group needs to match. As an proctor for further investigation. This co mprehensive
illustration, the symbols *, +, and? correspond to zero or approach enables timely intervention, upholding the integrity
more, one, or more, and zero or one occurrence, respectively. of the exam environ ment by addressing potential irregularit ies
7.Anchors: Anchors are used to indicate where in the string related to messaging activities during exams.
the pattern is to be placed. As an example, ^ denotes the first
letter of the string, $ denotes its end, and \b denotes a word 4.1.4 Follow-up and Proctor Intervention:
boundary.
8.Flags: Regular exp ression pattern behavior can be altered Pro mpt Reaction: Proctors are notified in real-time, enabling
using flags, which are supported by the re module. For them to take immediate action and address any potential
instance, case-insensitive matching can be carried out with the plagiarism incidents promptly.
re.IGNORECASE flag. Inquiry and Resolution: Subsequently, proctors initiate an
inquiry into the claimed plagiaris m utilizing the provided data,
including screenshots, translated messages, and keystroke
4.1.1 Plagiarism detection in online exams logs. The severity of the offense dictates the appropriate
procedures, which may encompass warnings, counseling, or
Using the "esc" button as a delimiter, the system focuses disciplinary penalties, ensuring a tailored response to each
on tracking significant events during an online exam. If a
case.
student attempts to conclude the exam prematurely by
This concept provides a solid foundation for proactively
pressing the "esc" key, the system activates an alarm and
tackling plagiarism in educational settings. Our approach,
notifies the proctor. Simu ltaneously, every keystroke made up
which co mbines behavioural indicators, visual proof, and
to that point is recorded in a text document for further
mu ltilingual monitoring, enables instructors to effectively
examination.
maintain academic integrity. It fosters a culture of honesty and
Data logging and notification play a crucial ro le in mon itoring
responsibility among students while provid ing proctors with
students during the exam. The captured keystrokes offer
the tools they need to enforce fair academic practices. Th is
insights into the student's actions throughout the test,
methodology's ongoing refin ing and adaption will help to
providing a detailed record of their activit ies. This in formation
build a trustworthy and secure educational ecosystem.
is comp iled into a text file, which is then automatically sent as
230
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
Keyloggers, according to Arjun Singh, Pushpa to the administrator's email address, the keylogger's host
Choudhary, Akhilesh Ku mar Singh, and Dheerendra Ku mar machine needs to be online in order for it to operate.
Tyagi,[5] are a type of rootkit malware that records keystroke
events from the console and saves them into a log file. As a 5.2 Examining procedures:
result, it can obtain sensitive info rmation like usernames,
passwords, and PINs and commun icate with vengeful Keyloggers monitor user activity using a variety of
attackers without attracting the attention of users. Keyloggers methods, such as recording keystrokes, identify ing delimiter
pose a serious risk to transactions and personal activit ies actions such hitting the "ESC" key, and translating text into
including online banking, email correspondence, e-business, English. Key loggers give administrators important insights
and framework data bases. Typically, antivirus software is into user behavior and system interactions by continuously
used to locate and remove known keyloggers. Ho wever, it is recording keyboard inputs.
unable to identify unusual Keyloggers .
5.3 Mechanisms for Data Transmission:
V. ARCHITECRURE
Reliable co mmun ication protocols, such SMTP, are
necessary for the keylogger to transmit mon itored data to the
administrator. The keylogger ensures timely and secure
transfer of sensitive information by sending the gathered data
to the administrator's email address upon detecting
predetermined actions or intervals.
231
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
The keylogger init iates its operations when the admin istrator 'ESC,' all the in formation mon itored prio r to this action is
executes the keylogger program on the targeted system for instantly sent to the EMAIL o f the administrator. Th is
monitoring purposes. Once the keylogger program is launched functionality allows for a thorough overview of user
on the system, it co mmences monitoring the activities of the interactions leading up to the 'ESC' key p ress, enabling
specified user. For effective functioning, the system needs to meticulous monitoring and analysis of user activity.
be connected to the internet, as all the monitored in formation
is transmitted to the ad min istrator's email. The keylogger
captures keyboard events initiated by the user, logging them
into a text file. When the user presses the delimiter 'ESC,' all
informat ion monitored before this action is transmitted to the
administrator. Additionally, if the language in the text file is
not English, the keylogger translates the content into English
before sending the information to the ad min istrator. In the
keylogger progra m, the SMTP (Simp le Mail Transfer
Protocol) library plays a crucial role in facilitating the sending
of emails to the administrator. The integration of the SMTP Fig.3.screenshot of the mail send to administrator
lib rary enhances the program's ability to transmit monitored
informat ion seamlessly to the designated admin email address. Fro m fig 3 we observe the inclusion of a screenshot in the
SMTP is a standard protocol for email trans mission, and its email sent to the admin istrator. The file transmitted to the
incorporation ensures efficient and reliable co mmunication administrator's email is in the image format, specifically PNG.
between the keylogger and the administrator. This feature This is a d irect outcome of the key logger's functionality,
strengthens the overall functionality of the keylogger program capturing a screenshot whenever the 'ENTER' key is pressed.
by providing a secure and established method for delivering The captured screenshot provides a visual representation of
the collected data to the intended recipient. the user's activities, and this image file in PNG format is then
included in the email for analysis and review by the
administrator.
232
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.
The software key logger operates by intercepting and capturing [15] L. S. Li, Z. M. Fauzee, N. Zamin, N. Kamarudin, N. A. Sabri and N. S.
data fro m keyboard strokes, storing this information in a text N. A. Aziz, "An encrypted log file Keylogger system for parental
control", Int. J. Eng. Technol., vol. 7, no. 2, 2018.
file. This process continues until the user presses the 'ESC'
button, signifying the end of data capture. The keylogger
focuses on reading individual characters, subsequently storing
them in the text file, providing a comprehensive record of the
user's keyboard input. Additionally, here is a screenshot
illustrating how the data is recorded in the text file
VII. CONCLUSION
VIII. REFERENCES
[1]T om Olzak, Keystroke Logging, 27 December 2016
[2] Ahsan Wajahat, Azhar Imran, Jahanzaib Latif, Ahsan Nazir, Anas Bilal ,
A Novel Approach of Unprivileged Keylogger Detection, 2019
International Conference on Computing, Mathematics and Engineering
T echnologies.
[3] Arun Pratap Singh,Vaishali Singh, Infringement of Prevention Technique
against Keyloggers using Sift Attack, Conference in 2018.
[4] Stefano Ortolani, Cristiano Giuffrida, and Bruno Crispo, Unprivileged
Black-Box Detection of User-Space Keyloggers, 40 IEEE
T RANSACT IONS ON DEPENDABLE AND SECURE COMPUTING,
VOL. 10, NO. 1, JANUARY/FEBRUARY 2013.
[5] Arjun Singh, Pushpa Choudhary, Akhilesh kumar singh ,Dheerendra
kumar tyagi, Keylogger Detection and Prevention, Journal of Physics:
Conference Series.
[6] V. Garg and R. Aggarwal, "Detection and prevention of keylogger using
improved encryption technique," 2017 International Conference on
Electrical, Electronics, Communication, Computer, and Optimization
T echniques (ICEECCOT), IEEE, 2017.
[7] A. K. P. Jain and A. Tyagi, "Design and development of user keystroke
dynamics based encryption technique to detect and prevent keyloggers,"
2014 International Conference on Computing for Sustainable Global
Development (INDIACom), IEEE, 2014.
[8] M. Al-Salami, A. K. Muda, and M. K. Khan, "Keylogger detection: A
review," 2013 IEEE Symposium on Computers & Informatics (ISCI),
IEEE, 2013.
[9] M. Gupta, A. Walia, and R. K. Chauhan, "Implementation of keylogger
protection system using cryptographic techniques," 2013 International
Conference on Communication Systems and Network T echnologies
(CSNT ), IEEE, 2013.
[10] S. Moses, J. Mercado, A. Larson and D. Rowe, "Touch interface and
keylogging malware", 2016.
[11] P. Sahu and P. T uli, "System Monitoring and Security Using
Keylogger", Ijcsmc, vol. 2, no. 3, 2013.
[12] A. Solairaj, S. C. Prabanand, J. Mathalairaj, C. Prathap and L. S.
Vignesh, "Keyloggers software detection techniques", 2016.
[13] M. mehdi dadkhah, Davarpanah Jazi, A.-M. Ciobotaru and E. Barati, "An
Introduction to Undetectable Keyloggers with Experimental
T esting", Int. J. Comput. Commun. Networks, vol. 4, no. 3, 2014.
[14] N. Pathak, A. Pawar and B. Patil, "A Survey on Keylogger : A malicious
Attack", Int. J. Adv. Res. Comput. Eng. Technol., vol. 4, no. 4, 2015.
233
Authorized licensed use limited to: Modern Education Society's Wadia College of Engineering. Downloaded on October 01,2024 at 05:29:46 UTC from IEEE Xplore. Restrictions apply.