Go 中的安全密码输入
获取用户密码时,防止输入的字符显示在屏幕上至关重要。这可确保密码保密。
要在 Go 中实现此目的,您可以利用 golang.org/x/term 包。
import ( "bufio" "fmt" "os" "strings" "syscall" "golang.org/x/term" ) func main() { username, password, _ := credentials() fmt.Printf("Username: %s, Password: %s\n", username, password) } func credentials() (string, string, error) { reader := bufio.NewReader(os.Stdin) fmt.Print("Enter Username: ") username, err := reader.ReadString('\n') if err != nil { return "", "", err } fmt.Print("Enter Password: ") bytePassword, err := term.ReadPassword(int(syscall.Stdin)) if err != nil { return "", "", err } password := string(bytePassword) return strings.TrimSpace(username), strings.TrimSpace(password), nil }
用法:
这种方法提供了一种在 Go 中获取密码的安全方法,因为输入的字符永远不会显示在屏幕。
以上是如何在 Go 中安全获取用户密码?的详细内容。更多信息请关注PHP中文网其他相关文章!