diff --git a/man/man3/dsa.3 b/man/man3/dsa.3
new file mode 100644
index 0000000..5535164
--- /dev/null
+++ b/man/man3/dsa.3
@@ -0,0 +1,132 @@
+.TH DSA 3
+.SH NAME
+dsagen, dsasign, dsaverify, dsapuballoc, dsapubfree, dsaprivalloc, dsaprivfree, dsasigalloc, dsasigfree, dsaprivtopub - digital signature algorithm
+.SH SYNOPSIS
+.B #include <u.h>
+.br
+.B #include <libc.h>
+.br
+.B #include <mp.h>
+.br
+.B #include <libsec.h>
+.PP
+.B
+DSApriv*	dsagen(DSApub *opub)
+.PP
+.B
+DSAsig*	dsasign(DSApriv *k, mpint *m)
+.PP
+.B
+int		dsaverify(DSApub *k, DSAsig *sig, mpint *m)
+.PP
+.B
+DSApub*	dsapuballoc(void)
+.PP
+.B
+void		dsapubfree(DSApub*)
+.PP
+.B
+DSApriv*	dsaprivalloc(void)
+.PP
+.B
+void		dsaprivfree(DSApriv*)
+.PP
+.B
+DSAsig*	dsasigalloc(void)
+.PP
+.B
+void		dsasigfree(DSAsig*)
+.PP
+.B
+DSApub*	dsaprivtopub(DSApriv*)
+.SH DESCRIPTION
+.PP
+DSA is the NIST approved digital signature algorithm.  The owner of a key publishes
+the public part of the key:
+.EX
+	struct DSApub
+	{
+		mpint	*p;	// modulus
+		mpint	*q;	// group order, q divides p-1
+		mpint	*alpha;	// group generator
+		mpint	*key;	// alpha**secret mod p
+	};
+.EE
+This part can be used for verifying signatures (with
+.IR dsaverify )
+created by the owner.
+The owner signs (with
+.IR dsasign )
+using his private key:
+.EX
+	struct DSApriv
+	{
+		DSApub	pub;
+		mpint	*secret; // (decryption key)
+	};
+.EE
+.PP
+Keys are generated using
+.IR dsagen .
+If
+.IR dsagen 's
+argument
+.I opub
+is
+.BR nil ,
+a key is created using a new
+.B p
+and
+.B q
+generated by
+.IR DSAprimes (2).
+Otherwise,
+.B p
+and
+.B q
+are copied from the old key.
+.PP
+.I Dsaprivtopub
+returns a newly allocated copy of the public key
+corresponding to the private key.
+.PP
+The routines
+.IR dsapuballoc ,
+.IR dsapubfree ,
+.IR dsaprivalloc ,
+and
+.I dsaprivfree
+are provided to manage key storage.
+.PP
+.I Dsasign
+signs message
+.I m
+using a private key
+.I k
+yielding a
+.EX
+	struct DSAsig
+	{
+		mpint	*r, *s;
+	};
+.EE
+.I Dsaverify
+returns 0 if the signature is valid and \-1 if not.
+.PP
+The routines
+.I dsasigalloc
+and
+.I dsasigfree
+are provided to manage signature storage.
+.SH SOURCE
+.B /sys/src/libsec
+.SH SEE ALSO
+.IR mp (2),
+.IR aes (2),
+.IR blowfish (2),
+.IR des (2),
+.IR rc4 (2),
+.IR rsa (2),
+.IR sechash (2),
+.IR prime (2),
+.IR rand (2)
