加密之https单向认证
我们先试一下开启http服务
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "This is my http web.")
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}
我们打开浏览器
访问一下 http://localhost:8080
就可以看到 This is my http web.
然后我们试一下开启https服务
在此之前我们需要创建
1.key 密钥
2.crt 认证文件
我们打开终端,输入openssl进入openssl
然后输入
genrsa -out server.key 2048
这样就创建了我们的密钥文件
然后输入
req -new -x509 -key server.key -out server.crt -days 365
这样就创建了crt认证文件
然后我们来写代码
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "This is my https web.")
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServeTLS(":8080", "server.crt", "server.key", nil)
}
这样我们就开启了https服务
然后我们访问一下
https://localhost:8080
然后就发现出现了警告
这是因为我们的认证文件不是认证机构的认证文件
然后我们点高级
点 继续访问
就可以看到
This is my https web.