7 Star 53 Fork 22

北京小程科技有限公司 / 支付宝

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
client_format_key.go 1.25 KB
一键复制 编辑 原始数据 按行查看 历史
shallot 提交于 2020-04-09 22:23 . 重新整理说明文档。
package alipay
import "bytes"
// 将私钥字符串转换为RSA私钥格式
func (c Client) FormatPrivateKey(privateKey string) string {
buffer := new(bytes.Buffer)
buffer.WriteString("-----BEGIN RSA PRIVATE KEY-----\n")
rawLen, keyLen := 64, len(privateKey)
raws, temp := keyLen/rawLen, keyLen%rawLen
if temp > 0 {
raws++
}
start, end := 0, 0+rawLen
for i := 0; i < raws; i++ {
if i == raws-1 {
buffer.WriteString(privateKey[start:])
} else {
buffer.WriteString(privateKey[start:end])
}
buffer.WriteString("\n")
start += rawLen
end = start + rawLen
}
buffer.WriteString("-----END RSA PRIVATE KEY-----\n")
return buffer.String()
}
// 将公钥字符串转换为RSA公钥格式
func (c Client) FormatPublicKey(publicKey string) string {
buffer := new(bytes.Buffer)
buffer.WriteString("-----BEGIN PUBLIC KEY-----\n")
rawLen, keyLen := 64, len(publicKey)
raws, temp := keyLen/rawLen, keyLen%rawLen
if temp > 0 {
raws++
}
start, end := 0, 0+rawLen
for i := 0; i < raws; i++ {
if i == raws-1 {
buffer.WriteString(publicKey[start:])
} else {
buffer.WriteString(publicKey[start:end])
}
buffer.WriteString("\n")
start += rawLen
end = start + rawLen
}
buffer.WriteString("-----END PUBLIC KEY-----\n")
return buffer.String()
}
Go
1
https://gitee.com/xiaochengtech/alipay.git
git@gitee.com:xiaochengtech/alipay.git
xiaochengtech
alipay
支付宝
master

搜索帮助