diff -ru webform.orig/components/textfield.inc webform/components/textfield.inc
--- webform.orig/components/textfield.inc	2011-03-05 03:03:16.000000000 +0100
+++ webform/components/textfield.inc	2011-04-27 10:32:14.827443320 +0200
@@ -22,6 +22,7 @@
       'field_prefix' => '',
       'field_suffix' => '',
       'disabled' => 0,
+      'password' => 0,
       'unique' => 0,
       'title_display' => 0,
       'description' => '',
@@ -94,6 +95,16 @@
     '#default_value' => $component['extra']['disabled'],
     '#parents' => array('extra', 'disabled'),
   );
+  
+  $form['display']['password'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Password'),
+    '#return_value' => 1,
+    '#description' => t('Make this a password field.'),
+    '#weight' => 11,
+    '#default_value' => $component['extra']['password'],
+    '#parents' => array('extra', 'password'),
+  );
   $form['validation']['unique'] = array(
     '#type' => 'checkbox',
     '#title' => t('Unique'),
@@ -121,7 +132,7 @@
  */
 function _webform_render_textfield($component, $value = NULL, $filter = TRUE) {
   $element = array(
-    '#type' => $component['type'],
+    '#type' => $component['extra']['password'] ? "password" : "textfield",
     '#title' => $filter ? _webform_filter_xss($component['name']) : $component['name'],
     '#title_display' => $component['extra']['title_display'] ? $component['extra']['title_display'] : 'before',
     '#default_value' => $filter ? _webform_filter_values($component['value'], NULL, NULL, NULL, FALSE) : $component['value'],
@@ -139,6 +150,10 @@
     $element['#attributes']['readonly'] = 'readonly';
   }
 
+  if ($component['extra']['password']) {
+    $element['#attributes']['type'] = 'password';
+  }
+
   // Enforce uniqueness.
   if ($component['extra']['unique']) {
     $element['#element_validate'][] = 'webform_validate_unique';
diff -ru webform.orig/includes/webform.components.inc webform/includes/webform.components.inc
--- webform.orig/includes/webform.components.inc	2011-03-05 03:03:16.000000000 +0100
+++ webform/includes/webform.components.inc	2011-04-27 10:09:06.917071225 +0200
@@ -405,6 +405,16 @@
     '#weight' => 8,
     '#parents' => array('extra', 'title_display'),
   );
+  $form['display']['password'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Password field'),
+    '#default_value' => !empty($component['extra']['password']),
+    '#return_value' => 'none',
+    '#description' => t('This is a password field.'),
+    '#weight' => 8,
+    '#parents' => array('extra', 'password'),
+  );
+
 
   // Validation settings.
   $form['validation'] = array(
