-----BEGIN PGP SIGNED MESSAGE-----
I suppose this should be added to the the ftp site on soda.
-Pete
-----BEGIN PGP SIGNATURE-----
Version: 2.3
iQBVAgUBLDyRNHynuL1gkffFAQGWigH6A6/aLAoAtJElN++r0qyMyD+aWQTVr7FH
gGb8C+4wNozzPAmr+wIpN0oBW7Cti7U1+G4oOW+FMQKdOljAyLJxQA==
=cinp
-----END PGP SIGNATURE-----
;;
;;
;; From: mpf@theory.lcs.mit.edu (Michael P. Frank)
;; A quick summary:
;;
;; Key Command name Notes
;; ------- ------------------ ----------------
;; C-c p e pgp-encrypt-region Prompts for recipient's ID.
;; C-c p d pgp-decrypt-region The first time, prompts for your pass phrase.
;; C-c p s pgp-sign-region Ditto. Uses CLEARSIG.
;; C-c p S pgp-sign-and-encrypt-region Doesn't use CLEARSIG. Encrypts also.
;; C-c p v pgp-verify-region Checks signature (in a new window).
;; C-c p p pgp-set-passphrase Sets or changes PGP pass phrase.
;; C-c p c pgp-clear-passphrase Erases pass phrase.
;;
;; Thanks are due to Bob Anderson
;;; * They do "ps auxww" (SunOS) on your machine while you're ;;; decrypting/signing. It should be possible, with pgp 2.2, to eliminate this vulnerability.
;;; * They type C-h v *pgp-passphrase* in your emacs after you've That's easy to clear optionally. What's hard to clear is "m-x view-lossage" which has the raw characters. (I think emacs should have support for safe reading and clearing, but I don't know if rms would go for it. You'd need an excuse *other* than passwords.)
;;; * They watch over your shoulder as you type it. (It's not invisible.) Didn't read-password or read-no-echo ever make it into an emacs release? Here are some ancient bits that I use. _Mark_
MIT Student Information Processing Board Cygnus Support
;; ucbvax!brahms!weemba Matthew P Wiener/UCB Math Dept/Berkeley CA 94720 ;;; GNU Emacs library to read in passwords from the minibuffer ;;; Standard GNU copying privileges apply (setq minibuffer-local-no-echo-map (make-keymap)) (mapcar '(lambda (x) (aset minibuffer-local-no-echo-map (car x) (cdr x))) (cdr minibuffer-local-map)) (let ((i ?\040)) (while (< i ?\177) (aset minibuffer-local-no-echo-map i 'read-char-no-echo) (setq i (1+ i)))) (aset minibuffer-local-no-echo-map ?\177 'delete-char-no-echo) ;; This function squirrels each typed-in character away. (defun read-char-no-echo () (interactive) (setq no-echo-list (append no-echo-list (list (this-command-keys))))) ;; This function erases the last character from the input list. (defun delete-char-no-echo () (interactive) (setq no-echo-list (nreverse (cdr (nreverse no-echo-list))))) ;; This is the function the user actually uses. (defun read-string-no-echo (prompt) "Get a password from the minibuffer, prompting with PROMPT." (let (no-echo-list) (read-from-minibuffer prompt nil minibuffer-local-no-echo-map) (mapconcat 'identity no-echo-list nil))) ;;;;;;;;;;;;;;;;;;;;;This crudity is just for demo!;;;;;;;;;;;;;;;;;;;; (defun read-password () "Prompts for a password, and doesn't echo it, stores it in 'secret'" (interactive) (setq secret (read-string-no-echo "Password: "))) (defun shell-password () "Prompts for password, no echo, and sends it to the shell" (interactive) (process-send-string (get-buffer-process (current-buffer)) (concat (read-string-no-echo "Password: ") "\n")))
participants (2)
-
eichin@cygnus.com
-
Peter shipley