RE: [Gen-art] Genart telechat review of draft-gutmann-scep-08

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

(I include your reply to yourself in this reply)

Summary: All my issues have been addressed. 

>>Maybe some text about all that somewhere (e.g., in the Introduction 
>>section, or in a dedicated "History" section)?
>
> The "Background Notes" section already contains a pretty complete (without going overboard) history and notes 
> on what changed.  What I can do if this will help is add a reference at the start:
>
>  (see the <xref target="background">Background Notes</xref> section for more
>  on the history behind SCEP and the nearly two decade-long progress of this
>  standard)
>
> I think moving a large amount of text about the history of the draft into the introduction would make it a bit
> messy, particularly since the Background Notes section contains extensive comments on how things have changed 
> over time, it's a couple of pages long.
>
> Replying to my own message: The proposed text would then read:
>
> This specification defines a protocol, Simple Certificate Enrolment Protocol (SCEP), for certificate management and 
> certificate and CRL queries.  While widely deployed (see the <xref target="background">Background Notes</xref> section 
> for more on the history behind SCEP and the nearly two decade-long progress of this standard), this protocol ...
>
> which I think explains the nature of the "widely-deployed" comment while not overloading things with a huge load of historical commentary.

Your suggestion above solves my issue. Thanks!

>>Sure, but the text doesn't give any guidance on why it would reject the 
>>request. Since the sentence is in the same sentence talking about 
>>policies I assume the rejection would be if the policies are not fulfilled.
>
> It's up to the CA, thus the use of the catch-all "policies".  It's meant to warn the client that a request won't automatically
> result in a cert being issued, but doesn't constrain the CA in any way.  The CA could reject or modify the request for any
> reason, or perhaps for no reason, their HSM is offline, they're having a bad hair day, their network is down, ... it's just to 
> warn the client "don't automatically expect a cert back", but I can't really enumerate all the possible reasons why a rejection could happen.

I think it's obvious (or, at least not specific to this mechanism) that a CA might reject a request (for whatever reason), but if you want to keep the text I won't argue :)

>If you like I can change the text to:
>
>  A CA MAY enforce any arbitrary policies and apply them to certificate
>  requests, and MAY reject a request for any reason.
>
>if that makes it clearer.

It's better :)

Not sure whether the MAYs should be with capital letters, though, as the draft doesn't define the procedures of the CA, but I'll leave that to others to comment on.

>>>"It was like that when I got here".  I can make it a non-subsection if 
>>>it reads better that way.
>>
>>I think it would be good. 
>
>OK, fixed.

Thanks!

>>Since you use "SHOULD", it sounds more like just suggestions.
>
> OK, I've changed it to make the alternative explicit:
>
>  After the client gets the CA certificate, it SHOULD authenticate the
>  certificate by comparing its fingerprint with the locally configured, out-
>  of-band distributed, identifying information, or by some equivalent means
>  such as a direct comparison with a locally-stored copy of the certificate.

Looks good.

>>I think it would be good to mention that.
>
> I've read through it again and I think a better solution is your original one, make it a MUST.  If the CA indicates 
> it supports POST then there's no need to use GET, so it can be changed to a MUST:
>
>  If the remote CA supports POST, the CMS-encoded SCEP messages MUST be sent
>  via HTTP POST instead of HTTP GET.

Looks good.

>> Couldn't the section simply be called "SCEP Transaction Examples", or something?
>
> Good idea, fixed.

Thanks!

Regards,

Christer


________________________________________
From: Christer Holmberg <christer.holmberg@xxxxxxxxxxxx>
Sent: Friday, 2 February 2018 02:42
To: gen-art@xxxxxxxx; pgut001@DOMAIN.HIDDEN
Cc: draft-gutmann-scep.all@xxxxxxxx; ietf@xxxxxxxx
Subject: [FORGED] Re: [Gen-art] Genart telechat review of draft-gutmann-scep-08

Hi,

>>However, there are some issues (mostly editorial) that I would like 
>>the authors to address.
>
> One comment on this, I didn't write the original text so I'll try and  
>accommodate as much as possible, but in some cases I've had to guess at 
>what  the original authors intended.  Also, the explanations for 
>several of the  points raised in the questions is "it was like that 
>when I got here".
>So in
> the following, when I respond with another question, it's because I'm 
>not sure  myself what should go in there, and I'm welcoming any 
>suggestions...
>
> Another general point, because this has spent close to twenty years in 
>draft  status, it's been a de facto standard for most of that time so 
>there are  "standards-compliant" implementations that have been in use 
>for more than a  decade based on the draft.  Because of this, I've had 
>to be very careful to  avoid breaking things by introducing a MUST or 
>MUST NOT after nearly two  decades of something not being a MUST.  This 
>is why, in some places, there's a  SHOULD with strong hints rather than 
>a MUST.
>
> The primary goal for this was to make it bits-on-the-wire compatible 
>(apart  from the unavoidable single DES + MD5 -> AES + SHA-2), and to 
>minimise  (ideally not to have any) breakage with deployed code.  So 
>there are places  where there are weasel-words ("we know you've been 
>doing this for fifteen  years but you probably shouldn't any more"), 
>and others where I've retained  text that I wouldn't have put in there 
>if I'd been the one writting the doc.

Maybe some text about all that somewhere (e.g., in the Introduction section, or in a dedicated ³History² section)?


>Q1:
>
>[Editing changes]
>
> I've had a go at changing this, but no matter what I do just ends up 
>as the  same wording shuffled around, I end up just moving bits from 
>one location to  another (it's already gone through a number of 
>re-wordings across different  drafts).  If there's a specific goal that 
>you're aiming for with the changes I  can try and hit that, but I just 
>ended up saying more or less the same thing  with different phrasing.

I just think it sounds weird to talk about a widely deployed protocol that you are just about to publish.

But, maybe with some history (see previous comment) it would become more clear.

---

>>Q2:
>>
>>Doesn¹t the "While implementers are encouraged toŠ" sentence belong to 
>>the Security Considerations?
>
>It's not a security consideration, unless I'm missing something it only 
>discusses functionality and interoperability issues.

Ok.

---

>>Q3:
>>
>>The text says:
>>
>>   "A CA MAY enforce any arbitrary policies and apply them to certificate
>>   requests, and MAY reject any request."
>>
>>The "MAY reject any request" parts sounds unfinished. I assume it¹s 
>>refers to cases where the client don¹t support such arbitrary 
>>policies? If so, I suggest to explicitly say so.
>>
>>Currently it sounds like a generic CA-may-reject-any-request 
>>statement, which I assume is not what you intend to say :)
>
> That's exactly what it's meant to say: "You can ask for anything you 
>want, but  the CA isn't obligated to comply with your request".

Sure, but the text doesn¹t give any guidance on why it would reject the request. Since the sentence is in the same sentence talking about policies I assume the rejection would be if the policies are not fulfilled.

---

>>Q4:
>>
>>As the text talks about certificate distribution, is this really a 
>>subsection to section 2.1?
>
> "It was like that when I got here".  I can make it a non-subsection if 
>it reads better that way.

I think it would be good. The text itself doesn¹t change, soŠ

---

>>Q5:
>>
>>The 4th paragraph contains a couple of SHOULDs. Is there a reason they 
>>can¹t be MUST?
>
>There are many ways to verify certs, those are just suggestions.  For 
>example they may be hardcoded into the client (that's actually not 
>uncommon in SCADA use), in which case there's nothing to verify.

Since you use ³SHOULD², it sounds more like just suggestions.

---

>>Q6:
>>
>>The 5th paragraph talks about how early versions of the draft used GET 
>>messages for all communication.
>>
>>The text also says:
>>
>>³If the remote CA supports it, any of the CMS-encoded SCEP messages 
>>SHOULD be sent via HTTP POST instead of HTTP GET.²
>>
>>If the remove CA supports what? HTTP POST?
>
> Yes, fixed.
>
>>Why SHOULD, and not MUST?
>
> See the note about introducing breakage.
>
>>If the client understands to use POST if GET fails, why can¹t it use 
>>POST to begin with?
>
> It was meant to say (subtly) "if you're seeing these problems then 
>perhaps  it's time you updated your code".  I've changed the text to 
>make this more
> explicit:
>
> The solution to this problem is to update the implementation to use 
> HTTP POST instead.

Ok.

>>In general, what is the reason for having this text about early 
>>versions of the draft? Backward compatibility with CAs that will only 
>>support GET?
>
>Yes.  Not just CAs but major implementations like Microsoft's NDES.

I think it would be good to mention that.

---

>>Q7:
>>
>>The title of the section talks about state transitions, but then the 
>>text says that the section contains examples.
>>
>>Is there a reference to the state machine(s) that are represented in 
>>the examples? OR, does the section define the state machine(s)?
>
>"It was like that when I got here".  It's supposed to illustrate state 
>transitions, so it's both a diagram and an example of what's supposed 
>to happen.  I'm reluctant to start rewriting that to any extent 
>because, well, would you want to start poking around in there?

I just think it¹s strange to talk about "state transitions" without any reference to a state machine (in fact, there seems to be two state machines - one for the client and one for the CA).

Couldn¹t the section simply be called ³SCTP Transaction Examples², or something?

---

>>Q8:
>>
>>The text says ³previous editors² and ³earlier editors². Please pick 
>>one and use it in both places :)
>
> It's actually "earlier authors", and it was deliberate, to distinguish 
>between  the people who wrote it (authors) and those who came later and 
>merely edited  the original authors' work (editors).

Ok.

Regards,

Christer






[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Fedora Users]