Exemplo n.º 1
0
 def test_missing_common_name(self):
     csr_info = {
         'C': 'US',
         'ST': 'Texas',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 2
0
 def test_missing_locality(self):
     csr_info = {
         'C': 'US',
         'ST': 'Texas',
         'O': 'Big Bob\'s Beepers',
         'CN': 'example.com'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 3
0
 def test_missing_organization(self):
     csr_info = {
         'C': 'US',
         'ST': 'Texas',
         'L': 'San Antonio',
         'CN': 'example.com'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 4
0
 def test_missing_state(self):
     csr_info = {
         'C': 'US',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers',
         'CN': 'example.com'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 5
0
 def test_missing_country(self):
     csr_info = {
         'ST': 'Texas',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers',
         'CN': 'example.com'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 6
0
 def test_empty_country(self):
     csr_info = {
         'C': '',
         'ST': 'Texas',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers',
         'CN': 'example.com'
     }
     CsrGenerator(csr_info)
Exemplo n.º 7
0
 def test_missing_ou(self):
     "This should _not_ raise any exceptions"
     csr_info = {
         'C': 'US',
         'ST': 'Texas',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers',
         'CN': 'example.com'
     }
     CsrGenerator(2048, csr_info)
Exemplo n.º 8
0
 def test_invalid_key_size(self):
     csr_info = {
         'C': 'US',
         'ST': 'Texas',
         'L': 'San Antonio',
         'O': 'Big Bob\'s Beepers',
         'OU': 'Marketing',
         'CN': 'example.com',
         'keySize': 'penguins'
     }
     CsrGenerator(csr_info)
Exemplo n.º 9
0
def generate_csr():
    """
    Receive form data and generate csr and private key.
    """
    csr = CsrGenerator(request.form)
    nic_id = request.form['CN']
    password = request.form['password']
    org_id = request.form['O']
    user_directory = generate_hash(nic_id, org_id)[:12]
    generate_pem(nic_id, user_directory, password, csr.csr)
    generate_p12(nic_id, user_directory, password, csr.private_key)

    file_url = '/certificate' + base_directory + '/downloads/' + user_directory + '/' + nic_id + '.p12'
    return render_template('success.html', url=file_url)
Exemplo n.º 10
0
def generate_csr():
    csr = CsrGenerator(request.form)
    return jsonify({
        "csr": csr.csr.decode('utf-8'),
        "private_key": csr.private_key.decode('utf-8')
    })
Exemplo n.º 11
0
 def test_private_key_ends_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     # The result here can differ based on OpenSSL versions
     self.assertTrue(
         csr.private_key.endswith('-----END RSA PRIVATE KEY-----\n')
         or csr.private_key.endswith('-----END PRIVATE KEY-----\n'))
Exemplo n.º 12
0
 def test_private_key_starts_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     # The result here can differ based on OpenSSL versions
     self.assertTrue(
         csr.private_key.startswith('-----BEGIN RSA PRIVATE KEY-----')
         or csr.private_key.startswith('-----BEGIN PRIVATE KEY-----'))
Exemplo n.º 13
0
 def test_csr_ends_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     self.assertTrue(
         csr.csr.endswith('-----END CERTIFICATE REQUEST-----\n'))
Exemplo n.º 14
0
 def test_csr_starts_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     self.assertTrue(
         csr.csr.startswith('-----BEGIN CERTIFICATE REQUEST-----'))
Exemplo n.º 15
0
 def test_csr_length(self):
     csr = CsrGenerator(2048, self.csr_info)
     assert_equal(len(csr.csr), 1025)
Exemplo n.º 16
0
    def test_keypair_bits(self):
        csr = CsrGenerator(2048, self.csr_info)
        assert_equal(csr.keypair.bits(), 2048)

        csr = CsrGenerator(1024, self.csr_info)
        assert_equal(csr.keypair.bits(), 1024)
Exemplo n.º 17
0
 def test_keypair_type(self):
     import OpenSSL.crypto
     csr = CsrGenerator(2048, self.csr_info)
     self.assertTrue(isinstance(csr.keypair, OpenSSL.crypto.PKey))
Exemplo n.º 18
0
 def test_private_key_ends_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     self.assertTrue(
         csr.private_key.endswith('-----END PRIVATE KEY-----\n'))
Exemplo n.º 19
0
 def test_keypair_bits_default(self):
     csr = CsrGenerator(self.csr_info)
     assert_equal(csr.keypair.bits(), 2048)
Exemplo n.º 20
0
def generate_csr():
    csr = CsrGenerator(request.form)
    response = b'\n'.join([csr.csr, csr.private_key])
    return Response(response, mimetype='text/plain')
Exemplo n.º 21
0
 def test_keypair_1024_bits(self):
     self.csr_info['keySize'] = 1024
     csr = CsrGenerator(self.csr_info)
     assert_equal(csr.keypair.bits(), 1024)
Exemplo n.º 22
0
 def test_keypair_4096_bits(self):
     self.csr_info['keySize'] = 4096
     csr = CsrGenerator(self.csr_info)
     assert_equal(csr.keypair.bits(), 4096)
Exemplo n.º 23
0
def generate_csr():
    csr = CsrGenerator(request.form)
    response = {}
    response['csr'] = csr.csr.decode('utf-8')
    response['private_key'] = csr.private_key.decode('utf-8')
    return jsonify(response)
Exemplo n.º 24
0
 def test_private_key_starts_with(self):
     csr = CsrGenerator(2048, self.csr_info)
     self.assertTrue(
         csr.private_key.startswith('-----BEGIN PRIVATE KEY-----'))