SlideShare a Scribd company logo
Keylogging-resistant Visual
Authentication Protocols
Vishnu U
Roll :58
S7CSE
Contents
 Introduction
 System and threat model
 Protocols
 Handling issues related to this protocol
 Security analysis
 Conclusion
Introduction
• A keylogger is a software designed to capture all of a user’s keyboard strokes, and then make use
of them to impersonate a user in financial transactions.
• For example whenever a user types in her password in a bank’s sign in box, the keylogger
intercepts the password. The threat of such keyloggers is pervasive and can be present both in
personal computers and public kiosks.
• Human user’s involvement in the security protocol is sometimes necessary to prevent this type of
attacks
Contd..
• visualization can enhance not only security but also usability by proposing two visual
authentication protocols. One for password-based authentication and other for one-time-
password based authentication.
System and Threat Model
• In this system model it consists of four different entities which are a user, a smartphone, a user’s
terminal and a server. The user is an ordinary human, user’s terminal is a desktop computer or a
laptop.
• The third system entity is a smartphone which is equipped with a camera and stores a public key
certificate of the server for digital signature verification
Password based authentication protocol
1)The user connects to the server and sends her ID.
2) The server checks the ID to retrieve the user’s public key (PKID) from the database. The server then
picks a fresh random string OTP and encrypts it with the public key to obtain EOTP = EncrPKID (OTP).
3) In the terminal, a QR code QREOTP is displayed prompting the user to type in the string.
Contd..
4) The user decodes the QR code with EOTP =QRDec(QREOTP ). Because the random string is
encrypted with user’s public key (PKID), the user can read the OTP string only through the smartphone
by OTP = Decrk(EOTP ) and type in the OTP in the terminal with a physical keyboard.
5) The server checks the result and if it matches what the server has sent earlier, the user is
authenticated Otherwise, the user is denied.
In this protocol, OTP is any combination of alphabets or numbers whose length is 4 or more depending
on the security level required.
Keylogging resistant visual authentication Protocols
An Authentication Protocol with Password
and Randomized Onscreen Keyboard
1) The user connects to the server and sends user’s ID.
2) The server checks the received ID to retrieve the user’s public key (PKID) from the
database. The server prepares , a random permutation of a keyboard arrangement, and
encrypts it with the public key to obtain EKBD=EncrPKID ().
3)Then, it encodes the cipher text with QR encoder to obtain QREKBD =QREnc(EkID ()). The
server sends the result with a blank keyboard.
3) In the user’s terminal, a QR code (QREKBD) is displayed together with a blank keyboard. Now, the
user executes her smartphone application which first decodes the QR code by applying
QRDec(QREKBD) to get the cipher text (EKBD).
4) The cipher text is then decrypted by the smartphone application with the private key of the user to
display the result (=DecrSKID(EKBD)) on the smartphone’s screen.
Contd..
4) When the user sees the blank keyboard with the QR code through an application on the
smartphone that has a private key, alphanumeric appear on the blank keyboard and the user can click
the proper button for the password.
5)Then the user types in her password on the terminal’s screen while seeing the keyboard layout
through the smartphone. The terminal Identities of the buttons clicked by the user are sent to the
server by the terminal.
Contd..
Keylogging resistant visual authentication Protocols
Keylogging resistant visual authentication Protocols
Keylogging resistant visual authentication Protocols
High level description
• 01: user::user.send(server, id)
• 02: server::__upon_id_arrival:
• 03: if(server.verify(id) == true):
• 04: pkid = server.db.find(id)
• 05: pi = server.generate_random_kb()
• 06: ekbd = server.encrypt(pkid, pi)
• 07: qrekbd = server.qrencode(ekbd)
• 08: server.send(user, qrekbd)
• 09: terminal::__upon_qrekbd_arrival:
• 10: terminal.view(qrekbd)
• 11: terminal.view_blank_kb(pi)
• 12: smartphone::__upon_qrekbd_view:
• 13: qrekbd = smartphone.capture(qrekbd)
• 14: ekbd = smartphone.qrdecode(qrekbd)
• 15: pi = smartphone.decrypt(skid, ekbd)
• 16: smartphone.view(pi)
• 17: user::__upon_pi_view:
• 18: pw = user.inputpassword(terminal)
• 19: terminal::upon_pw_input:
• 20: terminal.send(server, pw)
Contd..
• 21: server::__upon_pw_arrival:
• 22: if(server.verify(id, pw) == true):
• 23: server.authenticate(user)
• 24: else:
• 25: server.deny(user)
Contd..
How to handle several issues related to this protocols
Password Hashing
Passwords are usually stored in a hashed form with a salt to prevent server attacks.
In Protocol 2, we can easily support this password hashing by making the server compare the password hash
computed from the stored salt value and the transferred password after decrypting it with the stored
password hash value.
Message signing
To prevent the terminal from misrepresenting the contents generated by the server, one can
establish the authenticity of the server and the contents generated by it by adding the following
verification process.
When the server sends the random permutation to the user, it
signs the permutation using the server’s private key and the resulting signature is encoded in a QR
code. Before decrypting the contents, the user establishes the authenticity of the contents verifying
the signature against the server’s public key
Theft of Smartphone
In Protocol 1, theft of smartphone means that the attacker has total control over user’s account if the attacker
knows the user’s ID.
Protocol1 can be regarded as an authentication protocol requiring only one security token (a smaprtphone) and
focusing on user convenience.
in Protocol 2, it is not easy to sign in or to make valid transaction requests successfully because it requires not
only the smartphone but also the password.
SECURITY ANALYSIS
Protocol 1
Authentication in this protocol is solely based on a random string
generated by the server.
The random string is encrypted by the public key of the user, and verified
against her private key.
Protocol 2
A blank keyboard is posted on the terminal whereas a randomized
keyboard with the alphanumeric on it is posted on the smartphone.
Because the protocol does not require the user to do any keyboard
input on the smartphone side, the protocol is immune against the
key logger attack.
The user just checks the keyboard layout on the phone and there is no input from a
user. Obviously, the terminal might be compromised, but the keylogger will be able
to only capture what keystrokes are used on the blank keyboard. Thus, the keylogger
will not be able to know which alphanumeric characters are being clicked.
CONCLUSION
In this protocols that not only improve the user experience but also resist challenging
attacks, such as the keylogger and malware attack.
Using user driven visualization improves security and user friendliness
These protocols utilize simple technologies available in most out-of-the-box smartphone
devices.
[1] —. Google authenticator. http://code.google.com/p/
google-authenticator/.
[2] —. Rsa securid. http://www.emc.com/security/rsa-securid.htm.
[3] Cronto. http://www.cronto.com/.
[4] —. BS ISO/IEC 18004:2006. information technology. automatic identification
and data capture techniques. ISO/IEC, 2006.
[5] —. ZXing. http://code.google.com/p/zxing/, 2011.
[6] D. Boneh and X. Boyen. Short signatures without random oracles. In
Proc. of EUROCRYPT, pages 56–73, 2004.
[7] J. Bonneau, C. Herley, P. C. Van Oorschot, and F. Stajano. The quest
to replace passwords: A framework for comparative evaluation of web
authentication schemes. In Security and Privacy (SP), 2012 IEEE
Symposium on, pages 553–567. IEEE, 2012
REFERENCES
Keylogging resistant visual authentication Protocols
Keylogging resistant visual authentication Protocols

More Related Content

PDF
2FYSH: two-factor authentication you should have for password replacement
PDF
Moving ATM Applications to Smartphones with a Secured PinEntry Methods
PPTX
iGUARD: An Intelligent Way To Secure - Presentation
PDF
Camera based attack detection and prevention tech niques on android mobile ph...
PDF
One-Time Password
PDF
IRJET- Implementation of Secured ATM by Wireless Password Transfer and Keypad...
DOCX
Centers for Disease Control and Prevention
PPTX
11.bluetooth security
2FYSH: two-factor authentication you should have for password replacement
Moving ATM Applications to Smartphones with a Secured PinEntry Methods
iGUARD: An Intelligent Way To Secure - Presentation
Camera based attack detection and prevention tech niques on android mobile ph...
One-Time Password
IRJET- Implementation of Secured ATM by Wireless Password Transfer and Keypad...
Centers for Disease Control and Prevention
11.bluetooth security

What's hot (20)

PDF
IRJET- SteganoPIN:Two Faced Human-Machine Interface for Practical Enforcement...
PDF
IRJET- Arduino Based Entrance Monitoring System using RFID and Real Time ...
PDF
Bg24375379
PDF
Cryptanalaysis of an EPCC1G2 Standard Compliant Ownership Transfer Scheme Jor...
PDF
A MODEL FOR REMOTE ACCESS AND PROTECTION OF SMARTPHONES USING SHORT MESSAGE S...
PPT
Access control basics-2
PDF
F0391041048
PDF
CIS14: Zen and the Art of Cloud Adoption—a Practitioner’s Viewpoint on Findin...
PPT
Access control basics-3
PPTX
Ethical hacking
PDF
An Enhancement of Authentication Protocol and Key Agreement (AKA) For 3G Mobi...
PDF
INNOVATIVE AUTOMOBILE SECURITY SYSTEM USING VARIOUS SECURITY MODULES
PDF
Report of Advance car security system major project
PDF
FINGERPRINT BASED LOCKER WITH IMAGE CAPTURE
PDF
Design of Banking Security System Using Mems And Rfid Technology
PPTX
Desgn&imp authentctn.ppt by Jaseela
PDF
VOIP2DAY 2015: "WebRTC security concerns, a real problem?"
PDF
Security and identity management on WebRTC
PDF
IoT and Fingerprint Based Door Looking System
IRJET- SteganoPIN:Two Faced Human-Machine Interface for Practical Enforcement...
IRJET- Arduino Based Entrance Monitoring System using RFID and Real Time ...
Bg24375379
Cryptanalaysis of an EPCC1G2 Standard Compliant Ownership Transfer Scheme Jor...
A MODEL FOR REMOTE ACCESS AND PROTECTION OF SMARTPHONES USING SHORT MESSAGE S...
Access control basics-2
F0391041048
CIS14: Zen and the Art of Cloud Adoption—a Practitioner’s Viewpoint on Findin...
Access control basics-3
Ethical hacking
An Enhancement of Authentication Protocol and Key Agreement (AKA) For 3G Mobi...
INNOVATIVE AUTOMOBILE SECURITY SYSTEM USING VARIOUS SECURITY MODULES
Report of Advance car security system major project
FINGERPRINT BASED LOCKER WITH IMAGE CAPTURE
Design of Banking Security System Using Mems And Rfid Technology
Desgn&imp authentctn.ppt by Jaseela
VOIP2DAY 2015: "WebRTC security concerns, a real problem?"
Security and identity management on WebRTC
IoT and Fingerprint Based Door Looking System
Ad

Similar to Keylogging resistant visual authentication Protocols (20)

PDF
IRJET - Three Layered Security for Banking
DOC
87559489 auth
PPTX
Two factor authentication.pptx
PPTX
How to do right cryptography in android part 3 / Gated Authentication reviewed
PDF
A secure communication in smart phones using two factor authentications
PDF
A secure communication in smart phones using two factor authentication
PPTX
E voting authentication with qr-codes
PDF
A Review Study on Secure Authentication in Mobile System
PDF
Two Factor Authentication Using Smartphone Generated One Time Password
DOCX
Fingerprint based transaction system
PDF
Security for automation in Internet of Things by using one time password
PDF
120 i143
PDF
Narrative of digital signature technology and moving forward
PDF
Secure3 authentication for sensitive data on cloud using textual, chessboard ...
PDF
AN ENHANCED SECURITY FOR GOVERNMENT BASE ON MULTIFACTOR BIOMETRIC AUTHENTICATION
PDF
AN ENHANCED SECURITY FOR GOVERNMENT BASE ON MULTIFACTOR BIOMETRIC AUTHENTICATION
PDF
IRJET- Two Way Authentication for Banking Systems
PDF
IRJET- Multi sharing Data using OTP
PDF
IRJET- Security Empowerment using QR Code and Session Tracking for Cued R...
PDF
Advanced Security System for Bank Lockers using Biometric and GSM
IRJET - Three Layered Security for Banking
87559489 auth
Two factor authentication.pptx
How to do right cryptography in android part 3 / Gated Authentication reviewed
A secure communication in smart phones using two factor authentications
A secure communication in smart phones using two factor authentication
E voting authentication with qr-codes
A Review Study on Secure Authentication in Mobile System
Two Factor Authentication Using Smartphone Generated One Time Password
Fingerprint based transaction system
Security for automation in Internet of Things by using one time password
120 i143
Narrative of digital signature technology and moving forward
Secure3 authentication for sensitive data on cloud using textual, chessboard ...
AN ENHANCED SECURITY FOR GOVERNMENT BASE ON MULTIFACTOR BIOMETRIC AUTHENTICATION
AN ENHANCED SECURITY FOR GOVERNMENT BASE ON MULTIFACTOR BIOMETRIC AUTHENTICATION
IRJET- Two Way Authentication for Banking Systems
IRJET- Multi sharing Data using OTP
IRJET- Security Empowerment using QR Code and Session Tracking for Cued R...
Advanced Security System for Bank Lockers using Biometric and GSM
Ad

Recently uploaded (20)

PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
Cell Types and Its function , kingdom of life
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Classroom Observation Tools for Teachers
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Complications of Minimal Access Surgery at WLH
PDF
01-Introduction-to-Information-Management.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
GDM (1) (1).pptx small presentation for students
PDF
Pre independence Education in Inndia.pdf
PDF
Sports Quiz easy sports quiz sports quiz
PPTX
Pharma ospi slides which help in ospi learning
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Anesthesia in Laparoscopic Surgery in India
O5-L3 Freight Transport Ops (International) V1.pdf
Microbial disease of the cardiovascular and lymphatic systems
Cell Types and Its function , kingdom of life
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Classroom Observation Tools for Teachers
Module 4: Burden of Disease Tutorial Slides S2 2025
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Complications of Minimal Access Surgery at WLH
01-Introduction-to-Information-Management.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
TR - Agricultural Crops Production NC III.pdf
GDM (1) (1).pptx small presentation for students
Pre independence Education in Inndia.pdf
Sports Quiz easy sports quiz sports quiz
Pharma ospi slides which help in ospi learning
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape

Keylogging resistant visual authentication Protocols

  • 2. Contents  Introduction  System and threat model  Protocols  Handling issues related to this protocol  Security analysis  Conclusion
  • 3. Introduction • A keylogger is a software designed to capture all of a user’s keyboard strokes, and then make use of them to impersonate a user in financial transactions. • For example whenever a user types in her password in a bank’s sign in box, the keylogger intercepts the password. The threat of such keyloggers is pervasive and can be present both in personal computers and public kiosks. • Human user’s involvement in the security protocol is sometimes necessary to prevent this type of attacks
  • 4. Contd.. • visualization can enhance not only security but also usability by proposing two visual authentication protocols. One for password-based authentication and other for one-time- password based authentication.
  • 5. System and Threat Model • In this system model it consists of four different entities which are a user, a smartphone, a user’s terminal and a server. The user is an ordinary human, user’s terminal is a desktop computer or a laptop. • The third system entity is a smartphone which is equipped with a camera and stores a public key certificate of the server for digital signature verification
  • 6. Password based authentication protocol 1)The user connects to the server and sends her ID. 2) The server checks the ID to retrieve the user’s public key (PKID) from the database. The server then picks a fresh random string OTP and encrypts it with the public key to obtain EOTP = EncrPKID (OTP). 3) In the terminal, a QR code QREOTP is displayed prompting the user to type in the string.
  • 7. Contd.. 4) The user decodes the QR code with EOTP =QRDec(QREOTP ). Because the random string is encrypted with user’s public key (PKID), the user can read the OTP string only through the smartphone by OTP = Decrk(EOTP ) and type in the OTP in the terminal with a physical keyboard. 5) The server checks the result and if it matches what the server has sent earlier, the user is authenticated Otherwise, the user is denied. In this protocol, OTP is any combination of alphabets or numbers whose length is 4 or more depending on the security level required.
  • 9. An Authentication Protocol with Password and Randomized Onscreen Keyboard 1) The user connects to the server and sends user’s ID. 2) The server checks the received ID to retrieve the user’s public key (PKID) from the database. The server prepares , a random permutation of a keyboard arrangement, and encrypts it with the public key to obtain EKBD=EncrPKID (). 3)Then, it encodes the cipher text with QR encoder to obtain QREKBD =QREnc(EkID ()). The server sends the result with a blank keyboard.
  • 10. 3) In the user’s terminal, a QR code (QREKBD) is displayed together with a blank keyboard. Now, the user executes her smartphone application which first decodes the QR code by applying QRDec(QREKBD) to get the cipher text (EKBD). 4) The cipher text is then decrypted by the smartphone application with the private key of the user to display the result (=DecrSKID(EKBD)) on the smartphone’s screen. Contd..
  • 11. 4) When the user sees the blank keyboard with the QR code through an application on the smartphone that has a private key, alphanumeric appear on the blank keyboard and the user can click the proper button for the password. 5)Then the user types in her password on the terminal’s screen while seeing the keyboard layout through the smartphone. The terminal Identities of the buttons clicked by the user are sent to the server by the terminal. Contd..
  • 15. High level description • 01: user::user.send(server, id) • 02: server::__upon_id_arrival: • 03: if(server.verify(id) == true): • 04: pkid = server.db.find(id) • 05: pi = server.generate_random_kb() • 06: ekbd = server.encrypt(pkid, pi) • 07: qrekbd = server.qrencode(ekbd) • 08: server.send(user, qrekbd) • 09: terminal::__upon_qrekbd_arrival: • 10: terminal.view(qrekbd)
  • 16. • 11: terminal.view_blank_kb(pi) • 12: smartphone::__upon_qrekbd_view: • 13: qrekbd = smartphone.capture(qrekbd) • 14: ekbd = smartphone.qrdecode(qrekbd) • 15: pi = smartphone.decrypt(skid, ekbd) • 16: smartphone.view(pi) • 17: user::__upon_pi_view: • 18: pw = user.inputpassword(terminal) • 19: terminal::upon_pw_input: • 20: terminal.send(server, pw) Contd..
  • 17. • 21: server::__upon_pw_arrival: • 22: if(server.verify(id, pw) == true): • 23: server.authenticate(user) • 24: else: • 25: server.deny(user) Contd..
  • 18. How to handle several issues related to this protocols Password Hashing Passwords are usually stored in a hashed form with a salt to prevent server attacks. In Protocol 2, we can easily support this password hashing by making the server compare the password hash computed from the stored salt value and the transferred password after decrypting it with the stored password hash value.
  • 19. Message signing To prevent the terminal from misrepresenting the contents generated by the server, one can establish the authenticity of the server and the contents generated by it by adding the following verification process. When the server sends the random permutation to the user, it signs the permutation using the server’s private key and the resulting signature is encoded in a QR code. Before decrypting the contents, the user establishes the authenticity of the contents verifying the signature against the server’s public key
  • 20. Theft of Smartphone In Protocol 1, theft of smartphone means that the attacker has total control over user’s account if the attacker knows the user’s ID. Protocol1 can be regarded as an authentication protocol requiring only one security token (a smaprtphone) and focusing on user convenience. in Protocol 2, it is not easy to sign in or to make valid transaction requests successfully because it requires not only the smartphone but also the password.
  • 21. SECURITY ANALYSIS Protocol 1 Authentication in this protocol is solely based on a random string generated by the server. The random string is encrypted by the public key of the user, and verified against her private key.
  • 22. Protocol 2 A blank keyboard is posted on the terminal whereas a randomized keyboard with the alphanumeric on it is posted on the smartphone. Because the protocol does not require the user to do any keyboard input on the smartphone side, the protocol is immune against the key logger attack.
  • 23. The user just checks the keyboard layout on the phone and there is no input from a user. Obviously, the terminal might be compromised, but the keylogger will be able to only capture what keystrokes are used on the blank keyboard. Thus, the keylogger will not be able to know which alphanumeric characters are being clicked.
  • 24. CONCLUSION In this protocols that not only improve the user experience but also resist challenging attacks, such as the keylogger and malware attack. Using user driven visualization improves security and user friendliness These protocols utilize simple technologies available in most out-of-the-box smartphone devices.
  • 25. [1] —. Google authenticator. http://code.google.com/p/ google-authenticator/. [2] —. Rsa securid. http://www.emc.com/security/rsa-securid.htm. [3] Cronto. http://www.cronto.com/. [4] —. BS ISO/IEC 18004:2006. information technology. automatic identification and data capture techniques. ISO/IEC, 2006. [5] —. ZXing. http://code.google.com/p/zxing/, 2011. [6] D. Boneh and X. Boyen. Short signatures without random oracles. In Proc. of EUROCRYPT, pages 56–73, 2004. [7] J. Bonneau, C. Herley, P. C. Van Oorschot, and F. Stajano. The quest to replace passwords: A framework for comparative evaluation of web authentication schemes. In Security and Privacy (SP), 2012 IEEE Symposium on, pages 553–567. IEEE, 2012 REFERENCES