dsaprivalloc man page on Plan9

Man page or keyword search:  
man Server   549 pages
apropos Keyword Search (all sections)
Output format
Plan9 logo
[printable version]

DSA(2)									DSA(2)

NAME
       dsagen,	dsasign,  dsaverify,  dsapuballoc,  dsapubfree,	 dsaprivalloc,
       dsaprivfree, dsasigalloc, dsasigfree, dsaprivtopub - digital  signature
       algorithm

SYNOPSIS
       #include <u.h>
       #include <libc.h>
       #include <mp.h>
       #include <libsec.h>

       DSApriv*	 dsagen(DSApub *opub)

       DSAsig*	 dsasign(DSApriv *k, mpint *m)

       int	 dsaverify(DSApub *k, DSAsig *sig, mpint *m)

       DSApub*	 dsapuballoc(void)

       void	 dsapubfree(DSApub*)

       DSApriv*	 dsaprivalloc(void)

       void	 dsaprivfree(DSApriv*)

       DSAsig*	 dsasigalloc(void)

       void	 dsasigfree(DSAsig*)

       DSApub*	 dsaprivtopub(DSApriv*)

DESCRIPTION
       DSA  is	the NIST approved digital signature algorithm.	The owner of a
       key publishes the public part of the key:

	      struct DSApub
	      {
		   mpint     *p;  // modulus
		   mpint     *q;  // group order, q divides p-1
		   mpint     *alpha;   // group generator
		   mpint     *key;     // alpha**secret mod p
	      };

       This part can be used for verifying signatures (with dsaverify) created
       by the owner.  The owner signs (with dsasign) using his private key:

	      struct DSApriv
	      {
		   DSApub    pub;
		   mpint     *secret; // (decryption key)
	      };

       Keys  are  generated using dsagen.  If dsagen's argument opub is nil, a
       key is created using  a	new  p	and  q	generated  by  DSAprimes  (see
       prime(2)).  Otherwise, p and q are copied from the old key.

       Dsaprivtopub  returns  a	 newly allocated copy of the public key corre‐
       sponding to the private key.

       The routines dsapuballoc, dsapubfree, dsaprivalloc, and dsaprivfree are
       provided to manage key storage.

       Dsasign signs message m using a private key k yielding a

	      struct DSAsig
	      {
		   mpint     *r, *s;
	      };

       Dsaverify returns 0 if the signature is valid and -1 if not.

       The  routines  dsasigalloc and dsasigfree are provided to manage signa‐
       ture storage.

SOURCE
       /sys/src/libsec

SEE ALSO
       mp(2),  aes(2),	blowfish(2),  des(2),  rc4(2),	 rsa(2),   sechash(2),
       prime(2), rand(2), dsa(8)

									DSA(2)
[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server Plan9

List of man pages available for Plan9

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net