[Dovecot] using one-time passwords
Johannes Berg
johannes at sipsolutions.de
Mon May 17 06:44:54 EEST 2004
On Mon, 2004-05-17 at 02:24, Timo Sirainen wrote:
> I didn't really understand how libpam-opie works. Does it require some
> special client or how does it tell the seed/sequence? Or doesn't it?
For setting the password, it tells you the seed/sequence (will refer to
that as s/s for now). You then calculate md5^sequence(key) (apply md5
sequence times) and give that to the server. It stores it, and lets you
log in the next time if you can give it md5^(sequence-1)(key). If you
really want to know the gory details -> s/key in opie(4).
Opie uses this inside pam by just making the query string "opie: s/s"
(similar, not identical to that) instead of "Password:".
> But sure, Cyrus SASL has AUTH=OTP mechanism, we could be compatible with
> that.
Would have to investigate that SASL mechanism.
> Want to write it? :) Shouldn't be hard to plug into Dovecot, I
> just don't really have time right now.
Sure.
> The OTP-data could be stored in same way as
> PASSDB_CREDENTIALS_DIGEST_MD5. Except the code doesn't currently allow
> multiple credentials per user, it only uses the beginning of the
> password field to specify the password type, eg. "{PLAIN}password",
> "{DIGEST-MD5}digest-md5-credentials", etc. I guess I should do something
> about that..
I don't think that matters. In opie, that could be:
{OTP}sequence seed md5 date
or something. You really only need to store one tuple of data per user.
> 1.0-test9 supports "ssl_verify_client_cert" option, but then it always
> requires it ..
Yeah, I've seen that,...
> hmm. maybe with it enabled the configuration could
> support something like:
>
> auth default {
> mechanisms = plain
> ..
> ssl_require_client_cert = yes
> }
>
> auth otp {
> mechanisms = otp
> ..
> ssl_require_client_cert = no
> }
>
> Yes, that looks good, I'll implement that.
but that looks perfect :-)
> One problem is that it also gives the possibility to modify the mailbox
> which isn't very good. From my TODO:
Good point! Hadn't thought of that so far.
Thanks for your answer. I'll be looking at SASL OTP, and dovecot source.
johannes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: This is a digitally signed message part
URL: <http://dovecot.org/pipermail/dovecot/attachments/20040517/77d14a05/attachment-0001.bin>
More information about the dovecot
mailing list