注意要在centos或openeuler中使用,使用前执行 sudo yum install libtomcrypt-devel
然后建立c文件编译运行
#include
"stdlib.h"
#define
LTM_DESC
#include
<tomcrypt.h>
int
main(
void
)
{
int
err, hash_idx, prng_idx, res,padding,inpadding;
unsigned long
l1, l2;
unsigned char
pt[17], pt2[17], out[1024],out2[1024],out3[1024];
rsa_key key;
printf(
"**************************\n"
);
printf(
"
RSA
加
¨®
解
a
密
¨¹
算
?
法
¤¡§"
);
printf(
"\n**************************\n"
);
printf(
"
输
º?
入
¨?
明
¡Â
文
?s(16
字
Á?
节
¨²):\n"
);
scanf(
"%s"
,&pt);
printf(
"
选
?
择
?
加
¨®
密
¨¹
机
¨²
制
?
:
êo1---RSAES-PKCS1-V1_5 2---RSAES_OAEP\n"
);
scanf(
"%d"
,&inpadding);
if
(inpadding ==1 )
padding = LTC_LTC_PKCS_1_V1_5;
else
padding = LTC_LTC_PKCS_1_OAEP;
/* register prng/hash */
if
(register_prng(&sprng_desc) == -1) {
printf(
"Error registering sprng"
);
return
EXIT_FAILURE;
}
/* register a math library (in this case TomsFastMath)*/
ltc_mp = ltm_desc;
if
(register_hash(&sha1_desc) == -1) {
printf(
"Error registering sha1"
);
return