- From: helpcrypto helpcrypto <helpcrypto@gmail.com>
- Date: Thu, 24 Oct 2013 12:16:33 +0200
- To: Ryan Sleevi <sleevi@google.com>
- Cc: "public-webcrypto-comments@w3.org" <public-webcrypto-comments@w3.org>, Harry Halpin <hhalpin@w3.org>
- Message-ID: <CAHMQSgu=1XsANeqw5HSqWPxYyCG6pxJubkfMcy7nBDK0nXFzGA@mail.gmail.com>
On Thu, Oct 24, 2013 at 1:11 AM, Ryan Sleevi <sleevi@google.com> wrote: > > > > On Wed, Oct 23, 2013 at 1:21 AM, helpcrypto helpcrypto < > helpcrypto@gmail.com> wrote: > >> Hi Ryan. >> >> Thanks for your answers, altought they let me no much hope for the >> future...Replying inline. >> ;) >> >> >> On Tue, Oct 22, 2013 at 8:53 PM, Ryan Sleevi <sleevi@google.com> wrote: >> >>> >>> On Tue, Oct 22, 2013 at 11:13 AM, helpcrypto helpcrypto < >>> helpcrypto@gmail.com> wrote: >>> >>>> >>>> Firstly, there are some parts I have interest in: >>>> 13.2.6. The generateKey method >>>> 13.2.9. The importKey method >>>> 13.2.10. The exportKey method >>>> >>>> *I know that "handling the keys" is out of the scope of this document >>>> (smartcards too)*, but I'll like to know if, as an integrator, I'll be >>>> able to generate a key pair on CSP/NSS/PKCS#11 modules, or import/export >>>> keys from my smartcards using -for example- a PKCS#11 interface. In other >>>> words: >>>> *Will this invoke microsoft-csp or linux-nss operations under this >>>> layer to get access to keystores?* >>>> (I think so, but looking for confirmation) >>>> >>> >>> As you acknowledge, it's out of scope of this document. You're asking a >>> question about how implementations decide to expose potentially >>> security-relevant features and the risks to users. >>> >>> The API provides no statement of this. >>> >> >> I will ask it another way: >> *Does it has sense having an importKey/exportKey functions if they arent >> going to be working with keystores?* >> > > Sure. If you have existing keys you want to use. > My keys are on NSS/smartcard/Keystore/keychain. IMHO, i think *these functions should be replaced with keystore integratio*n (so importing on NSS/PK#11/CSP will let the key accesible to Webcrypto), as a consequence, this functions shoudl dissapear from draft. > > >> Considering these functions have the purpuse to import a key to be able >> to use it through WebCrypto or to export a key to somewhere, it will have >> sense to expect these functions to communicate to keystores, isnt it? >> *If only webcrypto generated keys are going to be used, i dont see the >> point having these functions.* >> > > These allow two user agents to communicate and perform key exchange, among > other things. > > There is a "Keystore" functionality - Key objects are Structured Clonable, > and thus can be stored with any persistence layer that supports Structured > Clone - such as IndexedDB. > > I'm sorry you don't see the point, but perhaps you meant that you don't > see the point for your use case? > Probably you are correct. Signind documents, doing authentication based on certificates, electronic invoices and such things use -regularly- RSA certificates installed on keystore, and using those keys though Webcrypto will have a lot of sense. An alternative for Java/signText is what end user need, and thats what im talking about. > > >> >> >>> >>>> >>>> I'm also missing a* getKey(filter)* function that returns a handler to >>>> use keys in operations like sign(key,data). >>>> *Do you plan to add it?* >>>> >>> >>> Considering the above comment, this is not intended for this release. >>> >> >> I agree with you: WebCrypto defines a way to sign, but it doesnt say how >> keys are recovered. >> > > By "recovered" I suppose you mean how keys exist? It does say how this > happens: Structured Clone. You can then use it with any of the mechanisms > that support Structured Clone - eg: IndexedDB. > > There is no need to depend on key discovery. > If you understand what im talking about, you will probably see my point. Maybe we think the same, but im lost on translation. The question is much more simple: Do you guys in the WG have in mind "people using their browser installed personal certificate to do -for example- electronic signatures of a PDF" using Webcrypto? IMHO, WG proposals should care about this and let the users "use" the implementation of this standard. I can request a user to import a pkcs#12 each time he wants to sign (if i understand properly how importKey works) Again, maybe its my lack of english. > > >> IMHO, getKey doesnt say how the keys are recovered, but shows user >> could query for keys to use, so it has sense for me. >> In other words: webcrypto - getkey - keydiscovery >> *Doesnt it seems correct?* >> Probably this question could be moved to keydiscovery API. >> >> >>> >>> >>>> >>>> *Will be possible to specify a filter/unicode string to search on >>>> subject/cert?* >>>> >>> >>> Not in scope. >>> >> I understand your aswer and agree with it, but something -imho- is >> missing from webcrypto spec. >> Webcrypto spec says "a key is used", not detailing how the keys are >> recovered. But it should also say "keys are recoverey according to >> keydiscovery API(link)". >> > > No, they're recovered using Structured Clone. Key Discovery is a separate > draft that looks to expose additional types of keys that are > (intentionally) not covered as part of the Web Crypto "base" spec. > Probably i miss something. Can you provide me a link about how this "structured clone" works? I'll appreciate that > > >> At this momento, webcrypto is not linking keydiscovery, but the opposite >> way, which seems confusing. At least for me. >> >> Thinking about this, the getKey function I proposed could be "moved" to >> keyDiscovery API, but referencing text/link should shall be mantained. >> >> >> >>> >>>> I think key protection is also outside of the scope of this document, >>>> but: >>>> *Will it be possible to make a key "sticky", being able to sign more >>>> than 1 document with "one PIN" only? (batch mode) >>>> * >>>> >>> >>> PINs handling is not in scope. >>> >> You can call it fingerprint match if you like. >> Probably this should go on keyDiscovery API, but the question remains. >> >> >> >>> >>> >>>> * * >>>> Finally, [3] says "Also, the system must display to the user the data >>>> that is being signed, so that he knows what he is signing" >>>> >>> >>> This is a much older, unmtained document. >>> >>> >>>> I'll like to publicly ask, request, beg, plead, pray...this to be human >>>> readable. >>>> Old Mozilla's signText was one of the worst -imho- *human *friendly >>>> GUIs ever made. >>>> *Could it be possible to display what the user is going to say using >>>> tools like PDF.js (for PDF files)? >>>> Could it be possible to display a short customizable message like: "Hi >>>> peter, here are the documents you have to sign!"?* >>>> >>> >>> As above, this is not something the WG is providing. >>> >> >> As keydiscovery its only about "discovery", but not usage, i think it >> could be a good idea to add an annex or a reference about how these things >> could be implemented. >> This will help us, for example, to prevent useless dialogs showing >> unreadable xml and a "do you accept?" message. >> I dont know if you see my point. >> >> >> >>> >>>> >>>> KeyDiscovery: [4] >>>> This document purpose is to define how the keys will be recovered from >>>> the browser. >>>> >>>> IMHO, the *getKey *function IS the link between these two documents, >>>> and thats the reason why WebCrypto spec should contain the function and >>>> reference to KeyDiscovery (not the way around). >>>> >>>> >>>> Reading this document, I not sure if I understood this part: >>>> interface NamedKey : Key { >>>> readonly attribute DOMString name; >>>> readonly attribute DOMString? id; >>>> }; >>>> >>>> *Will getKeyByName("PETER") will look for all keys containing (in any >>>> attribute) the word "PETER"?* >>>> (If that's correct, im happpy to hear it!) >>>> >>> Any comments on this? >> >> >> >>> >>>> Also, will be great to be able to filter by keystore like >>>> getKey(keystore,filter). >>>> This keystore could match CSP name or PKCS#11 library. All keystores >>>> should be queried if no keystore provided. >>>> *Could this be possible?* >>>> >>> >> Any answers about this? >> > > This is out of scope, as was already mentioned, so there's no need for > further comment. > > >> >> >> >>>> Some examples, like [5] will be much appreciated. >>>> >>>> >>>> High-Level API: [6] >>>> >>>> *Cant this document be merged with [1] as callbacks?* >>>> >>> >>> Considering that David Dahl is no longer with Mozilla and, to the best >>> of my knowledge, no longer participating in this group, I suspect that >>> either another (WG member) needs to step up as editing or, as discussed >>> during the eBay F2F, this document be discontinued and removed. Harry? >>> >> >> Thank again you for your answers Ryan! >> >> > Thanks for the answers!
Received on Thursday, 24 October 2013 10:17:21 UTC