你可以使用下面的例子在Golang中进行数据加密和解密。它使用x509公钥和私钥。如果加密和解密发生在两台不同的机器上,这是很理想的。你可以在请求正文中使用加密的数据。
公钥和私钥
公钥属于发送方,而私钥属于接收方。发送方用它的公钥对普通信息进行加密。接收者用其私人密钥解密加密信息。这些钥匙只生成一次并使用。
生成密钥
一旦你用下面的软件包生成了这两把钥匙,把它们分别保存在 "certs/public.key "和 "certs/private.key "文件中,然后在发送方和接收方机器之间共享。
// internal/pki
package main
-----BEGIN RSA PUBLIC KEY-----
-----BEGIN RSA PRIVATE KEY-----
发送方
使用这个软件包用公钥加密普通信息,然后发送给接收者。
// internal/pki
package main
-----BEGIN MESSAGE-----
接收者
使用这个软件包用私钥解密加密的信息,然后处理它。
// internal/pki
package main
This is a very secret message :)