diff --git a/InvenTree/key.py b/InvenTree/keygen.py
similarity index 76%
rename from InvenTree/key.py
rename to InvenTree/keygen.py
index edcdac0854..02909b0d79 100644
--- a/InvenTree/key.py
+++ b/InvenTree/keygen.py
@@ -1,4 +1,8 @@
-# Generate a SECRET_KEY file
+"""
+Module keygen
+=============
+This module generates a Django SECRET_KEY file to be used by manage.py
+"""
 
 import random
 import string
@@ -10,9 +14,16 @@ KEY_FN = 'secret_key.txt'
 KEY_DIR = os.path.dirname(os.path.realpath(__file__))
 
 
-def generate_key():
+def generate_key(length=50):
+    """
+    Generate a random string
+
+    :param length: Number of characters in returned string (default=50)
+    :returns: Randomized secret key string
+    """
+
     options = string.digits + string.ascii_letters + string.punctuation
-    key = ''.join([random.choice(options) for i in range(50)])
+    key = ''.join([random.choice(options) for i in range(length)])
     return key
 
 
diff --git a/Makefile b/Makefile
index 7c066a2c95..b25683e5a9 100644
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,7 @@ migrate:
 
 install:
 	pip install -U -r requirements.txt
-	python InvenTree/key.py
+	python InvenTree/keygen.py
 
 setup: install migrate