我有一个简单的
Bash脚本自动执行需要基于密码的身份验证的任务.
目前我以纯文本格式存储凭证:
目前我以纯文本格式存储凭证:
$cat ~/.myconfig username=foo password=bar
显然这很糟糕 – 所以我想知道是否有一种使用我的公钥/私钥对加密/解密密码的简单方法.使用Yet Another Password进行加密不会获得太多收益,所以我希望它能够自动发生.
我已经完成了一些研究(在这里和其他地方),但我对这个问题的研究还很远……
解决方法
您可以将密码存储到md5 sum中,之前添加一些盐.
创建:
\#!/bin/bash salt=12345_ protocol=sha1sum read -p "Enter login: " username read -p -s "Password: " pass1 read -p -s "Repeat: pass2 if [ "pass1 != pass2" ]; then echo "Pass missmatch"; exit 1; else password=pass1; fi echo -en "$username " >> ./mypasswd echo -e "${salt}${password} | $protocol | awk '{print $1}'" >> ./mypqsswd
读:
\#!/bin/bash salt=12345_ #(samesalt) protocol=sha1sum read -p "Enter username: " username read -p -s "Enter password: " password if [ `grep $username ./mypasswd | awk '{print $2}' != `echo -e "`echo ${salt}${password} | $protocol | awk '{print $2}'`" ]; then echo -e "wrong username or password"; exit 127; else echo -e "login successfull"; fi
这是你的代码.