linux c语言密码验证

Posted 吾乃世间奇才

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux c语言密码验证相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include <string.h>
#include <shadow.h>
#include <unistd.h>
int verify_passwd(char *id, char *passwd)

       struct spwd  *sp;
       if(!(id && passwd)) 
	       printf("param error");
	       return -1;
       
       sp = getspnam(id);
       if(sp == NULL) 
              printf("get spentry error\\n");
              return -1;
       
 
       if(strcmp(sp->sp_pwdp, (char*)crypt(passwd, sp->sp_pwdp)) == 0) 
              printf("passwd yes\\n");
        else 
              printf("passwd error\\n");
       
       return 0; 

int main()

	char id[32] = "";
	char *passwd;
	printf("Login: ");
	scanf("%s", id);
	passwd = getpass("Enter the password:");
	verify_passwd(id, passwd);
	return 0;

编译加上 -lcrypt

以上是关于linux c语言密码验证的主要内容,如果未能解决你的问题,请参考以下文章

用C语言编写一个密码验证程序

C语言用c写一个可以验证账号,密码和修改密码的程序

(c语言)求密码

c语言设计密码检测程序?

51单片机C语言,电子密码的验证输入程序,矩阵键盘用作输入,密码正确时,向串口送1,否则送0

写一个C语言程序: 能修改Linux 主机的IP、DHCP、DNS 等设置