Code Monkey home page Code Monkey logo

Comments (12)

papermache avatar papermache commented on June 24, 2024 5

Enabling password entry at the same time as face recognition is becoming mandatory as authentication is not a priority of security rather an issue of urgency. If I really need access I can't wait for the camera to detect me. It's a make or break feature.

from howdy.

icorbrey avatar icorbrey commented on June 24, 2024 5

@boltgolt With your hesitation to use C++ maybe we could try using a different low-end language? There are several alternatives that would perform just as fast (if not faster) than plain old C++ (specifically Rust and Go come to mind).

from howdy.

musikid avatar musikid commented on June 24, 2024 1

Closed by #484.

from howdy.

boltgolt avatar boltgolt commented on June 24, 2024

I've found a doc from the fingerprint-gui module that explains how they got this principle to work.

from howdy.

magarto avatar magarto commented on June 24, 2024

If I unterstand well from case 4, typing password should stop face_detection module (if not other modules are working).

Case 4 (user has typed the password)
If the PAM module returns from its password prompt with a non empty password field the user has typed his password at the prompt. Then the module sends SIGUSR2 to the helper to stop it immediately and returns PAM_IGNORE. So the other PAM modules can check the given username/password.

from howdy.

boltgolt avatar boltgolt commented on June 24, 2024

That's what I tried to do in python, but I ran into 2 issues:

First of all, the call to the PAM conversation is interpreter-blocking. This means that when we promt for a password nothing else can run. Even separate threads will freeze.

Secondly, I can't get the PAM_IGNORE signal to pass the captured password to the other PAM modules. It's doing the exact same thing as fingerprint-gui (I've run though the source) but it just falls through to a second password prompt.

from howdy.

RussianNeuroMancer avatar RussianNeuroMancer commented on June 24, 2024

@boltgolt did you tried contact linux-pam developers about this issue?

from howdy.

boltgolt avatar boltgolt commented on June 24, 2024

I haven't, and looking at the issues page of the project it doesn't seem very active. I was working on removing the dependency in it's entirety and writing the PAM part in C++. However, i'm not that comfortable in C++ so that's on hold for now.

from howdy.

RussianNeuroMancer avatar RussianNeuroMancer commented on June 24, 2024

it doesn't seem very active

Indeed: https://sourceforge.net/p/pam-python/code/ci/19f932b71918cbcd639a26bef79e2de0c3d9d5c4/log/?path=

Maybe try this one?

https://github.com/minrk/pamela

from howdy.

dmig avatar dmig commented on June 24, 2024

sourceforge project seems dead, but here is some activity: https://github.com/Ralnoc/pam-python

from howdy.

Slackadays avatar Slackadays commented on June 24, 2024

Any progress on this? I thought Howdy was always asynchronous like this, but if it isn't, then I don't know if it's compatible with my (or @papermache's) workflow.

from howdy.

boltgolt avatar boltgolt commented on June 24, 2024

You could try the beta right now and see if it works as you would expect

from howdy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.