Merge "Drop AES functions and pycrypto dependency" into stable/essex

This commit is contained in:
Jenkins 2012-08-07 23:18:41 +00:00 committed by Gerrit Code Review
commit d4c7f6fc5e
3 changed files with 0 additions and 58 deletions

View File

@ -29,8 +29,6 @@ import hashlib
import os
import string
import Crypto.Cipher.AES
from nova import context
from nova import db
from nova import exception
@ -308,44 +306,6 @@ def _sign_csr(csr_text, ca_folder):
return (serial, crtfile.read())
def _build_cipher(key, iv):
"""Make a 128bit AES CBC encode/decode Cipher object.
Padding is handled internally."""
return Crypto.Cipher.AES.new(key, IV=iv)
def encryptor(key):
"""Simple symmetric key encryption."""
key = base64.b64decode(key)
iv = '\0' * 16
def encrypt(data):
cipher = _build_cipher(key, iv)
# Must pad string to multiple of 16 chars
padding = (16 - len(data) % 16) * " "
v = cipher.encrypt(data + padding)
del cipher
v = base64.b64encode(v)
return v
return encrypt
def decryptor(key):
"""Simple symmetric key decryption."""
key = base64.b64decode(key)
iv = '\0' * 16
def decrypt(data):
data = base64.b64decode(data)
cipher = _build_cipher(key, iv)
v = cipher.decrypt(data).rstrip()
del cipher
return v
return decrypt
# Copyright (c) 2006-2009 Mitch Garnaat http://garnaat.org/
#
# Permission is hereby granted, free of charge, to any person obtaining a

View File

@ -29,23 +29,6 @@ from nova import utils
FLAGS = flags.FLAGS
class SymmetricKeyTestCase(test.TestCase):
"""Test case for Encrypt/Decrypt"""
def test_encrypt_decrypt(self):
key = 'c286696d887c9aa0611bbb3e2025a45a'
plain_text = "The quick brown fox jumped over the lazy dog."
# No IV supplied (all 0's)
encrypt = crypto.encryptor(key)
cipher_text = encrypt(plain_text)
self.assertNotEquals(plain_text, cipher_text)
decrypt = crypto.decryptor(key)
plain = decrypt(cipher_text)
self.assertEquals(plain_text, plain)
class X509Test(test.TestCase):
def test_can_generate_x509(self):
with utils.tempdir() as tmpdir:

View File

@ -23,6 +23,5 @@ glance>=2011.3.1
suds==0.4
paramiko
feedparser
pycrypto
Babel>=0.9.6
iso8601>=0.1.4