URI: 
       tegtest.c - plan9port - [fork] Plan 9 from user space
  HTML git clone git://src.adamsgaard.dk/plan9port
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
       tegtest.c (655B)
       ---
            1 #include "os.h"
            2 #include <mp.h>
            3 #include <libsec.h>
            4 
            5 void
            6 main(void)
            7 {
            8         EGpriv *sk;
            9         mpint *m, *gamma, *delta, *in, *out;
           10         int plen, shift;
           11 
           12         fmtinstall('B', mpconv);
           13 
           14         sk = egprivalloc();
           15         sk->pub.p = uitomp(2357, nil);
           16         sk->pub.alpha = uitomp(2, nil);
           17         sk->pub.key = uitomp(1185, nil);
           18         sk->secret = uitomp(1751, nil);
           19 
           20         m = uitomp(2035, nil);
           21 
           22         plen = mpsignif(sk->pub.p)+1;
           23         shift = ((plen+Dbits-1)/Dbits)*Dbits;
           24         gamma = uitomp(1430, nil);
           25         delta = uitomp(697, nil);
           26         out = mpnew(0);
           27         in = mpnew(0);
           28         mpleft(gamma, shift, in);
           29         mpadd(delta, in, in);
           30         egdecrypt(sk, in, out);
           31 
           32         if(mpcmp(m, out) != 0)
           33                 print("decrypt failed to recover message\n");
           34 }