Certificate Request Validation

As a Certificate Authority it is our responsibility to validate the information that you provide, this is vital if anyone is to trust the certificates that we provide. There are two types of certificate that we can validate automatically, which allows us to provide this service free of charge.

E-mail certificates are easily verified because they require an e-mail address in order to create them. By sending a message to the e-mail account a certificate is requested for we can validate that you have access to that e-mail and can validate the request.

Server certificates are a little more difficult. We need to be sure that you are genuine in your request for a server certificate. The best way we could think of was to post the certificate to that server. If your request is genuine you will have access to the server and be able to receive the certificate. This does however require you to have a mechanism to receive the certificate via HTTP POST. Below are some examples of how this can be achieved. Once you have received the certificate you will be able to install it on your web server.

Server certificate validation with PHP
$rs = http_get_request_body_stream();
$fp = fopen('server.pfx');
while (!feof($rs))
{
    $contents = stream_get_contents($rs);
    fwrite($fp, $contents);
}
fclose($fp);
			
Server certificate validation with ASP.NET
protected void Page_Load(object sender, EventArgs e)
{
    int len = (int)Request.InputStream.Length;
    byte[] buf = new byte[len];
    int read = Request.InputStream.Read(buf, 0, len);

    FileStream fs = new FileStream(@"\server.pfx", FileMode.OpenOrCreate);
    BinaryWriter bw = new BinaryWriter(fs);
    bw.Write(buf);
    bw.Close();
    fs.Close();
}
	

These are just examples, you should of course incorporate your own validation as necessary and error handling etc.

You can of course use any method that supports retrieving data from an HTTP POST request. Once you have the certificate file you can install it. You will be prompted for the password that you entered when requesting the certificate.