根据C语言的特点,C语言的变量的取值范围有限,无法直接得到RSA加密算法需要的数字,因此先对5位数中的每一位数字进行加密,然后由每位数字对应的密文组成该汉字对应的密文,每一位数字对应的密文用两位数字表示,如明文中的“6”对应的密文用“30”表示,明文中的“1”对应的密文用“01”表示。 编写的对一位数进行加、...
printf("请选择功能:1:加密 2:解密\n "); printf("请输入所选功能代码\n"); scanf("%d",&n); switch(n) { case 1: /*加密*///*交换文字位置*// for(x=0;x<5;x++) for(y=0;y<10;y=y+2) { c[0]=b[x][y]; c[1]=b[x][1+y]; c[2]=0; b[x][y]=b[x][18-y]; ...
如题,求大神,在线等,RSA_public_encrypt(rsa_len, (unsigned char *)str, (unsigned char*)en, rsa, RSA_NO_PADDING),调试gdb,en为空,这肯定不对,但不知道是不是这个导致返回值小于0.(只有当文件开头是汉字才会返回负值,好奇怪)。比如a.txt内容为“你好”就加密失败,内容为“1你好”,就没问题。总之只要...