Slashdot Mirror


Self-Regulating SSL Certificate Authority?

bcg asks: "It has come that time again to renew some of my SSL certificates and part with substantial amounts of cash. This has got me thinking - why should we pay large amounts of cash for authorized certs when so little is done by the companies issuing them? Sure they get you to send them a copy of a business certificate but how does this prove the character of those running the SSL server? What ideas can we come up with for a self-regulating certification authority? Could we set something up along the lines of the many free DNS servers around but use it to authenticate SSL certs?" We last touched on this subject in October, when someone was searching for cheap SSL certs. We've also discussed why certs are so expensive. Why not take it one step further and discuss ways of making and authenticating our own certs for free...or as close to free as possible?

25 of 269 comments (clear)

  1. Character? by Anonymous Coward · · Score: 5, Insightful

    >Sure they get you to send them a copy of a >business certificate but how does this prove the >character of those running the SSL server?

    They aren't supposed to be verifying your character, they verify your identity.

  2. Free SSL Certificates.. by dev_sda · · Score: 4, Insightful

    Personally I see very few reasons why these should not be obtainable openly.

    All that a Trusted CA issued certificate says to me is that the potential scammer had the money to buy an SSL certificate.

  3. I've got it! by DrFrasierCrane · · Score: 5, Insightful

    Want them cheap? Let the GOVERNMENT handle SSL certs! After all, they're already handling drivers licenses, social security numbers, and ten kazillion other things that are supposed to prove that you are you, why not just give you a cert, too? For a small government fee, of course.

    --
    You call this a signature?
  4. Just say no... by weave · · Score: 5, Interesting
    Hate to say this, but most users will do whatever you tell them to. You start off with a normal http page and then say something like "After you click, you'll be asked to accept a certificate, click yes to continue" and they will.

    Hell, even Microsoft says that on their windows update site for the active X download it throws onto your computer during your first visit!

    Someone should do a study on this, sounds like a great high school science fair project! I can see the display in the gym now, pasted on the cardboard display case "Are people idiots?" and have nice pie charts and tabular data from your research. It beats boiling something in a test tube to see how long it takes at different temperatures or testing the growth rates of different molds...

  5. My standard rant about CAs by Jack+Greenbaum · · Score: 5, Interesting

    My standard rant about why I use my own certs:

    Digital certificates are available, for a fee, from a commercial certificate authority (aka CA) such as Verisign. For about $15 a year Verisign will claim to know who you are though you provide no proof other than the grand American Dollar. If your credit card clears, then Verisign says email from you is from you. Why is this worth $15? If I send a signed email to someone and they verify that signature based on the cert I send them, then the only reason to trust that the cert is based on the trusting the signing CA. Verisign says that if I have a credit card with a name on it, then I am the person with that name. Unfortunately due to identy fraud, this is often not the case. In our family we have been victims both of simple credit card fraud (where are card number was stolen and the card duplicated) and full on identity fraud where our social security number was used to open credit accounts by people other than us. So merely the possession of a credit card number does not imply identity. By trusting Verisign you are trusting the US credit industry, which is corrupt and insecure.
    Assume that you do trust that credit cards are valid identifications. Why would you trust the CA who took that as ID? How do you know who the CA is? CA's are identified by certificates just as users are. How did you get a certificate for the CA? Usually it is because Microsoft and Netscape include a set of certificates from trusted CA's in their products. If the cert comes from one of those CA's then Microsoft and Netscape say it's valid. Therefore you must trust that Microsoft and Netscape included authentic certs, and you assume that those certs have not been compromised since you installed the software. Maybe you think I'm paranoid. Really I just object to paying money for something I can do better myself.

    I have created the Greenbaum.Org Certificate Authority to create digital certificates which are free and trusted. If you get an email from me, signed by a certificate issued by me, verified by the CA certificate you download from this site, then the email was from me. If you get an email from me, signed by a Verisign certificate, then it could have come from the gangsters who stole my credit card to buy Nikes and chinese food.

  6. Difficulties by bitkid · · Score: 4, Interesting

    I see several difficulties with a free SSL-CA (as I see with free DNS/TLDs/whatever):

    It's a great idea, but... who will use them? To be more specific: Verisigns capital is that it's root-certificate is in every browser on this planet. I don't want to know how much cash they had to throw at M$ to get their cert. into IE, but I doubt that a free CA can come up with that amount. Sure, we can probably get the certs into mozilla etc. and joe-schmoe IE-user can add the root-cert to his known certificates, but question is: what impression will your trustworthy buissiness give him, if he gets lots of warnings when on accessing your gimme-your-visa page. 'It's the value of trust(tm)' :-)

    just my two cents...

  7. Web of Trust, a la PGP? by MMHere · · Score: 5, Interesting
    Why not take the approach that the original PGP system did? Establish a Web of Trust, where multiple individuals can cross-sign each other's certificates?

    You could perhaps add the idea of a threshold -- once a cert is signed by enough well-trusted individuals, the cert becomes "good enough" to go public.

    Of course, there might be an issue of startup time -- a requestor of a new cert wouldn't get one until it has had time to make the rounds and get signed by many trusted individuals.

    There is also a bit of a seeding problem. How do you establish a large enough trusted community in the beginning, so that sufficient signings can be made on new certs.

    Also, I would guess that one of the things that current commercial cert corporations provide is a source of culpability, should something go wrong with the cert they issued. With a public signing group, you might not have this same level of responsibiliy. This could be good or bad, depending on your perspective.

  8. Self-signed and non-trusted CAs by Frobnicator · · Score: 4, Interesting
    Many ISP's and low-budget group have self-signed certs. They're easy to make. (well, easy for someone who is setting up a secure web site). I have quite often seen sites with a self-signed cert and another page giving the fingerprint of the cert. Most vendors allow these, but they aren't "trusted".

    The only reason the big companies charge so much (their claim, not mine) is the insurance they provide, and the fact that they are "trusted" by the various vendors.

    Any new group wanting to be a trusted CA will face the liability issue -- if one of your customers sues you, even if you try to disclaim all liability up front, you will still face massive court fees. Even if you won in court, you would lose financially if not insured.

    There is no technical or logistical problem with setting up a Free (and free) common-geek's CA, the problems are entirely legal ones. I know because I looked into it right after SSL came out. It looks like a good business plan, right up until someone takes you to court.

    frob.

    --
    //TODO: Think of witty sig statement
  9. Chain of trust by juancn · · Score: 5, Insightful
    I think the issue is how we build an entity that we can all trust.

    Basically the security behind SSL certificates (and all certification technologies) is that you trust the CA (the root of the certificate path).

    Commercial companies are trusted because they would go out-of-business if they lost your trust. So basically you trust in the fact that they want to make money.

    So here is my point, besides financing and all the other issues, how do we establish a chain of trust?

  10. Ummm, security reasons? by kill+-9+$$ · · Score: 5, Interesting
    Technically, as we know, you can sign your own certificates for free. Only problem is those who visit your site will get all those wonderful warnings and popups, etc.

    Why not have a self-regulating authority? Well, let me submit a request to sign my certificate saying I'm Amazon.com, hijack the domain and steal credit cards. The point of CA's is to do some background checking to verify you are who you say you are. Debatable, agreed, but is you're average script kiddie, cracker, etc. gonna shell out bucks to get a fake cert? Probably not. Not to mention once money is involved, there is an audit trail of some sort.

    As for whether the prices are gouged a bit, I won't argue with you there. Seems that it shouldn't cost as much as it does, but at the same time I'd think most companies rack it up as a cost of doing business (just like rent, equipment leases, etc)

    --

    -- A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard
  11. I'm impressed by Amsterdam+Vallon · · Score: 5, Funny
    Posted by Cliff:
    We last touched on this subject in October, when someone was searching for cheap SSL certs. We've also discussed why certs are so expensive. Why not take it one step further and discuss ways of making and authenticating our own certs for free...or as close to free as possible?
    Ladies and gentleman, a round of applause for the only Slashdot editor who reads Slashdot!
    --

    Reply or e-mail; don't vaguely moderate. Ex-O'Reilly/MIT employee, now a full-time Google employee.
  12. Create own CA + install as trusted CA in browser by Delirium+Tremens · · Score: 4, Informative

    Just create your own CA certificate and then write an html page for Netscape and another one for IE so that it loads your CA certificate into the browser's certificate database.
    Then use your CA certificate to issue as many certificates as you like. As long as the DN matches the hostname or IP of your HTTPS server, your users' browser will play along happily.

  13. Re:How about Free? by neuroticia · · Score: 4, Informative

    Comodo issues relatively inexpensive certs that are accepted by most consumer, and even most non-consumer browsers.

    FreeSSL also offers inexpensive (though it doesn't quite seem to be free) certs.

    They seem to work with Lynx, Mozilla-based browsers, IE... Well. Look at the compatibility list. =]

    If you want to be compatible with EVERYONE, you'll have to spend a bit more, but these are good for the majority of e-commerce sites, and intranets/basic sites.

    -Sara

  14. Ri-i-i-i-ght by apankrat · · Score: 4, Insightful

    And how would I know that the content of some online store that sends me a self-signed or home-brewed-CA certificate is not entirely faked by man-in-the-middle credit card # collector ?

    And while you are 'thinking web, not hierarcy' also set aside some time to think how you would be building that web in first place. In particular - how you would be establishing trust with comletely foreign parties.

    --
    3.243F6A8885A308D313
  15. Googlify it... by ejungle · · Score: 4, Interesting

    The best way I can think of to do this is setup an infrastructure similar in principle to Google's PageRank. So, anyone can be granted a certificate, but the strength of that cert is based upon an index of reputation. Which to me personally, is somewhat more meaningful than any given company(TM) buying a certificate. What method you'd use to create such an index would require more investigation, with considerations for security and spoofing prevention.

    At it's base though, I like the concept. And would like to hear some ideas on what we could use as "karma" *cough*... Realistically though, (and this is where I need help from those more familiar with SSL certificates than I...) is there a facility in the signing process which allows for extra certificate information at the time of request? To my memory, I think there is. For instance:

    Such and such has requested this and that on your system. Such and such has a reputability index of .65
    Proceed? (Yes/No)

    With the infrastructure already there, methinks the implementation is somewhat trivial. Can anyone help me refine the method?

    --
    Remember: umount it before you fsck it.
  16. Would this idea work? by Mustang+Matt · · Score: 4, Interesting

    Have a ranking system that would base trust off the number of certificates, the age of the certificates and complaints from users.

    So basically a centralized authority that gives out free or cheap (as in as cheap as domains) certificates.

    You sign up with them as a reseller. All of your customers buy certs from you.

    I'm thinking of this in terms of being a hosting provider as I am.

    So I sign up with this centralized authority and purchase certificates for my customers.

    Browsers could have a blacklist check on certs. So you try to hit one of my sites, it validates against your list of blacklisted sites that you updated last month and either:
    A. Shows up with a good rating.
    B. Doesn't show up because it's too new.

    The user could then set a threshhold of trust and if the cert passed that threshhold it wouldn't warn them.

    This idea isn't very thought out, just an idea I threw together. Run with it.

    --
    The man who trades freedom for security does not deserve nor will he ever receive either. - Benjamin Franklin
  17. Free root cert by kylegordon · · Score: 4, Informative

    You can get free ones from cacert.org.
    I use them to SSL enable my website at glasgownet.com and any other stuff I need certs for.

    Well worth it.

  18. DNSSEC is usually the right choice by billstewart · · Score: 4, Insightful
    DNSSEC isn't widely deployed, but it's the right identity/authentication model for many of the reasons people want certs. Unlike the "Produce Lots of Official-Looking Documents" model of identity, which says that Example, Inc. is the real owner of a certificate, and lets Example use the cert to sign any web site they want, DNSSEC uses the "People Who Give You The Domain Name Sign You A Cert" model, which lets whoever owns the domain name example.com certify that you're connected to a web server at the real example.com or www.example.com.

    In general, there's a lot of confusion about Public Key Infrastructures, partly because of the big gap in the middle of "1. Write Marketing Hype!! 2. ???? 3. ???? 6. PROFIT!!" chain, but mainly because there are different ways to answer questions about "Who's certifying whom or what to do what or be who or what?" which lead to different applications and solve (or fail to solve) different business problems. One major effort to address this systematically is the IETF SPKI Simple Public Key Infrastructure group, much of which is based on the work of Carl Ellison and Ron Rivest (RFC2692, Requirements, RFC2693, Theory.) It turns out that, while the "Some Authority Certifies that You have Documents with your True Name" model that's popularly used is often useful, it's often not the right model, and there are often more useful relationships, such as the DNSSEC authentication used for web sites and email.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  19. Can you trust Verisign? by cpeterso · · Score: 5, Interesting


    I used to work on Microsoft's Public Key Cryptography QA team. We worked with Verisign to create fake certificates to test IE's SSL and Authenticode signed downloads. When we were done testing, someone on our QA team called Verisign customer service and said, "hi, I work on Microsoft's QA team. We are done using those fake certificates for our tests. Can you please revoke (cancel) them?"

    Without any further verification, the Verisign customer service agent pushed a button and canceled the real Microsoft certificate, the one used to sign all of Microsoft's downloads, device drivers, and CDs. oops. Luckily, no one pays attention to Verisign's CRL (Certificate Revocation Lists) because certificate revocation is off by default in IE. Since no one really used the CRL, Verisign was able to the remove Microsoft from the CRL and reinstate the Microsoft certificate after a couple days.

    So when you "trust" Verisign, think hard about what that really means..

  20. A clarification by Elentar · · Score: 4, Insightful

    In addition to establishing identity, certificates also allow the transmission of securely (for now) encrypted data. This is the feature everyone wants - the identity aspect is just something for Verisign to hype.

    Self-signed certificates are ludicrous - it takes only a few moments longer to create your own CA (certificate authority, what Verisign is) and issue yourself a certificate. Then just link incoming clients to the CA certificate, which will be added to their CA list if they accept it, and after that your site will be free of certificate warnings.

    Any benefit that 'root CA' lists may have had has been overridden by uninformed sysadmins. Too often are servers moved to new hostnames or domains, or certificates forgotten to be renewed, etc.

    Users trust you to take their data and charge their credit cards, protect their personal information, send them material by delivery and provide information that is true. Why, then, wouldn't they trust you to generate a certificate yourself?

    As mentioned above, the endorsement of an arbitrary company means nothing, but responsiblity and security awareness of sysadmins means everything. Owning a credit card does not prove the latter.

    -Elentar

    --
    The wheel it turns, around and around, with an ancient rumbling sound.
  21. Why require "identity" at all? by dirk+busimi · · Score: 5, Interesting
    What SSL Certificate Authorities require is screwed up as it is. If you want to sign up, you need to provide proof of your identity. This comes from different sources, such as Duns and Bradstreet number, some official letterhead, proof (paper mail or phone) that your domain name registration is valid and matches your offical address, etc.

    My problem occured when trying to get a cert for a small group of alumni. We've got about 50 people in it. We're just trying to make it possible for us to discuss things on our bulletin board with passwords protected with SSL.

    We payed our money to Entrust. We still have not gotten a certificate or a refund. They first required that we prove we have a relationship with the school. We aren't an official organization, don't pretend to, and don't use their domain at all. It's completely separate.

    So next they required we show articles of our encorporation. Is this what's required to have a certificate? Why can't joe-random-webmaster have a valid certificate from the "big guys"? Sure, you can go with smaller outfits, but their certs aren't in older browsers.

    IMHO, a cert should simply say "This cert was given to the folks who run www.this_domain.com." They can check and verify whois data and your ability to receive email. Any other requirements are just stupid. Just because you want SSL doesn't mean you want to be an e-commerce site.

  22. The root of the problem is the technology. by Nicopa · · Score: 5, Interesting

    TLS (SSL) does not need the ugly PKI technology to operate. SSL/TLS could very well use PGP keys. The difference is that PGP technology is more well designed and lends better to help building a web of trust.

    Some people might say that newbies can't handle the complexity. Well it's the responsibilty of software developers to help them overcome this. Example: As the same PGP keys would be used for mail, the web of trust could be linked to the addressbook handling.

    Besides, the current model gives a sense of security which is not real. Do we really trust CA's? When you go to an "internet cafe", do people check that the list of trusted CA's haven't been altered. In this way, PGP would bring the real sense of security/insecurity which is currently "masked".

  23. Completely free SSL certs at FreeSSL.com. by Anonymous Coward · · Score: 4, Informative

    FreeSSL offers free certificates. They confirm by email and an automated phone call. You'll be certified in 10 minutes or less. I found them after reading this article and looking around a bit. Absolutely no problem getting it working. Wish I had know about this sooner.

    Yes, they also have non-free certs, but for the life of me I can't figure out the difference. My only question is how they make any money offering free certs and making automated long distance confirmation calls.

    Gotta say, it's pretty cool when you press # on your telephone and the web page updates to show you've been confirmed.

    Now if only I could figure out a way to get SSL working better with name-based virtual hosting.

  24. Self Signed Certs aren't always an option by davidpenrose · · Score: 4, Informative
    There are many cases where Self Signed Certs are not an option. Or, rather, any cert signed by a non-trusted CA.

    • Some browsers do not allow you to click 'yes' at all. Think older IE browsers which simply gave you the "something is wrong" page. It may be a completely valid cert in Mozilla, but with this browser you can't view the page no matter how much you want to.

      For example the latest version of Blazer for my palm has no such feature, so I'm screwed.

    • If you do get the ssl warning and the option to say "yes", how do you know you're not the victim of a man-in-the-middle attack?

      In order to click "yes" you should verify that the SHA1 and MD5 fingerprints are correct. Do you carry a copy of these around in your wallet so you can use that web page when you're on the road? I didn't think so.

    Unless you actually control both endpoints (say you are setting up SSL using Stunnel on machines you run) then self-signed certs are not perfectly secure. Or, if you do verify everything as you should, you have introduced a huge hassle in performing secure SSL.

    --
    I only wish I had one.
  25. Resellers don't need business licenses by AltImage · · Score: 4, Informative

    I use so many SSL certs that I became a reseller for InstantSSL. It basically costs $200 and you get the ability to generate all the certificates you want without first providing business licenses. It also costs about $8 less, too. There's also zero turn around time...I get the completed cert immediately. It's *extremely* convenient but it kind of defeats the concept of a trusted source.