(BLOCK (PARA (TEXT "When") (SPACE) (TEXT "someone") (SPACE) (TEXT "tries") (SPACE) (TEXT "to") (SPACE) (TEXT "authenticate") (SPACE) (TEXT "itself") (SPACE) (TEXT "with") (SPACE) (TEXT "an") (SPACE) (TEXT "user") (SPACE) (TEXT "identifier") (SPACE) (TEXT "/") (SPACE) (FORMAT-QUOTE () (TEXT "user") (SPACE) (TEXT "name")) (SPACE) (TEXT "and") (SPACE) (TEXT "a") (SPACE) (TEXT "password,") (SPACE) (TEXT "the") (SPACE) (TEXT "following") (SPACE) (TEXT "process") (SPACE) (TEXT "is") (SPACE) (TEXT "executed:")) (ORDERED (INLINE (TEXT "If") (SPACE) (TEXT "meta") (SPACE) (TEXT "key") (SPACE) (LITERAL-INPUT () "owner") (SPACE) (TEXT "of") (SPACE) (TEXT "the") (SPACE) (TEXT "configuration") (SPACE) (TEXT "zettel") (SPACE) (TEXT "does") (SPACE) (TEXT "not") (SPACE) (TEXT "have") (SPACE) (TEXT "a") (SPACE) (TEXT "valid") (SPACE) (LINK-ZETTEL () "00001006050000" (TEXT "zettel") (SPACE) (TEXT "identifier")) (SPACE) (TEXT "as") (SPACE) (TEXT "value,") (SPACE) (TEXT "authentication") (SPACE) (TEXT "fails.")) (INLINE (TEXT "Retrieve") (SPACE) (TEXT "all") (SPACE) (TEXT "zettel,") (SPACE) (TEXT "where") (SPACE) (TEXT "the") (SPACE) (TEXT "meta") (SPACE) (TEXT "key") (SPACE) (LITERAL-INPUT () "user-id") (SPACE) (TEXT "has") (SPACE) (TEXT "the") (SPACE) (TEXT "same") (SPACE) (TEXT "value") (SPACE) (TEXT "as") (SPACE) (TEXT "the") (SPACE) (TEXT "given") (SPACE) (TEXT "user") (SPACE) (TEXT "identification.") (SPACE) (TEXT "If") (SPACE) (TEXT "the") (SPACE) (TEXT "list") (SPACE) (TEXT "is") (SPACE) (TEXT "empty,") (SPACE) (TEXT "authentication") (SPACE) (TEXT "fails.")) (INLINE (TEXT "From") (SPACE) (TEXT "above") (SPACE) (TEXT "list,") (SPACE) (TEXT "the") (SPACE) (TEXT "zettel") (SPACE) (TEXT "with") (SPACE) (TEXT "the") (SPACE) (TEXT "numerically") (SPACE) (TEXT "smallest") (SPACE) (TEXT "identifier") (SPACE) (TEXT "is") (SPACE) (TEXT "selected.") (SOFT) (TEXT "Or") (SPACE) (TEXT "in") (SPACE) (TEXT "other") (SPACE) (TEXT "words:") (SPACE) (TEXT "the") (SPACE) (TEXT "oldest") (SPACE) (TEXT "zettel") (SPACE) (TEXT "is") (SPACE) (TEXT "selected") (ENDNOTE () (TEXT "This") (SPACE) (TEXT "is") (SPACE) (TEXT "done") (SPACE) (TEXT "to") (SPACE) (TEXT "prevent") (SPACE) (TEXT "an") (SPACE) (TEXT "attacker") (SPACE) (TEXT "from") (SPACE) (TEXT "creating") (SPACE) (TEXT "a") (SPACE) (TEXT "new") (SPACE) (TEXT "note") (SPACE) (TEXT "with") (SPACE) (TEXT "the") (SPACE) (TEXT "same") (SPACE) (TEXT "user") (SPACE) (TEXT "identification")) (TEXT ".")) (INLINE (TEXT "If") (SPACE) (TEXT "the") (SPACE) (TEXT "zettel") (SPACE) (TEXT "does") (SPACE) (TEXT "not") (SPACE) (TEXT "have") (SPACE) (TEXT "a") (SPACE) (TEXT "value") (SPACE) (TEXT "for") (SPACE) (TEXT "the") (SPACE) (TEXT "meta") (SPACE) (TEXT "key") (SPACE) (LITERAL-INPUT () "credential") (TEXT ",") (SPACE) (TEXT "authentication") (SPACE) (TEXT "fails.")) (INLINE (TEXT "The") (SPACE) (TEXT "value") (SPACE) (TEXT "of") (SPACE) (TEXT "the") (SPACE) (TEXT "meta") (SPACE) (TEXT "key") (SPACE) (LITERAL-INPUT () "credential") (SPACE) (TEXT "is") (SPACE) (TEXT "compared") (SPACE) (TEXT "with") (SPACE) (TEXT "the") (SPACE) (TEXT "given") (SPACE) (TEXT "password.") (SOFT) (TEXT "If") (SPACE) (TEXT "they") (SPACE) (TEXT "do") (SPACE) (TEXT "not") (SPACE) (TEXT "match,") (SPACE) (TEXT "authentication") (SPACE) (TEXT "fails."))) (PARA (TEXT "The") (SPACE) (TEXT "authentication") (SPACE) (TEXT "is") (SPACE) (TEXT "successful,") (SPACE) (TEXT "because") (SPACE) (TEXT "the") (SPACE) (TEXT "Zettelstore") (SPACE) (TEXT "has") (SPACE) (TEXT "an") (SPACE) (TEXT "owner,") (SPACE) (TEXT "the") (SPACE) (TEXT "identifier") (SPACE) (TEXT "matches") (SPACE) (TEXT "an") (SPACE) (LINK-ZETTEL () "00001010040200" (TEXT "user") (SPACE) (TEXT "zettel")) (TEXT ",") (SPACE) (TEXT "and") (SPACE) (TEXT "the") (SPACE) (TEXT "password") (SPACE) (TEXT "conforms") (SPACE) (TEXT "to") (SPACE) (TEXT "the") (SPACE) (TEXT "stored") (SPACE) (TEXT "credential.")))