5

Due to the design of TLS 1.3 and different to earlier TLS versions the normal (EC)DHE key exchange is already finished once the server sends the certificate. They key server_handshake_traffic_secret used to encrypt the certificate and other handshake messages is based on the same key material as the keys which are used for the application data later. For the ...


4

It could be used to sign a Certificate Revocation List, for instance. Generally it is not used for anything other than certificate related actions, and some private keys belonging to root and intermediate certificates are therefore stored off-line to enhance security of the private key.


3

There are two different identifiers in a certificate, the algorithm of the public key for the certificate and the algorithm of the signature from the issuer. The two don't have to even be the same algorithm family (e.g. RSA CA certs can sign ECDSA certs, and vice versa). In the following certificate parse structure the algorithm identifiers starting at ...


3

The ASN.1 module The OID of RSASSA-PSS is specified as below, however, it should only be used as part of an AlgorithmIdentifier, which is a SEQUENCE of the OID, followed by the parameters. These parameters are NULL for PKCS#1 v1.5 signatures, but for PSS they must be present Here is the OID: -- -- When id-RSASSA-PSS is used in an AlgorithmIdentifier,...


3

Yes, of course this is possible. Generally you are required to first create a certificate (signing) request or CSR - a specific structure sometimes also called PKCS#10 after the standard that defines it. The certificate request contains the public key inside of it. This certificate request needs to be signed with the pre-established private key for the ...


3

Unlike KDC or public key authority, CA does not have to be online to provide keys to users What they mean by that is that the CA doesn't have to be on-line at the time of negotiation. That is, when you use TLS to take to Amazon, the CA doesn't have to be a part of the negotiation. Instead, Amazon can send its certificate and you can verify it (and then ...


3

In a public-key infrastructure, there are two ways a public key can be trusted: either because it's signed by a certificate authority that you trust, or because you already have it in a list of trusted public keys. That's where the chain of signatures ends: in a list of pre-trusted public keys. These pre-trusted public keys are usually called “root CAs” or “...


3

You're confusing a lot of things: Alice and Bob agrees on a shared private key that is to be used to encrypt You cannot have a "shared private" key; sharing and keeping things private are opposite terms. That would be called a secret key, as it is kept secret between Alice and Bob (some books confuse these terms as well, but yeah). To reach private ...


2

Untrusted certificate or expired certificate? If you go strictly by RFC 5280 ordering, "untrusted certificate" should be returned. More specifically section 6.1.3 starts with The basic path processing actions to be performed for certificate i (for all i in [1..n]) are listed below. (a) Verify the basic certificate information. The ...


1

The Full Response has additional information over and above the P7B file with information such as the CMC response and some chaining information. I'd go as far as to say it's not really relevant in day-to-day use. You can look at them all with certutil.exe and make your own mind up though - simply pipe the outputs to a text file and read at your leisure. ...


1

The server may react as it pleases. The TLS spec doesn't come with application instructions in this regard. The client should definitely reject any certificate chain it manages to build with an expired certificate. That means that the handshake should fail and the TLS session will not be instantiated. This requirement depends on a clock available to the ...


1

(0) this isn't really about crypto and would probably be better on security.SX, which has lots of Qs about certificate chaining and HTTPS browser and server usage, but ... (1) while AIA is used more nowadays than in the past and can be an acceptable workaround, the official, standard solution is that the server must send the chain including intermediate ...


1

I am not an expert in cryto or GNUPG/PGP. Nevertheless, as I understand the question(s), it is my belief I can answer all of it from experience. I have been experimenting with making keys and various arrangements of primary-sub key setups. As such, I have encountered the arrangements you've described. I am not going to address best practices. (With one ...


1

It is PKCS7 signed message. In .Net you can use SignedCMS object ... using System.Security.Cryptography.Pkcs; ... var ctx = new System.DirectoryServices.AccountManagement.PrincipalContext(System.DirectoryServices.AccountManagement.ContextType.Domain); var userPrincipal = System.DirectoryServices.AccountManagement.UserPrincipal.FindByIdentity(ctx, System....


1

The strong authentication protocol referred to in the book is defined in the Annex N of "X.509 (10/16)" published by the ITU https://www.itu.int/rec/T-REC-X.509 Here is an excerpt of the standard for the two-way and strong three-way protocols: Annex N Considerations on strong authentication Strong authentication makes use of PKI as specified by ...


1

You can find a list in the bouncyCastle source code for Asn1SignatureFactory, here: https://github.com/kerryjiang/BouncyCastle.Crypto/blob/master/Crypto/x509/X509Utilities.cs In addition to that, you can list all registered SSL-digest-methods with the following C-Code: #include <openssl/evp.h> #include <openssl/objects.h> #include <stdio.h&...


1

Certificate Signature Value is seen in the Firefox browser, whereas google chrome or IE will not show this field and value.


Only top voted, non community-wiki answers of a minimum length are eligible