New answers tagged

0

In an X.500 distinguished name the "keys" represent Object Identifiers abbreviated OIDs. This includes the Subject and Issuer names in an X.509 certificate and also the Subject name in a PKCS10 CSR, and quite a few other things. I could not find a complete list of the allowed keys. There is no complete list. The OID assignment scheme allows ...


-2

In apache, the "current best" config I am aware of is: SSLProtocol +TLSv1.2 +TLSv1.3 SSLHonorCipherOrder on SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:...


4

It is a trade-off between the security of storage (TPM is better, in theory it won't give off the key to anyone, it will just accept data to encrypt/sign for you with the key), the security of implementation (openssl is opensource, TPM may have a nasty backdoor) and the ease of use (a PEM file generated by openssl is universal, a key in TPM needs a TPM ...


23

The difference between using some hardware backed key store (i.e. TPM, HSM, smartcard ...) and a "pure software" solution like openssl genrsa is not so much about the security of the key generation but about the security of the key storage. HSM and similar are designed to never actually provide the created private key but only do operations like ...


0

The problem with standard Merkle-Tree is that can enable second-preimage attack or worst signature forgeries. For simplicity assume that the parent of nodes (e1,e2) is H(h1||h2) with h1=H(e1) and h2=H(e2). Now, the attacker can use this to find a second preimage for the list; h1||h2, and this will be hashed to to H(h1||h2). Now attacker can replace the (e1,...


0

Crypto functions operate on raw bytes. So, if given hex-encoded strings, it's generally a good idea to decode these strings first, then feed the underlying array of bytes into the crypto function. In your case, you need to concatenate two hex-encoded byte arrays together, then take the SHA256 hash of the result. There are two ways you can do this: a) ...


0

Hash is a set of bits. If you really want to work with hashes, you should use their binary representation, not the text representation. For instance, "b5" in your example means that the first byte of your hash is "10110101". But if you consider it as a text, it will mean that every character will be considered separately, so "b5"...


0

As @dave_thompson_085 above points out, there is only one way to do this with OpenSSL which is: openssl pkcs8 -topk8 -in key_pkcs1_encrypted.pem -outform DER -out key_pkcs8_encrypted.der As he says, beware that OpenSSL gets a bit "kludgy" where support for encrypted PKCS8 is concerned (specifically pkey cannot read PKCS8-encrypted format input ...


1

"RSA public key" in the certificate, for TLS-RSA, is used by the client to encrypt the PMS. It can be seen at the "client key exchange" packet. Then, what is its function in the case of TLS-ECDHE-RSA? Short answer: in ECDHE-RSA, the RSA public key in the certificate is used to verify the RSA signature on the ephemeral ECDH public ...


0

As discussed in comments, you can't do that for CMS SignedData in general, but you can do it for an RFC3161 timestamp token that contains the tsa [0] GeneralName OPTIONAL element, which all I've looked at do. Since I don't have your token(s), I used one I have in my test data from freetsa: $ cat se244280.c /* se244280.c 2021-02-06 */ /* MINIMAL ERROR ...


3

From the documentation of ca: -outdir directory The directory to output certificates to. The certificate will be written to a filename consisting of the serial number in hex with .pem appended. ... new_certs_dir The same as the -outdir command line option. It specifies the directory where new certificates will be placed. Mandatory. So yes, this is the ...


Top 50 recent answers are included