Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(115)

Issue 1739503003: Ignore host certificate in remoting::V2Authenticator on the client side.

Created:
4 years, 10 months ago by Sergey Ulanov
Modified:
4 years, 10 months ago
Reviewers:
davidben
CC:
chromium-reviews, chromoting-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Ignore host certificate in remoting::V2Authenticator on the client side. Previously V2Authenticator was passing host certificate from the host to the client. It wasn't possible to implement CertVerifier that worked in the renderer because X509Certificate doesn't work there. It's no longer an issue because the code now runs under PNaCl. Cleaned up the code to ignore the certificate that the host sends to the client.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+16 lines, -65 lines) Patch
M remoting/protocol/ssl_hmac_channel_authenticator.h View 2 chunks +0 lines, -2 lines 0 comments Download
M remoting/protocol/ssl_hmac_channel_authenticator.cc View 5 chunks +8 lines, -15 lines 0 comments Download
M remoting/protocol/ssl_hmac_channel_authenticator_unittest.cc View 3 chunks +7 lines, -26 lines 0 comments Download
M remoting/protocol/v2_authenticator.h View 1 chunk +0 lines, -3 lines 0 comments Download
M remoting/protocol/v2_authenticator.cc View 2 chunks +1 line, -19 lines 0 comments Download

Messages

Total messages: 9 (1 generated)
Sergey Ulanov
David, sending this to you because you looked at this code in the past. I ...
4 years, 10 months ago (2016-02-25 02:03:53 UTC) #2
davidben
On 2016/02/25 02:03:53, Sergey Ulanov wrote: > David, sending this to you because you looked ...
4 years, 10 months ago (2016-02-25 02:53:28 UTC) #3
Sergey Ulanov
On 2016/02/25 02:53:28, davidben wrote: > On 2016/02/25 02:03:53, Sergey Ulanov wrote: > > David, ...
4 years, 10 months ago (2016-02-25 19:27:25 UTC) #4
davidben
On 2016/02/25 19:27:25, Sergey Ulanov wrote: > On 2016/02/25 02:53:28, davidben wrote: > > On ...
4 years, 10 months ago (2016-02-25 19:33:01 UTC) #5
davidben
On 2016/02/25 19:33:01, davidben wrote: > > I'm planning to implement new version of SPAKE ...
4 years, 10 months ago (2016-02-25 19:34:14 UTC) #6
Sergey Ulanov
On 2016/02/25 19:33:01, davidben wrote: > EMS is already enabled. BoringSSL doesn't let you disable ...
4 years, 10 months ago (2016-02-25 20:06:21 UTC) #7
Sergey Ulanov
On Thu, Feb 25, 2016 at 11:34 AM, <davidben@chromium.org> wrote: > On 2016/02/25 19:33:01, davidben ...
4 years, 10 months ago (2016-02-25 20:17:21 UTC) #8
davidben
4 years, 10 months ago (2016-02-25 21:15:22 UTC) #9
On 2016/02/25 20:06:21, Sergey Ulanov wrote:
> On 2016/02/25 19:33:01, davidben wrote:
> > EMS is already enabled. BoringSSL doesn't let you disable it. It's just not
> > enforced.
> > 
> > For this kind of thing to be work, you need to ensure contributory behavior
in
> > the key exchange. It turns out that ECDH is prrrooobbbbably okay, but this
is
> > not the real fix. You really need to be requiring EMS for this kind of thing
> to
> > work. On the bug, we talked about it and decided to hold on figuring out how
> to
> > force it on because you were planning on migrating to QUIC anyway. If we'll
be
> > removing this check in advance of that, you need to be using EMS.
> > 
> > > I'm planning to implement new version of SPAKE for authentication see
> > > crbug.com/589698. With this change I just wanted to clean up old cruft
from
> > the
> > > auth code. If you think the certs are still useful there we can keep this
> > logic
> > > for now.
> > > 
> > > > 
> > > > What's the oldest client and server implementation on each platform that
> > you'd
> > > > still need to be able to talk to?
> > > 
> > > The current release on iOS is M44. AFAICT it doesn't have EMS. Everything
> else
> > > is on M49 now.
> > 
> > Yeah, that's too old. How long before iOS is updated to M49 as well?
> 
> No very soon. Probably when we release M50 or M51 we will update iOS too.
> 
> 
> > iOS is only
> > a client, right, not a server? So we can at least require EMS on the client
> half
> > today.
> 
> Yes. What's the right way make the client require EMS?

Just adding a bool require_ems or something and failing the connection is fine.
BoringSSL's API is this thing:
https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#S...

I'm not sure off-hand what NSS's is. SpawnedTestServer should support EMS now
and be able to disable it, so we should be able to write tests against that.

Powered by Google App Engine
This is Rietveld 408576698