RE: Callback suggestion for unsupported cert extensions
The thing is, RFC3280 states... Implementors are warned that the X.500 standards community has developed a series of extensibility rules. These rules determine when an ASN.1 definition can be changed without assigning a new object identifier (OID). For example, at least two extension definitions included in RFC 2459 [RFC 2459], the predecessor to this profile document, have different ASN.1 definitions in this specification, but the same OID is used. If unknown elements appear within an extension, and the extension is not marked critical, those unknown elements ought to be ignored, as follows: (a) ignore all unknown bit name assignments within a bit string; (b) ignore all unknown named numbers in an ENUMERATED type or INTEGER type that is being used in the enumerated style, provided the number occurs as an optional element of a SET or SEQUENCE; and (c) ignore all unknown elements in SETs, at the end of SEQUENCEs, or in CHOICEs where the CHOICE is itself an optional element of a SET or SEQUENCE. If an extension containing unexpected values is marked critical, the implementation MUST reject the certificate or CRL containing the unrecognized extension. ^^ This pretty much means if there is an unexpected value and it is critical then it has to be rejected. I'm not sure how Microsoft would like their private extensions being listed in openssl. You would think from a standards compliance POV they would welcome it but who knows. Brad -Original Message- From: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] On Behalf Of Randy Turner Sent: Thursday, 4 June 2009 3:48 PM To: openssl-users@openssl.org Subject: Re: Callback suggestion for unsupported cert extensions I agree that there should probably be a callback for extensions not recognized and supported by OpenSSL...the callback could return a failure code that openssl would look at, and if it is set to an error then openssl would run it's normal failure return path (up the call stack). If the callback returns SUCCESS, then keep going... If a plugin is not registered for handling unknown extensions, then maybe the code should follow a configuration flag that says [fail on unknown extension] or [ignore unknown extensions] Randy On Jun 3, 2009, at 10:41 PM, Victor B. Wagner wrote: On 2009.06.04 at 09:04:11 +1000, Brad Mitchell wrote: The reason we use command-line utilities to verify is for transparency. Data could be used in the courts for example and having that hey.. go download openssl and verify it yourself is a lot better than.. here is a util we wrote to verify the token. WHAT? Your util? sure. So the issue with ignoring those extensions within your own app will probably work for you depending on your situation. In my case, it is not really an option. I'm not really sure why this particular extension is marked as critical. It does seem a bit weird. Microsoft aren't exactly the most compliant company out there when it comes to some industry standards... Hm, description of the X509_F_FLAG_INGORE_CRITICAL reads Ignore UNKNOWN critical extensions. May be it is better to make these Microsoft-specific extension KNOWN to OpenSSL, even it wouldn't do anything with their values. Just a thing which MS-CA can put into certificate, and mark critical, which doesn't affect verification process. It is quite easy to do: just add OID of this extension into objects.txt with suitable shortname and longname, and add it into array in the X509_supported_extension function. Really I think it might be worth effort to make list of supported-extensions user-configurable. Applications can handle extensions, which are not supported by OpenSSL itself using verify callback function. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.339 / Virus Database: 270.12.51/2151 - Release Date: 06/03/09 18:00:00 __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: Callback suggestion for unsupported cert extensions
There are also strict rules regarding the certificate validation process, which openssl will let you entirely pre-empt and completely take over the validation process. All we would be asking for would be a callback that lets us extend the functionality of openssl regarding cert extensions. In your case, because you need to stick with unmodified openssl code, using a command-line operation, this may not help you as much. Randy On Jun 3, 2009, at 11:00 PM, Brad Mitchell wrote: The thing is, RFC3280 states... Implementors are warned that the X.500 standards community has developed a series of extensibility rules. These rules determine when an ASN.1 definition can be changed without assigning a new object identifier (OID). For example, at least two extension definitions included in RFC 2459 [RFC 2459], the predecessor to this profile document, have different ASN.1 definitions in this specification, but the same OID is used. If unknown elements appear within an extension, and the extension is not marked critical, those unknown elements ought to be ignored, as follows: (a) ignore all unknown bit name assignments within a bit string; (b) ignore all unknown named numbers in an ENUMERATED type or INTEGER type that is being used in the enumerated style, provided the number occurs as an optional element of a SET or SEQUENCE; and (c) ignore all unknown elements in SETs, at the end of SEQUENCEs, or in CHOICEs where the CHOICE is itself an optional element of a SET or SEQUENCE. If an extension containing unexpected values is marked critical, the implementation MUST reject the certificate or CRL containing the unrecognized extension. ^^ This pretty much means if there is an unexpected value and it is critical then it has to be rejected. I'm not sure how Microsoft would like their private extensions being listed in openssl. You would think from a standards compliance POV they would welcome it but who knows. Brad -Original Message- From: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] On Behalf Of Randy Turner Sent: Thursday, 4 June 2009 3:48 PM To: openssl-users@openssl.org Subject: Re: Callback suggestion for unsupported cert extensions I agree that there should probably be a callback for extensions not recognized and supported by OpenSSL...the callback could return a failure code that openssl would look at, and if it is set to an error then openssl would run it's normal failure return path (up the call stack). If the callback returns SUCCESS, then keep going... If a plugin is not registered for handling unknown extensions, then maybe the code should follow a configuration flag that says [fail on unknown extension] or [ignore unknown extensions] Randy On Jun 3, 2009, at 10:41 PM, Victor B. Wagner wrote: On 2009.06.04 at 09:04:11 +1000, Brad Mitchell wrote: The reason we use command-line utilities to verify is for transparency. Data could be used in the courts for example and having that hey.. go download openssl and verify it yourself is a lot better than.. here is a util we wrote to verify the token. WHAT? Your util? sure. So the issue with ignoring those extensions within your own app will probably work for you depending on your situation. In my case, it is not really an option. I'm not really sure why this particular extension is marked as critical. It does seem a bit weird. Microsoft aren't exactly the most compliant company out there when it comes to some industry standards... Hm, description of the X509_F_FLAG_INGORE_CRITICAL reads Ignore UNKNOWN critical extensions. May be it is better to make these Microsoft-specific extension KNOWN to OpenSSL, even it wouldn't do anything with their values. Just a thing which MS-CA can put into certificate, and mark critical, which doesn't affect verification process. It is quite easy to do: just add OID of this extension into objects.txt with suitable shortname and longname, and add it into array in the X509_supported_extension function. Really I think it might be worth effort to make list of supported-extensions user-configurable. Applications can handle extensions, which are not supported by OpenSSL itself using verify callback function. __ OpenSSL Project http:// www.openssl.org User Support Mailing Listopenssl- us...@openssl.org Automated List Manager majord...@openssl.org No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.339 / Virus Database: 270.12.51/2151 - Release Date: 06/03/09 18:00:00 __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List
Re: What type of DES is DES_ecb_encrypt?
DES_ecb_encrypt encrypts as single DES, 56-bit key, in a block mode which has been deemed completely insecure. -Kyle H On Wed, Jun 3, 2009 at 12:46 PM, Michael Kurecka wpi.open...@gmail.com wrote: Does the method DES_ecb_encrypt encrypt as Triple or Single DES __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: Security Vulnerability issue in openssl 9.8 version
Customer are started asking me for this fix . So i need to release an immediate release of openssl with this fix . Not sure whether they are using DTLS . If any customer ask for the fix , i need to release the fix immediately (business policy). The patch which i have applied is this(for openssl 9.8h and openssl 98k ) http://cvs.openssl.org/chngview?cn=18187 http://cvs.openssl.org/chngview?cn=18206 http://cvs.openssl.org/chngview?cn=18154 This is patch correct ? And is the openssl community going to announce this security vulnerability issue ? Please help Thanks Rajan On Wed, Jun 3, 2009 at 5:44 AM, Victor Duchovni victor.ducho...@morganstanley.com wrote: On Tue, Jun 02, 2009 at 12:33:46AM -0700, rajanchittil wrote: Hi All, Recently i got a security vulnerability issue alert reported in http://www.vupen.com/english/advisories/2009/1377. Are you using DTLS? If you application is not using DTLS (very few are), you don't need to patch anything. DTLS support in OpenSSL does not appear to be very mature at this time, and I don't expect that very many users are impacted by this issue. -- Viktor. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: RE: Callback suggestion for unsupported cert extensions
On 2009.06.04 at 16:00:38 +1000, Brad Mitchell wrote: The thing is, RFC3280 states... Implementors are warned that the X.500 standards community has developed a series of extensibility rules. These rules determine when an ASN.1 definition can be changed without assigning a new object identifier (OID). For example, at least two extension definitions included in RFC 2459 [RFC 2459], the predecessor to this profile document, have different ASN.1 definitions in this specification, but the same OID is used. If unknown elements appear within an extension, and the extension is not marked critical, those unknown elements ought to be ignored, as follows: [skip] If an extension containing unexpected values is marked critical, the implementation MUST reject the certificate or CRL containing the unrecognized extension. ^^ This pretty much means if there is an unexpected value and it is critical then it has to be rejected. This is about unexpected values in KNOWN extension. Not about totally new extension with new OID. I was unable to find in the section 6 of RFC3280 any mention of totally unknown extension. I'm not sure how Microsoft would like their private extensions being listed in openssl. You would think from a standards compliance POV they would welcome it but who knows. These private extensions are declared in some .h files of published Microsoft API, and, may be, even documented somewhere in MSDN. At least for Windows version of openssl this information is available from Microsoft at build time. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.
On Wed, 2009-06-03 at 17:59 -0400, Victor Duchovni wrote: The SSL_CTX_use_certificate_chain_file() API is a very admin friendly way to support installation of cert + chain and even key + cert + chain, as the key can also be stored in the same file (ideally mode 0600 or passphrase-protected). Much like a PKCS#12 file, in fact. I'll make my VPN client use SSL_CTX_use_certificate_chain_file(), and I'll also look at making our cert-fetching scripts generate an appropriate file. Thanks. In the meantime the bug seems to have been fixed on the server so it doesn't _need_ me to submit a full certificate chain any more. Either they've deployed a fix for RT#1942, or the admins have just removed the old, conflicting CA certs from the CA bundle. -- dwmw2 __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: Callback suggestion for unsupported cert extensions
Victor B. Wagner vi...@cryptocom.ru writes: [...] This is about unexpected values in KNOWN extension. Not about totally new extension with new OID. I think you're misreading it---I think it's talking about unexpected extensions. In any case I think the language in RFC 5280 makes it clearer (and we should assume that this was the intent of 3280): A certificate-using system MUST reject the certificate if it encounters a critical extension it does not recognize or a critical extension that contains information that it cannot process. A non-critical extension MAY be ignored if it is not recognized, but MUST be processed if it is recognized. [...] __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
RE: RE: Callback suggestion for unsupported cert extensions
If that's the case then I don't see why openssl shouldn't know about these extensions. Especially if they have been in certificates since Windows 2003 at the very least Brad -Original Message- From: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] On Behalf Of Victor B. Wagner Sent: Thursday, 4 June 2009 9:02 PM To: openssl-users@openssl.org Subject: Re: RE: Callback suggestion for unsupported cert extensions On 2009.06.04 at 16:00:38 +1000, Brad Mitchell wrote: The thing is, RFC3280 states... Implementors are warned that the X.500 standards community has developed a series of extensibility rules. These rules determine when an ASN.1 definition can be changed without assigning a new object identifier (OID). For example, at least two extension definitions included in RFC 2459 [RFC 2459], the predecessor to this profile document, have different ASN.1 definitions in this specification, but the same OID is used. If unknown elements appear within an extension, and the extension is not marked critical, those unknown elements ought to be ignored, as follows: [skip] If an extension containing unexpected values is marked critical, the implementation MUST reject the certificate or CRL containing the unrecognized extension. ^^ This pretty much means if there is an unexpected value and it is critical then it has to be rejected. This is about unexpected values in KNOWN extension. Not about totally new extension with new OID. I was unable to find in the section 6 of RFC3280 any mention of totally unknown extension. I'm not sure how Microsoft would like their private extensions being listed in openssl. You would think from a standards compliance POV they would welcome it but who knows. These private extensions are declared in some .h files of published Microsoft API, and, may be, even documented somewhere in MSDN. At least for Windows version of openssl this information is available from Microsoft at build time. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.339 / Virus Database: 270.12.51/2151 - Release Date: 06/03/09 18:00:00 __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
certificate expiration in hours
Hi folks, I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Also, I'll do it in python. Thanks, Lucas.
Re: certificate expiration in hours
Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
Hi, I'm sorry, I don't understand very much about, but let's try. On Thu, Jun 4, 2009 at 11:23 AM, Michael Sierchio ku...@tenebras.comwrote: Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. yes that's the purpose, the 'kind' of certificate is flexible. How do you think I could do differently? I need authenticate someone just for a few hours (1-3 hours) and then close the connection, I thought to it with certificates to let the certification system manage that for me. Thanks, Lucas. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
On Thu June 4 2009, Lucas Mocellin wrote: Hi, I'm sorry, I don't understand very much about, but let's try. On Thu, Jun 4, 2009 at 11:23 AM, Michael Sierchio ku...@tenebras.comwrote: Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. yes that's the purpose, the 'kind' of certificate is flexible. How do you think I could do differently? I need authenticate someone just for a few hours (1-3 hours) and then close the connection, I thought to it with certificates to let the certification system manage that for me. Although the protocols do renogate the connection on a regular basis; I would be very surprised if that includes re-authentication, only keys. You'll have to do it locally on the server - like teach the server to start a cron job that will, after 1-3 hours - dump the user. Mike Thanks, Lucas. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
Lucas Mocellin wrote: I'm sorry, I don't understand very much about, but let's try. Bad idea. Certs bind identity to public keys. Authentication is not authorization, and it is extremely important that you understand the semantics before proceeding, IMHO. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
On Thu, Jun 4, 2009 at 11:48 AM, Michael S. Zick open...@morethan.orgwrote: On Thu June 4 2009, Lucas Mocellin wrote: Hi, I'm sorry, I don't understand very much about, but let's try. I'm starting to learn. On Thu, Jun 4, 2009 at 11:23 AM, Michael Sierchio ku...@tenebras.com wrote: Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. yes that's the purpose, the 'kind' of certificate is flexible. How do you think I could do differently? I need authenticate someone just for a few hours (1-3 hours) and then close the connection, I thought to it with certificates to let the certification system manage that for me. I want authenticate someone, and THEN authorize him for a while to do something. Although the protocols do renogate the connection on a regular basis; I would be very surprised if that includes re-authentication, only keys. hmm.. it's interesting.. I thought, for example, OpenVPN should 'manage' this certificate expiration. You'll have to do it locally on the server - like teach the server to start a cron job that will, after 1-3 hours - dump the user. If it's necessary, it'll be done, but I would like to avoid this work. if you're available and if you have any IM (google talk, MSN, *) please let me know. PS: I'm undergradute student and this is for a project. Thanks a lot, Lucas. Mike Thanks, Lucas. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
Also I'll try to explain: I have 2 types of users: supervisors and students this system is to authenticate students to perform a online test, BUT the supervisor must authorize them to do it for a given time (the test time, usually 1-3hours) For other reasons the systems will be: a Linux LiveCD which is booted in any machine with this authenticator client. The supervisor will authenticate and get as answer a temporary pass (OTP time synchronized), so he will give that to the students in the same physical location, and the students have X seconds to authenticate their LiveCDs to be able to perform the test. So I'm having some problems with this second authentication (students), when they are authenticated (student_id, student_pass, otp_pass) I thought to create a VPN between the student and the server and this online test will only be available inside this VPN, so the VPN program should be responsable for the certificate validation, so I don't have to worry about. is that understandable? my english is not so good. any ideas are welcome. =) Lucas. I have 2 types of users: supervisors and users On Thu, Jun 4, 2009 at 12:12 PM, Lucas Mocellin lucasmocel...@gmail.comwrote: On Thu, Jun 4, 2009 at 11:48 AM, Michael S. Zick open...@morethan.orgwrote: On Thu June 4 2009, Lucas Mocellin wrote: Hi, I'm sorry, I don't understand very much about, but let's try. I'm starting to learn. On Thu, Jun 4, 2009 at 11:23 AM, Michael Sierchio ku...@tenebras.com wrote: Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. yes that's the purpose, the 'kind' of certificate is flexible. How do you think I could do differently? I need authenticate someone just for a few hours (1-3 hours) and then close the connection, I thought to it with certificates to let the certification system manage that for me. I want authenticate someone, and THEN authorize him for a while to do something. Although the protocols do renogate the connection on a regular basis; I would be very surprised if that includes re-authentication, only keys. hmm.. it's interesting.. I thought, for example, OpenVPN should 'manage' this certificate expiration. You'll have to do it locally on the server - like teach the server to start a cron job that will, after 1-3 hours - dump the user. If it's necessary, it'll be done, but I would like to avoid this work. if you're available and if you have any IM (google talk, MSN, *) please let me know. PS: I'm undergradute student and this is for a project. Thanks a lot, Lucas. Mike Thanks, Lucas. __ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: RE: Callback suggestion for unsupported cert extensions
On Thu, Jun 04, 2009, Brad Mitchell wrote: If that's the case then I don't see why openssl shouldn't know about these extensions. Especially if they have been in certificates since Windows 2003 at the very least Knowing about an extension is one thing, deciding what to do with it is another thing entirely. That's why RFC5280 et al have the strict language they do. If an extension is critical the CA is saying you MUST understand what this bit means and do the right thing. They have decided that the extension provides critical information about the certificate and just ignoring it is not appropriate. The do the right thing bit needs documentation about how the extension is encoded and how it should be processed. Doing that properly needs additional code. BTW there *is* a callback of sorts for this: the standard verification callback is usable. It's a little more awkward because it doesn't tell you what extension it is objecting to. You could however examine the errant certificate for critical extensions and return OK if it contained internally supported extensions and any extra critical ones you want the application to process. Steve. -- Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage OpenSSL project core developer and freelance consultant. Homepage: http://www.drh-consultancy.demon.co.uk __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
certificatate shows as V1 not V3
When I open a certificate I have signed, in details it is showing as version V1 which cannot be imported into the application which generated the csr as it requires version V3. The CA.crt shows as version V3 but not the signed csr I am using Win32OpenSSL Light 0.9.8k and did a default installation. I have created a CA key pair using openssl genrsa -des3 -out CA.key 1024 I then created a CA certificate using openssl req -new -key CA.key -x509 -days 1095 -ou ..\ certs\CA.crt I then signed a certificate request using openssl x509 -req - days 1095 -in test.csr -CA ..\certs\CA.crt -CAkey ..\private\CA.key -CAcreateserial -out test.crt can anybody help? Kevin Potter UK Network Security Produban Phone +44 (0)1908 345167 Fax +44 (0)1908 346062 Mobile +44 (0)7803 886796 Email kevin.pot...@produban.co.uk Please consider the environment before printing this e-mail **DISCLAIMER* This message is private and confidential and it is intended exclusively for the addressee. If you receive this message by mistake, you should not disseminate, distribute or copy this e-mail. Please inform the sender and delete the message and attachments from your system. No confidentiality nor any privilege regarding the information is waived or lost by any mistransmission or malfunction. Any views or opinions contained in this message are solely those of the author, and do not necessarily represent those of Santander Produban, unless otherwise specifically stated and the sender is authorised to do so. E-mail transmission cannot be guaranteed to be secure, confidential, or error-free, as information could be intercepted, corrupted, lost, destroyed, arrive late, incomplete, or contain viruses. Santander Produban does not accept responsibility for any changes in the contents of this message after it has been sent. This message is provided for informational purposes and should not be construed as a solicitation or offer to provide services or an acceptance about that. If the addressee of this message does not consent to the use of internet e-mail, please communicate it to us. **AVISO LEGAL** Este mensaje es privado y confidencial y solamente para la persona a la que va dirigido. Si usted ha recibido este mensaje por error, no debe revelar, copiar, distribuir o usarlo en ningún sentido. Le rogamos lo comunique al remitente y borre dicho mensaje y cualquier documento adjunto que pudiera contener. No hay renuncia a la confidencialidad ni a ningún privilegio por causa de transmisión errónea o mal funcionamiento. Cualquier opinión expresada en este mensaje pertenece únicamente al autor remitente, y no representa necesariamente la opinión de Santander Produban, a no ser que expresamente se diga y el remitente esté autorizado para hacerlo. Los correos electrónicos no son seguros, no garantizan la confidencialidad ni la correcta recepción de los mismos, dado que pueden ser interceptados, manipulados, destruidos, llegar con demora, incompletos, o con virus. Santander Produban no se hace responsable de las alteraciones que pudieran hacerse al mensaje una vez enviado. Este mensaje sólo tiene una finalidad de información, y no debe interpretarse como una oferta o solicitud de prestacion de servicios ni como confirmacion de las mismas. En el caso de que el destinatario de este mensaje no consintiera la utilización del correo electrónico via Internet, rogamos lo ponga en nuestro conocimiento.
'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function)
Hi all : When I using make for other tool , I get the error msg as follows : eXtl_tls.c:125:3: warning: C++ style comments are not allowed in ISO C90 eXtl_tls.c:125:3: warning: (this will be reported only once per input file) eXtl_tls.c: In function 'tls_tl_free': eXtl_tls.c:131: warning: implicit declaration of function 'CRYPTO_cleanup_all_ex_data' eXtl_tls.c:131: warning: nested extern declaration of 'CRYPTO_cleanup_all_ex_data' eXtl_tls.c: In function 'initialize_client_ctx': eXtl_tls.c:368: error: 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function) eXtl_tls.c:368: error: (Each undeclared identifier is reported only once eXtl_tls.c:368: error: for each function it appears in.) eXtl_tls.c:368: error: 'SSL_OP_CIPHER_SERVER_PREFERENCE' undeclared (first use in this function) eXtl_tls.c: In function 'initialize_server_ctx': eXtl_tls.c:439: error: 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function) eXtl_tls.c:439: error: 'SSL_OP_CIPHER_SERVER_PREFERENCE' undeclared (first use in this function) it's looks like is openssl error. Any ideas on how to solve this? Any help'd be greatly appreciated Cheers, Pinky
Trouble generating a self signed certificate
I've been trying to generate a self signed certificate to get SSL working on a very simple internal web server. I'm using a windows server 2003 box so I got the open SSL windows binaries from http://www.slproweb.com/products/Win32OpenSSL.html. Using a HOWTO I found here http://www.sitepoint.com/article/securing-apache-2-server-ssl/ I used the following command to try and generate a cert: openssl req -new -key domainname.com.key -x509 -out sslname.crt I got an error on that one so I tried a command the openssl.org documentation had: openssl req -new -key privkey.pem -out cert.csr Again I got an error like this: Error opening Private Key privkey.pem 3924:error:02001002:system library:fopen:No such file or directory:.\crypto\bio\bss_file.c:356:fopen 3924:error:20074002:BIO routines:FILE_CTRL:system lib:.\crypto\bio\bss_file.c:358: unable to load Private Key Any idea what the problem is? -- View this message in context: http://www.nabble.com/Trouble-generating-a-self-signed-certificate-tp23869634p23869634.html Sent from the OpenSSL - User mailing list archive at Nabble.com. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
On Thu, Jun 4, 2009 at 5:41 PM, Lucas Mocellin lucasmocel...@gmail.com wrote: Also I'll try to explain: I have 2 types of users: supervisors and students this system is to authenticate students to perform a online test, BUT the supervisor must authorize them to do it for a given time (the test time, usually 1-3hours) For other reasons the systems will be: a Linux LiveCD which is booted in any machine with this authenticator client. The supervisor will authenticate and get as answer a temporary pass (OTP time synchronized), so he will give that to the students in the same physical location, and the students have X seconds to authenticate their LiveCDs to be able to perform the test. So I'm having some problems with this second authentication (students), when they are authenticated (student_id, student_pass, otp_pass) I thought to create a VPN between the student and the server and this online test will only be available inside this VPN, so the VPN program should be responsable for the certificate validation, so I don't have to worry about. is that understandable? my english is not so good. any ideas are welcome. =) Hm, sounds like you're creating an examination system for taking tests. There are existing solutions for that, both non-profit and commercial. Almost always integrated as part of a larger computer-based training system. You may wish to check them out. Anyway, assuming you're going the DIY (do It Yourself) route. From what I read in your scenario, you've got everybody connected, so you've got a network -- no problem to set up a central server which does all the authentication, authorization and after that, the examination, for you. See above: solutions for this exist already. DIY means extra work. If you go DIY, you need to be aware that you are mixing concepts here, as Michael already pointer out. Certificates are like passports: they're used for authentication ~ identification. I am not 'me' for 3 hours; I've been 'me' for 40 years now and I like to remain me for another 40 if I am permitted ;-) Nevertheless, I've traveled frequently and for a lot of countries you need a visa, which says you're allowed to enter and MUST exit the premises between then and then. That's authorization. And the latter is the major section of your initial question. Authorization is handled through access control systems; things such as OTPs can be used there, depending on the goals of such systems. Nobody would ever think of issuing you a /passport/ for a few hours, right? Hence, certificates is not the way. Let me describe this in another way: say you've got a web server where you want to authorize a set of individuals for a limited time (slot). A way to approach this may be (there are other solutions): issue everybody with proper identification. That's either username/password (the usual); in higher security settings, folks get issued electronic 'tags' , which contain 'client certificates' which are, for instance, usable in the SSL realm. Now the webserver has to be programmed / configured to request client /authentication/ for a chosen set of web pages, i.e. when browsing there, you'll need to have your client certificate accessible from your browser, so it can be sent to the server. We want to know who you are. So far, so good. When this works (you can test this scenario with the OpenSSL tools s_server and s_client in a rudimentary fashion), you've got authentication covered: your server knows who's who and who's connected where. Now on to the timeslot thing (the /authorization/ part): this is where that 'access control system' stuff comes in: the web server (pages) need to be programmed such that a chosen set of pages only 'show' (are enabled) during a given timeslot for a given set of users. That's outside the OpenSSL scope and definitely a job for the server system folks (programmers, admins). How you determine the start of that timeslot is up to you: your scenario suggests a teacher being present initiates the timeslot; another often seen scenario is where the timeslots are prepublished and you thus know you can succesfully log on and do the things you need to do between, say, 0900 and 1200 hours, june 4th. Have your identification with you when you enter during those hours and you're good to go. By following this flow, you can issue a 'client certificate' to each participant at your leasure /before the timeslot starts/. E.g.: certificates can be issued at the start of the school year for one year or maybe for 6 years, thus giving a certificate lifetime spanning a study (usually 4-5 years) with a bit of slack. Student must keep his cert private and stored in a safe place (more on that in a sec, because you can state this easily, but you MUST provide the facilities to enable this, or you're just breaking your system before it even started yet.) That client certificate is the student's /passport/. (Identification, can be used as authentication) For security reasons, I'd
Re: 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function)
Not an OpenSSL error. The fact that CRYPTO_cleanup_all_ex_data is also reported as implicitly declared, hints at a scenario where, for some reason, the listed source file (eXtl_tls.c) does not include the proper OpenSSL header files, such as ssl.h (for that SSL_OP_...) It may be that the #includes are in there, but disabled by conditional compilation (#if ... #endif) (Note: on some Linux distros this can happen when OpenSSL package is installed, but the OpenSSL-dev package is not, resulting in some ./configure scripts detecting the OpenSSL binaries, but ignoring the fact they cannot access the OpenSSL header files as those are not installed on the system.) Anyway, you'll need to investigate why the OpenSSL headerfiles didn't make it into the compile, unfortunately. On Thu, Jun 4, 2009 at 1:08 PM, vicky hsuanhsuan...@gmail.com wrote: Hi all : When I using make for other tool , I get the error msg as follows : eXtl_tls.c:125:3: warning: C++ style comments are not allowed in ISO C90 eXtl_tls.c:125:3: warning: (this will be reported only once per input file) eXtl_tls.c: In function 'tls_tl_free': eXtl_tls.c:131: warning: implicit declaration of function 'CRYPTO_cleanup_all_ex_data' eXtl_tls.c:131: warning: nested extern declaration of 'CRYPTO_cleanup_all_ex_data' eXtl_tls.c: In function 'initialize_client_ctx': eXtl_tls.c:368: error: 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function) eXtl_tls.c:368: error: (Each undeclared identifier is reported only once eXtl_tls.c:368: error: for each function it appears in.) eXtl_tls.c:368: error: 'SSL_OP_CIPHER_SERVER_PREFERENCE' undeclared (first use in this function) eXtl_tls.c: In function 'initialize_server_ctx': eXtl_tls.c:439: error: 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION' undeclared (first use in this function) eXtl_tls.c:439: error: 'SSL_OP_CIPHER_SERVER_PREFERENCE' undeclared (first use in this function) it’s looks like is openssl error. Any ideas on how to solve this? Any help'd be greatly appreciated Cheers, Pinky -- Met vriendelijke groeten / Best regards, Ger Hobbelt -- web:http://www.hobbelt.com/ http://www.hebbut.net/ mail: g...@hobbelt.com mobile: +31-6-11 120 978 -- __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
How about a proxy certificate? -Kyle H On Thu, Jun 4, 2009 at 7:23 AM, Michael Sierchio ku...@tenebras.com wrote: Lucas Mocellin wrote: I would like to generate a certificate valid in hours, does someone know how to do it? is that possible or I have to manage this hours by myself? Why? What kind of cert? What is the intended use for the cert? If it's for the purposes of restricting access to a given time window, use a different mechanism. __ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-us...@openssl.org Automated List Manager majord...@openssl.org __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Settings to create Timestamping Authority certificate signing request
Hi! I would need to know what arguments or settings in configuration file to use while create a certificate signing request for a Timestamping Authority (TSA) (per RFC3161). I guess that X509v3 Extended Key Usage must be timeStamp but don't know how to set it. Thanks in advance. Pablo Rogina
Newbie: PKCS#10 request for an existing key pair
Hello Experts, I request your expert opinion in generating a PKCS#10 CSR; I have generated my RSA 1024 private public key pair in the HSM. The HSM exposes the keys as handles. I am seeing that OpenSSL is raising the CSR (-new) but it generates the RSA key pair. In my case, i already have the keys generated with various attributes; I want to raise a CSR of this key pair which are referred by their handles. Please advice how i can do this with OpenSSL. Thanks Raj
Re: Newbie: PKCS#10 request for an existing key pair
Hi Raj: On June 4, 2009 12:58:02 pm Raj wrote: Hello Experts, I request your expert opinion in generating a PKCS#10 CSR; I have generated my RSA 1024 private public key pair in the HSM. The HSM exposes the keys as handles. First question: Do you have OpenSSL patched to use that particular HSM as an engine? Second question: Do you have a openssl.cnf set up that properly instantiates that engine? I am seeing that OpenSSL is raising the CSR (-new) but it generates the RSA key pair. In my case, i already have the keys generated with various attributes; I want to raise a CSR of this key pair which are referred by their handles. If that handle is in a file (most patches that I've seen for HSMs allow you to do this), then just point the -key parameter as that file. For information on how to create this openssl compatible private key file that contains the handle (if you don't have it already), I would talk to your HSM vendor. Have fun. -- Patrick Patterson President and Chief PKI Architect, Carillon Information Security Inc. http://www.carillon.ca __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Re: certificate expiration in hours
On Thu, Jun 4, 2009 at 2:31 PM, Ger Hobbelt g...@hobbelt.com wrote: On Thu, Jun 4, 2009 at 5:41 PM, Lucas Mocellin lucasmocel...@gmail.com wrote: Also I'll try to explain: I have 2 types of users: supervisors and students this system is to authenticate students to perform a online test, BUT the supervisor must authorize them to do it for a given time (the test time, usually 1-3hours) For other reasons the systems will be: a Linux LiveCD which is booted in any machine with this authenticator client. The supervisor will authenticate and get as answer a temporary pass (OTP time synchronized), so he will give that to the students in the same physical location, and the students have X seconds to authenticate their LiveCDs to be able to perform the test. So I'm having some problems with this second authentication (students), when they are authenticated (student_id, student_pass, otp_pass) I thought to create a VPN between the student and the server and this online test will only be available inside this VPN, so the VPN program should be responsable for the certificate validation, so I don't have to worry about. is that understandable? my english is not so good. any ideas are welcome. =) Hm, sounds like you're creating an examination system for taking tests. There are existing solutions for that, both non-profit and commercial. Almost always integrated as part of a larger computer-based training system. You may wish to check them out. can you tell me which ones? I know Vue, but it's not the case. Anyway, assuming you're going the DIY (do It Yourself) route. From what I read in your scenario, you've got everybody connected, so you've got a network -- no problem to set up a central server which does all the authentication, authorization and after that, the examination, for you. See above: solutions for this exist already. DIY means extra work. some extra information about my scenario. I do have a network, but I CANNOT trus this structure, I mean, can be *any* kind of desktops, with any OS's, and so on.. Sometimes you won't have any idea about the (infra) structure, and just know they have a CD-bootable machines with internet connection. So that's the reason we are customizing a Linux LiveCD distribution to boot this machines, and I don't have access to the gateway of this network (I don't think I said that, but just to clarify). If you go DIY, you need to be aware that you are mixing concepts here, as Michael already pointer out. Certificates are like passports: they're used for authentication ~ identification. I am not 'me' for 3 hours; I've been 'me' for 40 years now and I like to remain me for another 40 if I am permitted ;-) Nevertheless, I've traveled frequently and for a lot of countries you need a visa, which says you're allowed to enter and MUST exit the premises between then and then. That's authorization. And the latter is the major section of your initial question. Authorization is handled through access control systems; things such as OTPs can be used there, depending on the goals of such systems. Nobody would ever think of issuing you a /passport/ for a few hours, right? Hence, certificates is not the way. yes, I got what you mean.. I'm using the wrong weapon. and I think you got my first idea of why use certificates Let me describe this in another way: say you've got a web server where you want to authorize a set of individuals for a limited time (slot). A way to approach this may be (there are other solutions): issue everybody with proper identification. That's either username/password (the usual); in higher security settings, folks get issued electronic 'tags' , which contain 'client certificates' which are, for instance, usable in the SSL realm. Now the webserver has to be programmed / configured to request client /authentication/ for a chosen set of web pages, i.e. when browsing there, you'll need to have your client certificate accessible from your browser, so it can be sent to the server. We want to know who you are. So far, so good. We want to know who you are and WHERE YOU ARE. PS: they may have dynamic IP's. When this works (you can test this scenario with the OpenSSL tools s_server and s_client in a rudimentary fashion), you've got authentication covered: your server knows who's who and who's connected where. let me explain a little bit more about my scenario: I have to be sure that the student is performing his test in the class, I mean, he can't be at home or somewhere else, so that's the reason to create the OTP time-synchronized password which is given to the students in the exact time of the test in some physical place (I know they can text to someone else, but we are considering that they are trustable). the where you are could be translated to who authorized you to do this test. so in your case I should authenticate the student certificate and also this OTP
RE: Trouble generating a self signed certificate
From: owner-openssl-us...@openssl.org On Behalf Of andrew.luke Sent: Thursday, 04 June, 2009 09:11 I've been trying to generate a self signed certificate to get SSL working on a very simple internal web server. I'm using a windows server 2003 box so I got the open SSL windows binaries from http://www.slproweb.com/products/Win32OpenSSL.html. Using a HOWTO I found here http://www.sitepoint.com/article/securing-apache-2-server-ssl/ I used the following command to try and generate a cert: openssl req -new -key domainname.com.key -x509 -out sslname.crt I got an error on that one so I tried a command the openssl.org documentation had: openssl req -new -key privkey.pem -out cert.csr Note this second way won't generate a cert; it will generate a CSR (Certificate Signing Request) which you can then turn into a cert. That's also a valid approach, but slightly more complicated. The combination of -new -x509 generates a selfsigned cert; -new without -x509 generates a CSR. (No -new at all allows you to display, or manipulate, an already existing CSR.) Again I got an error like this: Error opening Private Key privkey.pem 3924:error:02001002:system library:fopen:No such file or directory:.\crypto\bio\bss_file.c:356:fopen 3924:error:20074002:BIO routines:FILE_CTRL:system lib:.\crypto\bio\bss_file.c:358: unable to load Private Key Any idea what the problem is? Yeah, the privatekey file doesn't exist, as it says. req -new [-x509] generates CSR-or-cert FOR AN EXISTING KEY. If you want the req command to generate the key itself, you also need -newkey parms and -keyout file, or use a config containing default_bits (RSA only) and default_keyfile. If you want to generate the key separately with openssl, first use genrsa, or gendsa and optionally dsaparam. If you want to use a key imported from elsewhere, describe in detail, but you're usually better off creating the cert or at least CSR in that elsewhere instead of openssl. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
RE: certificatate shows as V1 not V3
From: owner-openssl-us...@openssl.org On Behalf Of Potter, Kevin (Produban) Sent: Thursday, 04 June, 2009 05:12 When I open a certificate I have signed, in details it is showing as version V1 which cannot be imported into the application which generated the csr as it requires version V3. The CA.crt shows as version V3 but not the signed csr 1) That sounds odd. A cert-using app might reasonably require that certain extension(s) be used perhaps with particular value(s), which in turn requires v3; but there's no good reason to require v3 for itself. 2) I don't believe there is any CSR v3 format. IIRC there was a PKCS#something extended format, but I don't think that made it back into X.509. Perhaps by 'signed CSR' you actually mean the certificate generated from the CSR. That is signed, and contains data from the CSR, but it is not a CSR; see below. I am using Win32OpenSSL Light 0.9.8k and did a default installation. I have created a CA key pair using openssl genrsa -des3 -out CA.key 1024 I then created a CA certificate using openssl req -new -key CA.key -x509 -days 1095 -ou ..\ certs\CA.crt I assume that's a typo and you actually did -out and a valid pathname. Aside: if you wish you can combine these; req can do the keygen also. I then signed a certificate request using openssl x509 -req - days 1095 -in test.csr -CA ..\certs\CA.crt -CAkey ..\private\CA.key -CAcreateserial -out test.crt Per above you don't actually sign the CSR (which is already signed). You create a certificate from the CSR and sign the certificate. To get to your actual question: x509 -req sets version=2 (v3) only if you use -extfile and optionally -extensions (even if it specifies zero extensions -- though as above requiring v3 without actually using/requiring an extension is silly). __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
making a personal certificate using openssl
Hi... first of all many thanks for this mailing list.. i was able to make digital certificate for servers and imported to mozilla.. Now i want to know how to make personal certificates..The client makes a request from the mozilla browser using keygen tag..we get the spkac format string. Now how we use openssl to process spkac string to make a personal certificate rather than a server certificate...so that i can import it to the mozilla browser as a personal certificate.. thanks a lot.
RE: Trouble generating a self signed certificate
The error message means what it says: it can not find privkey.pem. When generating a new certificate request, you will need to sign the request with your private key, which needs to be generated first. http://www.google.com/search?q=generate+rsa+private+key+openssl --Will -Original Message- From: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] On Behalf Of andrew.luke Sent: Thursday, June 04, 2009 8:11 AM To: openssl-users@openssl.org Subject: Trouble generating a self signed certificate I've been trying to generate a self signed certificate to get SSL working on a very simple internal web server. I'm using a windows server 2003 box so I got the open SSL windows binaries from http://www.slproweb.com/products/Win32OpenSSL.html. Using a HOWTO I found here http://www.sitepoint.com/article/securing-apache-2-server-ssl/ I used the following command to try and generate a cert: openssl req -new -key domainname.com.key -x509 -out sslname.crt I got an error on that one so I tried a command the openssl.org documentation had: openssl req -new -key privkey.pem -out cert.csr Again I got an error like this: Error opening Private Key privkey.pem 3924:error:02001002:system library:fopen:No such file or directory:.\crypto\bio\bss_file.c:356:fopen 3924:error:20074002:BIO routines:FILE_CTRL:system lib:.\crypto\bio\bss_file.c:358: unable to load Private Key Any idea what the problem is? -- View this message in context: http://www.nabble.com/Trouble-generating-a-self-signed-certificate-tp238 69634p23869634.html Sent from the OpenSSL - User mailing list archive at Nabble.com. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org
Firefox hanging on SSL connection to Apache
We have been experiencing sporadic customer complaints of Firefox hanging when connecting to our web server using SSL. When the problem occurs we see the errors like this: I/O error, 5 bytes expected to read on BIO#329418 Sometimes the connection completes after 15 or so seconds, others it just times out. We've been able to recreate the problem using FF 3.0.7 on Win XP. We've also heard reports that the problem goes away if the user turns off the Referer header in the request since the site that is redirecting the request has a very long URL (over 800 bytes). Anyone seen anything like this or know of a fix we can try? Thanks, Joe
openssl cannot decrypt the RSA/ECB/PKCS1Padding from java
Dear, Please give me an advice , I don't sure it from OPENSSL or Java JCE My problem is strange , java (private key) talk with php (public key ) in 2 way. 1. java encrypt - php decrypt 2. php encrypt - java decrypt for (2) operation successfully. but (1): php decryption get the NULL string if I change from PKCS1Padding - NoPadding then php can decypt message. -- Java: Cipher rsa_cipher = Cipher.getInstance(RSA/ECB/PKCS1Padding); rsa_cipher.init(Cipher.ENCRYPT_MODE,rsaPublicKey); // auto selects block type 2 AlgorithmParameters pm = rsa_cipher.getParameters(); byte[] enc_data = rsa_cipher.doFinal(ciphertext.getBytes()); BASE64Encoder based64 = new BASE64Encoder(); s_out = based64.encode(enc_data); //ciphertext --- PHP: $split_ctext=substr($cipher_text,$i,$blocksize); $split_ctext=str_replace( \r\n, , $split_ctext ); $split_ctext=str_replace( \n, , $split_ctext ); $split_ctext=base64_decode($split_ctext); openssl_public_decrypt( $split_ctext, $tmp, $public_key); if I change to Cipher rsa_cipher = Cipher.getInstance(RSA/ECB/PKCS1Padding); and openssl_public_decrypt( $split_ctext, $tmp, $public_key,OPENSSL_NO_PADDING); Then I can success get plain text --- Plain Text: tmp = eitweb123|WEB|20090512104236||cpg_test|23022006145859|3199900071658|100|100|0|7||eitweb123|WEB|20090512104236||cpg_te; Result: Fail Case: [null message] Success Case: ���eitweb123|WEB|20090512104236||cpg_test|23022006145859|3199900071658|100|100|0|7||eitweb123|WEB|20090512104236||cpg_te -- View this message in context: http://www.nabble.com/openssl-cannot-decrypt-the-%22RSA-ECB-PKCS1Padding%22-from-java-tp23881221p23881221.html Sent from the OpenSSL - User mailing list archive at Nabble.com. __ OpenSSL Project http://www.openssl.org User Support Mailing Listopenssl-users@openssl.org Automated List Manager majord...@openssl.org