diff --git a/include/polarssl/blowfish.h b/include/polarssl/blowfish.h
index 89f06bd..dc469d0 100644
--- a/include/polarssl/blowfish.h
+++ b/include/polarssl/blowfish.h
@@ -54,7 +54,7 @@
 #endif
 
 /**
- * \brief          Blowfish key schedule (encryption)
+ * \brief          Blowfish key schedule
  *
  * \param ctx      Blowfish context to be initialized
  * \param key      encryption key
diff --git a/include/polarssl/cipher.h b/include/polarssl/cipher.h
index 9605066..02003e8 100644
--- a/include/polarssl/cipher.h
+++ b/include/polarssl/cipher.h
@@ -53,6 +53,7 @@
     POLARSSL_CIPHER_ID_DES,
     POLARSSL_CIPHER_ID_3DES,
     POLARSSL_CIPHER_ID_CAMELLIA,
+    POLARSSL_CIPHER_ID_BLOWFISH,
 } cipher_id_t;
 
 typedef enum {
@@ -78,14 +79,17 @@
     POLARSSL_CIPHER_CAMELLIA_256_CTR,
     POLARSSL_CIPHER_DES_CBC,
     POLARSSL_CIPHER_DES_EDE_CBC,
-    POLARSSL_CIPHER_DES_EDE3_CBC
+    POLARSSL_CIPHER_DES_EDE3_CBC,
+    POLARSSL_CIPHER_BLOWFISH_CBC,
+    POLARSSL_CIPHER_BLOWFISH_CFB64,
+    POLARSSL_CIPHER_BLOWFISH_CTR,
 } cipher_type_t;
 
 typedef enum {
     POLARSSL_MODE_NONE = 0,
     POLARSSL_MODE_NULL,
     POLARSSL_MODE_CBC,
-    POLARSSL_MODE_CFB128,
+    POLARSSL_MODE_CFB,
     POLARSSL_MODE_OFB,
     POLARSSL_MODE_CTR,
 } cipher_mode_t;
@@ -121,8 +125,8 @@
     int (*cbc_func)( void *ctx, operation_t mode, size_t length, unsigned char *iv,
             const unsigned char *input, unsigned char *output );
 
-    /** Encrypt using CFB128 */
-    int (*cfb128_func)( void *ctx, operation_t mode, size_t length, size_t *iv_off,
+    /** Encrypt using CFB (Full length) */
+    int (*cfb_func)( void *ctx, operation_t mode, size_t length, size_t *iv_off,
             unsigned char *iv, const unsigned char *input, unsigned char *output );
 
     /** Encrypt using CTR */
diff --git a/include/polarssl/cipher_wrap.h b/include/polarssl/cipher_wrap.h
index e81c11d..4abbc4e 100644
--- a/include/polarssl/cipher_wrap.h
+++ b/include/polarssl/cipher_wrap.h
@@ -84,6 +84,18 @@
 
 #endif /* defined(POLARSSL_DES_C) */
 
+#if defined(POLARSSL_BLOWFISH_C)
+extern const cipher_info_t blowfish_cbc_info;
+
+#if defined(POLARSSL_CIPHER_MODE_CFB)
+extern const cipher_info_t blowfish_cfb64_info;
+#endif /* POLARSSL_CIPHER_MODE_CFB */
+
+#if defined(POLARSSL_CIPHER_MODE_CTR)
+extern const cipher_info_t blowfish_ctr_info;
+#endif /* POLARSSL_CIPHER_MODE_CTR */
+#endif /* defined(POLARSSL_BLOWFISH_C) */
+
 #if defined(POLARSSL_CIPHER_NULL_CIPHER)
 extern const cipher_info_t null_cipher_info;
 #endif /* defined(POLARSSL_CIPHER_NULL_CIPHER) */
