static bool locallyVerifyUserStatement(S signed) { try { L lines = toLines(signed); S authorLine = lines.get(lines.size()-2); S sigLine = lines.get(lines.size()-1); S text = fromLines(lines.subList(0, lines.size()-1)); S author = dropPrefixMandatory("-", authorLine); S cid = trim(dropSuffix("[user]", author)); if (!isComputerID(cid)) fail("Not a computer ID: " + cid); byte[] publicKey = PKI.userPublicKey(); S sig = dropPrefixMandatory("sig: ", sigLine); ret PKI.verifySignature(publicKey, PKI.signatureFromString(sig), toUtf8(text)); } catch (RuntimeException e) { ret false; } }