在进行基于超奇异椭圆曲线密码体制的研究实验时,遇到了大整数的运算。我们平时机器所能表示及其运算的数据最大为64个比特(20位的十进制). 而我们要研究的基于超奇异的椭圆曲线密码体制,为了保证安全性,对于有限域的选取,我们要保证q至少要保证160个比特,对于计算配对计算,要找到q的扩域,一般扩域的大小为1024个比特。所以我们要从新定义大整数的计算法则。对于算术运算符、关系运算符、赋值运算符、自增自减运算符、标准输入和标准输出运算符等我们要从新进行定义。
对于我们自定义的大整数数据类型,我们有两种方法定义其运算:(1)按照一般函数定义的规则定义出相应的函数。(2)按照算术运算符重载函数的定义规则定义出相应的运算符重载函数。
在此我们考虑采用第二个方案:用运算符重载函数实现对自定义的数据类型的运算能力。
格式:<返回类型> operator< 运算符>(参数表){函数体};
对于单目运算符,其参数表为一个参数。