Bootstrap

Go语言学习笔记——加密和解密应用


Golang加密和解密应用

知识预备

  • mysql
  • gorm
  • gin
  • bcrypt

实现步骤

安装库

go get -u gorm.io/gorm
go get -u gorm.io/driver/mysql
go get github.com/gin-gonic/gin

导包


加密解密算法

// 生成密码
func GenPwd(pwd string) ([]byte, error) {
   
	// 加密处理
	hash, err := bcrypt.GenerateFromPassword([]byte(pwd), bcrypt.DefaultCost)
	return hash, err
}

// 比对密码
func ComparePwd(pwd1 string, pwd2 string) bool {
   
	err := bcrypt.CompareHashAndPassword([]byte(pwd1), []byte(pwd2))
	// pwd1:数据库中的密码
	// pwd2:用户输入的密码
	if err != nil {
   
		return false
	} else {
   
		return true
	}
}

首页

main.go

func Index(c *gin.Context)  {
   
	c.HTML(200,"index.html",nil)
}

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title
;