The Secure Data Lookup Chrome Extension is a lightweight, user-friendly tool designed to securely fetch and display data from a database. It combines the power of browser extensions, backend services, and confidential computing to deliver a seamless and secure data lookup experience. Built with JavaScript, Node.js, MySQL, and AWS Nitro Enclaves, this project aligns with industry best practices for data security and usability.
- User Authentication: Secure token-based authentication using JWT.
- Encrypted Data Transmission: Ensures data privacy with HTTPS.
- Dynamic Data Retrieval: Fetches and displays data in real time.
- Confidential Computing: Leverages AWS Nitro Enclaves for sensitive data processing.
- Easy-to-Use Interface: A simple and intuitive popup UI for data lookup.
- HTML, CSS, and JavaScript
- Chrome Extension API
- Node.js with Express.js
- MySQL for data storage
- JWT for authentication
- HTTPS for secure communication
- Parameterized SQL queries to prevent SQL injection
- AWS Nitro Enclaves for confidential computing
git clone https://github.com/yourusername/secure-data-lookup.git
cd secure-data-lookup- Install dependencies:
cd backend npm install - Configure MySQL:
- Create a database and table matching your data needs.
- Update the database configuration in
server.js:const db = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'your_database_name' });
- Start the server:
node server.js
- Open Chrome and navigate to
chrome://extensions/. - Enable Developer Mode.
- Click Load Unpacked and select the
extensionfolder from the repository.
- Open the extension by clicking the icon in your Chrome toolbar.
- Enter your query in the input box.
- Click Fetch Data to securely retrieve results from the database.
secure-data-lookup/
│
├── backend/
│ ├── server.js # Backend server for data retrieval
│ ├── package.json # Backend dependencies
│ └── .env # Environment variables (optional)
│
├── extension/
│ ├── manifest.json # Chrome extension configuration
│ ├── popup.html # UI for the extension
│ ├── popup.js # JavaScript for extension logic
│ ├── styles.css # Styles for the popup
│ └── icons/ # Extension icons
│
└── README.md # Documentation
- Token Authentication: Ensures only authorized users access the backend API.
- Parameterization: All SQL queries are parameterized to mitigate SQL injection risks.
- Encrypted Communication: Data in transit is secured with HTTPS.
- Add OAuth2 authentication.
- Enhance the UI using React and Material UI.
- Integrate more robust confidential computing features using AWS Nitro Enclaves.
- Expand database support to include PostgreSQL.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name. - Commit your changes:
git commit -m 'Add feature name'. - Push to the branch:
git push origin feature-name. - Submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or feedback, please contact:
- Name: Jacques
- GitHub: Your GitHub Profile