Case Study Anti-Key logging and Real-time Encrypting Software
www.brainvire.com | Š 2013 Brainvire Infotech Pvt Ltd
Page 1 of 1
Client
Requirement
Hacking techniques advanced as the technology progressed. Today, malwares silently absorb information through illicit key logging practices. In order to safeguard user applications and computers from the malicious act of information theft through recording key-pressed information, client required an application that provides a panoramic protection to its users. Client required a system that: • • • • • • • •
Possesses innovative user interface to let users view real-time encryption Acts as a defense layer between kernel and destination application Introduces to innovative high-tech cryptography methodology to protect against the toughest malware Runs with very little resources Facilitates automatic version control Is available in Premium, Pro and Trial version Supports browsers and maximum applications including chat applications Is effective for Windows Log on and Domain Log on
Keeping the client requirements in mind, we developed anti-keylogging software that uses state-of-the-art cryptography to keeps users’ information encrypted while it travels through their keyboard to the destination application. Specially used to secure the application credentials, this software is capable of defeating keyloggers by simultaneously encrypting your keystrokes at keyboard driver level. The application is deeply rooted in the system making it difficult for keyloggers to bypass encryption. This application works seamlessly in-concert with several security and authentication programs. The system applies stringent security and privacy measures and offers effortless software installation.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd
Page 2 of 2
Project
Challenges
Team faced the following challenges: •
Developing a driver that supports all functionalities of a normal keyboard. It also supports customized encryption technology to encrypt all keystrokes.
•
Developing an application to load driver on memory without any crashes. Normally, machine crashes during driver load events.
•
Kernel Level Programming in driver that provides application to load driver on machine restart.
•
Speeding up at all interfaces and instances make application flawless.
•
Developing customized encryption logic that will provide non-hackable feature to application.
•
Securing the interaction between server and application. Web authorization has been enabled with this application.
•
Designing a dynamic logic to find focus on control to make application work even more accurately.
Technologies Used Windows DDK
Provides almost all the tools that user needs for developing, building, packaging, testing, and debugging drivers.
C | Assembly Language
Basic language for driver development and communication.
Microsoft Visual Studio VC++ | MFC
Integrated tool best suited for modular architecture and iterative development of software.
NSIS
It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution. It is stable and reliable installation development tool. .NET framework 4.0, a library of cohesive classes written for VC++ | MFC.
.NET Framework
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd
Page 3 of 3
Manpower
Developers
3
Designers
1
Quality Assurance Testers
1
Planning The following development approach was adopted to equip the site with numerous features and functionality mentioned before: • Introduces high level of security and data fetching technology. • Research and analysis has been scheduled to get the actual level of output of data, which are in a form of different verticals and business logics. •
Development – High Level Coding Standards has been followed for managing backup data volume, simultaneously synchronization with server for recent updates.
• Precisely need to concentrate in sync with existing and newly available data for backup with our database for result to get generated. • The User Interface Layer, which forms the Graphical User Interface of the software and website.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd
Page 4 of 4
Driver Architecture
www.brainvire.com | Š 2013 Brainvire Infotech Pvt Ltd
Page 5 of 5
Application Architecture:-
Development Highlights:This application is meant to run on Windows XP/Vista/Win7 operating systems. It is built around C, assembly language, VC++ and .net framework 4.0. The design for each screen is implemented using the UML diagram and basic framework, which is newly integrated for high performance applications. Almost all the modules are developed using foundation, core graphics and .net frameworks. Wireframes are designed for each dialog box that appears, which is integrated with UML diagram to meet client requirements. Driver development module includes complex structure and configuration to allow application for successful communication between driver and user mode application. Kernel level programming helps application to work accurately without any crash or memory leak, but with fast performance. Further, light-version installer adds charm to this application. High resolution images with low memory use improve overall performance of the application. Customized installer helps user to use command line parameter. The application was developed and fully functional within a span of 10 months.
www.brainvire.com | Š 2013 Brainvire Infotech Pvt Ltd
Page 6 of 6