A graphical authentication system based on cognimetrics, that is built on the principle of using arbitrary objects instead of images as the "pass-phrase".
The app is currently active on -> http://christojobyantony.zapto.org:4001/auth
This implementation of NeoAuth is built on
- API -> Fast API Python
- ORM -> SQLAlchemy
- Server -> MariaDB (Or any other SQL alternative)
- Frontend -> React Typescript
- The API dependencies can be installed using poetry
poetry install
- Add at least 32 objects (SVG files) to the directory
/api/objects/
- The objects then need to be uploaded to the DB using the command > python -m api.object
- Store your database credentials under
/api/secrets/mysql_config.txt
in the format -><username>:<password>:<database>
- Generate a JWT secret key and store it under
/api/secrets/jwt_key.txt
- Now u can run the API by,
python main.py
- Install all the dependencies using
npm install
. - Update the api.tsx located in
/app/src/api.tsx
to specify API network address. - The app is ready run
npm start
Composes of 4 - 8 arbiatry objects of user choices.
An object is the image of an arbitrary and recognisable singular entity, like a car, apple, etc.
An Image is a collection of multiple objects randomly composited together using Python.
Image Set is a collection of 16 images that represent a single challenge. An image set will consist of all the objects.
The challenge is a collection of 4 or more image sets. From which the user is required to select his objects.