Groups | Blog | Home
all groups > iis security > june 2004 >

iis security : makecert: why only test certificates?


Martin M
6/13/2004 2:06:10 PM
I wonder why microsoft states that makecert creates only
test certificates. Is this just for legal reasons (i.e.
because I am not a trusted CA) or is this for technical
reasons?
As I understand a certificate needs a number which is the
product of two very large primes (about 100 digits). It is
most important that the primes are randomly selected: If
the primes are randomly selected, it is (more or less)
impossible to find the primes if only the product (which
is part of the public key) is known.
If makecert would use e.g. a table of only 1000 primes,
this would be more than sufficient for testing, but would
not give any security because everybody could try these
Karl Levinson [x y] mvp
6/13/2004 6:23:37 PM
Well, if you had a CA, you would just use the CA to generate the certs, and
you wouldn't need makecert. If you didn't have a CA, you would get one from
someone with a CA, and again they wouldn't use makecert.

I would define not having a CA as a technical reason and not a legal reason.
CA is free with Windows 2000 server. The requirement for CA is not because
of Microsoft licensing, but because you need someone somewhere to validate
the cert as trusted.

With makecert, there is no built-in way to store or securely exchange the
secret components of the cert between the host server and the CA while
generating it, which theoretically compromises the security of the cert.
The CA handles this, certificate expiration, etc. No single utility like
makecert can do all these things that are necessary to make a reasonably
secure cert.


[quoted text, click to view]

Jerry Pisk
6/13/2004 6:42:02 PM
You do not have CA, you are one. You have a somewhat trusted root
certificate. You still need a program to generate certificates (signed by
your root certificate), you just wouldn't use makecert (it can only create
root certificates and it can't be really customized, you can't set all the
various options such as key usage).

Jerry

[quoted text, click to view]

anonymous NO[at]SPAM discussions.microsoft.com
6/13/2004 11:17:00 PM
Thank you much for your reply.
Well, it does not depend upon the way (CA or makecert)
that someone must validate the certificate as trusted if
this is needed.
This is not an issue for me, I would need certificates for
encrypting emails between a limited number of persons
which I personally know. I could hand over a diskette with
the certificate, so distribution is not an issue, either.
The problem is: are the certificates per se secure, or is
the number of certificates created by makecert limited?
(I am a patent attorney. Certificates of a trusted
certification authority don't work for me because such
certificates are bound to a single person. This would
imply that I had to decrypt all emails by myself, which
would be similar to the hypothesis that I had to open all
envelopes of snail mail by myself. If I am not in the
office, nobody can read the emails. Well, I could obtain a
certificate for a secretary, but if she or he is not in
the office, once again nobody can read the emails.)

Martin M

[quoted text, click to view]
Eric Chamberlain, CISSP
6/14/2004 7:07:48 PM
Martin,

Keep in mind that it is the receiver of encrypted e-mail that needs the
certificate. You and your clients would need certificates to exchange
encrypted e-mail. The public key is used to encrypt the messages and the
private key is used to decrypt. Whatever CA you choose to use, you want
separate signing and encryption certificates. Your encryption certificate
private key, if marked exportable when created, can be shared with any
office staff. By separating the signing functions, your staff can decrypt
your e-mail on your behalf, without being able to sign as you for outgoing
mail.

Thawte offers free personal certificates that can be customized for
encryption only functions.

--
Eric Chamberlain, CISSP



[quoted text, click to view]

Martin M
6/15/2004 11:54:33 PM
Sorry, this is NOT true. You can create certificates
signed with a root certificate using makecert. This
certificate may be an installed one or one which you have
a .pvk and .crt file of.
Only if you use the -r option you get a (self signed) root
certificate.
But this is not the point.
The security of all certificates depends upon the fact
that the number of keys is extremly large so you can't
crack the keys by trying. I wonder why Microsoft states
that the certificates created by makecert are for testing
only. Is the number of keys limited if you use makecert?
Martin M

[quoted text, click to view]
AddThis Social Bookmark Button