An authentication app using QR Codes.

Overview

QRCodeAuthenticator

An authentication app using QR Codes.

We're all familiar with logging in using QR Codes in various apps, it's simple, effective and secure. And also really interesting. So out of curiousity I decided to make my own authentication app using QR Codes.

First of all we need to create a user, on the /register page.

Screen Shot 2022-09-24 at 3 03 46 AM

As you see at the response a jwt token for the user was created, and user info is saved into the database. Screen Shot 2022-09-24 at 3 04 41 AM

Great! Now moving on to the login page, using the previous infos we generate a login token (as seen bellow)

Screen Shot 2022-09-24 at 3 08 32 AM

So now we created a user and logged in to that user account, and here comes the cool part. In order for us to generate a QR Code, we need the user ID (the index to that user in the database) and the login token we received when we logged in.

Screen Shot 2022-09-24 at 3 09 36 AM

The QR Code is returned as a base64 string, and the infos related to it are stored in the database:

Screen Shot 2022-09-24 at 3 17 11 AM

After decoding the base64 string the QR Code image is shown:

Screen Shot 2022-09-24 at 3 10 58 AM

Then we scan it..

Screen Shot 2022-09-24 at 3 42 01 AM

Now, to login using the QR Code we'll be needing the token encrypted in the image, and the device information. Screen Shot 2022-09-24 at 3 15 47 AM

The device infos are stored in the database: Screen Shot 2022-09-24 at 3 17 25 AM

And the token returned will be used to login!

Thank you for checking out my project! If you have any feedback, feel free.

You might also like...

This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do any operations that can be performed in python shell with this package.

Django execute code This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do

Nov 12, 2022

Three.js boilerplate project configured with typescript, webpack and css/style loader, HTTPS local server, and a sample test codes !!

Three.js boilerplate project configured with typescript, webpack and css/style loader, HTTPS local server, and a sample test codes !!

three.js-boilerplate Welcome, this is a three.js boilerplate project where you can clone it and start to work !!! Installed and Configured Items: Type

Jul 6, 2022

Monitor incoming SMS for SMS-codes, add them to clipboard

MacOs only. Monitors SMS for codes, adds them to the clipboard. Monitors Messages SQLite file ~/Library/Messages/chat.db for new messages, uses regexp

Sep 23, 2022

Analyzify's open-source guide & codes on Shopify Pixels & Customer Events. Follow this repo to stay up-to-date with the new pixels.

Analyzify's open-source guide & codes on Shopify Pixels & Customer Events. Follow this repo to stay up-to-date with the new pixels.

Shopify Customer Events & Shopify Pixels Shopify has announced yet another phenomenal feature: Shopify Customer Events also known as Shopify Pixels. O

Dec 8, 2022

A small web app that tries to imitate the desktop web version of amazon site, you can add items to the basket, delete them, and have your user authentication feature thanks to Firebase.

A small web app that tries to imitate the desktop web version of amazon site, you can add items to the basket, delete them, and have your user authentication feature thanks to Firebase.

Features Here's the feature's included in this project ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Login Page ๐Ÿ“ฆ Products Page ๐Ÿ›’ Cart and Checkout Page ๐Ÿ“ Sign up function with Goog

Aug 22, 2022

An example SvelteKit app implementing a simple authentication system.

An example SvelteKit app implementing a simple authentication system.

SvelteKit Auth Example An example SvelteKit app implementing a variety of authentication backends View the demo NOTE: this is very much a work in prog

Dec 30, 2022

Authentication, Permissions and Payload Rules with Nextjs using ReactJ with Typescript

Authentication, Permissions and Payload Rules with Nextjs using ReactJ with Typescript

Auth with Next.js ๐Ÿ’ฌ About Authentication, Permissions and Payload Rules with Nextjs using ReactJS with Typescript ๐Ÿšง Status Finished project โœ… โœ… Feat

Dec 7, 2022

This repository aims to create a POC about authentication and authorization using NestJS, Prisma and JWT.

A progressive Node.js framework for building efficient and scalable server-side applications. Description Nest framework TypeScript starter repository

Nov 2, 2022

How to implement Step-up Authentication using Amazon Cognito

How to implement Step-up Authentication using Amazon Cognito

How to implement Step-up Authentication using Amazon Cognito This repository contains accompanying source code for the AWS Blog post, How to implement

Dec 15, 2022
Owner
Mohamed Amine Baioumy
I code, I make music and I love space.
Mohamed Amine Baioumy
A node.js app that claims golden codes on keydrop.

KeydropAutocode Youtube Tutorial - A little outdated Leave a โญ for more updates Always update bot token when downloading a new verison of the app. Joi

Rage 49 Dec 3, 2022
Trusted timestamps that you can physically include in photos, videos and live streams using QR codes and audible data signals.

QR Date This is the reference implementation for the first version of QR Date, a signed timestamp inside a QR code that you can use to verify the date

QR Date 36 Oct 5, 2022
Twilio sample codes for inbound and outbound using sdk.

Description Twilio inbound outbound framework boilerplate. This boilerplate contains features like outbound calls, inbound calls, recordings, get reco

Harris Gurung 5 Sep 22, 2022
A tool to check for response status codes with ease

About Archer Archer is an cross-platform tool developed using Nodejs which focuses on the reconnaissance phase of a penetration test. Got a bunch of l

Umair 14 Oct 19, 2022
Contains the codes for https://SolAiNetwork.com

Solana Artificial Intelligence Network SINE is the token to get your work done using Artificial Intelligence and crowd-sourcing. We are creating a pla

null 26 Aug 1, 2022
A pure JavaScript Web Page to retrieve real-time OTP through a web page and generate/scan QR codes.

2FA-Solver A pure JavaScript Web Page to retrieve real-time OTP through a web page and generate/scan QR codes. It can be used as an offline web page b

Yuthan K 8 Dec 7, 2022
Modern Spatial Reference System Class. Supports EPSG Codes, PROJ4 String, and Well-Known Text.

spatial-reference-system Modern Spatial Reference System Class. supports EPSG Codes PROJ4 Strings ESRI and OGC Well-Known Text PRJ File install npm in

Daniel J. Dufour 6 Jul 22, 2022
A website for tracking community support for BIP21 QR codes that support on-chain and lightning bitcoin payments.

BIP21 Microsite This is a WIP microsite to promote the usage of a BIP21 payment URI QR code that can include lightning invoices or offers. Wallet supp

Stephen DeLorme 16 Nov 27, 2022
Automatic Role Adder Is Usually Used In Coding Servers Which Give Access To Codes By Subbing To Their Channel So This Helps Them To Auto Role People :)

Automatic Role Adder Setup Guide Automatic Role Adder Is Usually Used In Coding Servers Which Give Access To Codes By Subbing To Their Channel So This

NotJust 25 Dec 23, 2022
BHIMUPIJS is a npm module which can validate, verify and generate QR Codes for UPI IDs.

bhimupijs BHIMUPIJS is a npm module which can validate, verify and generate QR Codes for UPI IDs. Installation Install this npm package globally. npm

Emmadi Sumith Kumar 18 Nov 21, 2022