15 lines
		
	
	
		
			225 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			225 B
		
	
	
	
		
			C
		
	
	
	
	
	
#include "ge.h"
 | 
						|
 | 
						|
void ge_tobytes(unsigned char *s,const ge_p2 *h)
 | 
						|
{
 | 
						|
  fe recip;
 | 
						|
  fe x;
 | 
						|
  fe y;
 | 
						|
 | 
						|
  fe_invert(recip,h->Z);
 | 
						|
  fe_mul(x,h->X,recip);
 | 
						|
  fe_mul(y,h->Y,recip);
 | 
						|
  fe_tobytes(s,y);
 | 
						|
  s[31] ^= fe_isnegative(x) << 7;
 | 
						|
}
 |