From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.1 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D2253C432BE for ; Fri, 27 Aug 2021 11:35:02 +0000 (UTC) Received: from mail.server123.net (mail.server123.net [78.46.64.186]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 31AF060F58 for ; Fri, 27 Aug 2021 11:35:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 31AF060F58 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=btinternet.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=saout.de X-Virus-Scanned: amavisd-new at saout.de Authentication-Results: mail.server123.net (amavisd-new); dkim=pass (2048-bit key) header.d=btinternet.com Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=213.120.69.101; helo=re-prd-fep-041.btinternet.com; envelope-from=stephen.feyrer@btinternet.com; receiver= X-Greylist: delayed 187 seconds by postgrey-1.37 at siona; Fri, 27 Aug 2021 13:32:19 CEST Received: from re-prd-fep-041.btinternet.com (mailomta8-re.btinternet.com [213.120.69.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.server123.net (Postfix) with ESMTPS for ; Fri, 27 Aug 2021 13:32:19 +0200 (CEST) Received: from re-prd-rgout-004.btmx-prd.synchronoss.net ([10.2.54.7]) by re-prd-fep-043.btinternet.com with ESMTP id <20210827112910.OWTX22650.re-prd-fep-043.btinternet.com@re-prd-rgout-004.btmx-prd.synchronoss.net> for ; Fri, 27 Aug 2021 12:29:10 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btinternet.com; s=btmx201904; t=1630063750; bh=dFbw2C6A4+iD+hpSh6fdgmHG3LpBabcnEoQVaeCuHRM=; h=To:From:Subject:Message-ID:Date:MIME-Version; b=UwhU7Iug2tQukIBP7snZWMqk5hdBQCvBMfCmMHl/wAASyQ5fMACy9eiGURcmrrmjFOeqevdQqMAqkWSCaO/IKtqX2uJ67Mp/4sprkB3ovF/Tp3RRgS7RfjFVFRsKDqfBZRZEvvH21Y4Sq5eOhpIZhgFrj78qCNe1BZclrHaOdaVepdSRW1lwO6mGVWIeWpFq/DtOfqFpoq8Oa4mLberdqHUN3jX3pMwRi71rGdcVPb/y4QiCgR6/0KUMq4j9lyWRqwPl1GcvYBl1xz3fQ2C+uSHrF9JxxG2nWv/rSD7gqc47p2hhYXbgWAlCkIS5wNqfasKmpn1Ev+FS6Ot9TGOIUg== Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=stephen.feyrer X-SNCR-Rigid: 5ED9C5064272069D X-Originating-IP: [195.224.246.62] X-OWM-Source-IP: 195.224.246.62 (GB) X-OWM-Env-Sender: stephen.feyrer@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedvtddruddufedggeduucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuueftkffvkffujffvgffngfevqffopdfqfgfvnecuuegrihhlohhuthemuceftddunecunecujfgurhepvffhuffkffgfgggtsegrtderredtfeejnecuhfhrohhmpefuthgvphhhvghnucfhvgihrhgvrhcuoehsthgvphhhvghnrdhfvgihrhgvrhessghtihhnthgvrhhnvghtrdgtohhmqeenucggtffrrghtthgvrhhnpefhieegjeeuieegkeekledugfdvudejtddvvdehhfehveelgfeffeffuddtfeejudenucffohhmrghinhephihusghitghordgtohhmnecukfhppeduleehrddvvdegrddvgeeirdeivdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhephhgvlhhopegludelvddrudeikedrtddrgegnpdhinhgvthepudelhedrvddvgedrvdegiedriedvpdhmrghilhhfrhhomhepoehsthgvphhhvghnrdhfvgihrhgvrhessghtihhnthgvrhhnvghtrdgtohhmqecuuefqffgjpeekuefkvffokffogfdprhgtphhtthhopeeoughmqdgtrhihphhtsehsrghouhhtrdguvgeq X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean X-SNCR-hdrdom: btinternet.com Received: from [192.168.0.4] (195.224.246.62) by re-prd-rgout-004.btmx-prd.synchronoss.net (5.8.340) (authenticated as stephen.feyrer) id 5ED9C5064272069D for dm-crypt@saout.de; Fri, 27 Aug 2021 12:29:10 +0100 To: dm-crypt@saout.de From: Stephen Feyrer Message-ID: Date: Fri, 27 Aug 2021 12:29:11 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 Content-Language: en-GB Message-ID-Hash: K6O73WSBU2Q62IQSUDDKQE6V6NYENSLQ X-Message-ID-Hash: K6O73WSBU2Q62IQSUDDKQE6V6NYENSLQ X-MailFrom: stephen.feyrer@btinternet.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-dm-crypt.saout.de-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.3.2 Precedence: list Subject: [dm-crypt] cryptsetup - 2FA feature request List-Id: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: multipart/mixed; boundary="===============9112068530392265905==" This is a multi-part message in MIME format. --===============9112068530392265905== Content-Type: multipart/alternative; boundary="------------AAB2992DEA670393A15ECAAC" Content-Language: en-GB This is a multi-part message in MIME format. --------------AAB2992DEA670393A15ECAAC Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Hi Everyone, Before I start, I'd like to offer some caveats as I've had a week to=20 think about this.=C2=A0 This is a topic which I imagine has already been=20 covered ad nauseam (so I may be re-opening a can of worms - sorry). You=20 may also consider what I have to say as being out of scope for=20 cryptsetup or just overly complicated.=C2=A0 There may be details which I= 'm=20 not aware of or haven't given proper consideration.=C2=A0 So, take a deep= =20 breath and lets dive in. The rationale behind what I'm suggesting, is that I am working on using=20 a Yubikey as a second factor when decrypting my filesystem. To do this I=20 have an unencrypted partition where my kernel and initrd etc. are kept.=C2= =A0=20 A script (that I am writing) will run and this will present a password=20 to cryptsetup.=C2=A0 It is the function of this script which creates the=20 password for which I suggest that cryptsetup take ownership. My script picks up a JSON file with a structure like: [ =C2=A0=C2=A0=C2=A0 {"timeout":