由于我们需要在大量的网站和APP注册,为了便于记忆,注册的用户名往往类似甚至一模一样,密码也经常一模一样或者类似。这是一种不好的习惯,因为黑客有可能获取网站和APP泄露的大量密码后,运用某种方法找到用户设置密码的习惯,这样账号就有了被盗的风险。为了避免黑客找到用户设置密码的习惯,最好的办法就是用随机字符串作为密码。
默认密码长度为10,这应该是够用的。因为在txt里面,'l'(小写L)和'I'(大写i)难以区分,所以生成的密码不包含这两个字符。
下面是C++实现:
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <fstream>
#include <vector>
using namespace std;
/*
编译: g++ main.cpp -o main
*/
char getDigit()
{
return static_cast<char>('0' + rand()%('9'-'0'+1));
}
char getLower()
{
return static_cast<char>('a' + rand()%('z'-'a'+1));
}
char getUpper()
{
return static_cast<char>('A' + rand()%('Z'-'A'+1));
}
int main()
{
ofstream output;
output.open("pwd.txt");