((p "When" " " "someone" " " "tries" " " "to" " " "authenticate" " " "itself" " " "with" " " "an" " " "user" " " "identifier" " " "/" " " (@L (@H "“") "user" " " "name" (@H "”")) " " "and" " " "a" " " "password," " " "the" " " "following" " " "process" " " "is" " " "executed:") (ol (li "If" " " "meta" " " "key" " " (kbd "owner") " " "of" " " "the" " " "configuration" " " "zettel" " " "does" " " "not" " " "have" " " "a" " " "valid" " " (a (@ (href . "00001006050000")) "zettel" " " "identifier") " " "as" " " "value," " " "authentication" " " "fails.") (li "Retrieve" " " "all" " " "zettel," " " "where" " " "the" " " "meta" " " "key" " " (kbd "user-id") " " "has" " " "the" " " "same" " " "value" " " "as" " " "the" " " "given" " " "user" " " "identification." " " "If" " " "the" " " "list" " " "is" " " "empty," " " "authentication" " " "fails.") (li "From" " " "above" " " "list," " " "the" " " "zettel" " " "with" " " "the" " " "numerically" " " "smallest" " " "identifier" " " "is" " " "selected." " " "Or" " " "in" " " "other" " " "words:" " " "the" " " "oldest" " " "zettel" " " "is" " " "selected" (sup (@ (id . "fnref:1")) (a (@ (class . "zs-noteref") (href . "#fn:1") (role . "doc-noteref")) "1")) ".") (li "If" " " "the" " " "zettel" " " "does" " " "not" " " "have" " " "a" " " "value" " " "for" " " "the" " " "meta" " " "key" " " (kbd "credential") "," " " "authentication" " " "fails.") (li "The" " " "value" " " "of" " " "the" " " "meta" " " "key" " " (kbd "credential") " " "is" " " "compared" " " "with" " " "the" " " "given" " " "password." " " "If" " " "they" " " "do" " " "not" " " "match," " " "authentication" " " "fails.")) (p "The" " " "authentication" " " "is" " " "successful," " " "because" " " "the" " " "Zettelstore" " " "has" " " "an" " " "owner," " " "the" " " "identifier" " " "matches" " " "an" " " (a (@ (href . "00001010040200")) "user" " " "zettel") "," " " "and" " " "the" " " "password" " " "conforms" " " "to" " " "the" " " "stored" " " "credential."))