pkcs8格式证书转换pkcs1格式
package mainimport ("encoding/base64""fmt""os""os/exec""strings""time"l_file "github.com/lixu-any/go-tools/file"
)//pkcs8格式,所以需要转为pkcs1格式,命令=>openssl rsa -in pks8.pem -out pks1.pem
//这里的私钥处理方式 1.以-----BEGIN RSA PRIVATE KEY----- +"换行" +原生字符串64位换行 +"换行" +-----END RSA PRIVATE KEY-----
//2.由于原生秘钥是pkcs8格式,所以需要转为pkcs1格式,命令=>openssl rsa -in pks8.pem -out pks1.pem
//3.openssl 下载地址 https://slproweb.com/products/Win32OpenSSL.htmlfunc WriteToFile(fileName string, content string) error {f, err := os.OpenFile(fileName, os.O_WRONLY|os.O_TRUNC|os.O_CREATE, 0644)if err != nil {fmt.Println("file create failed. err: " + err.Error())} else {// offset//os.Truncate(filename, 0) //clearn, _ := f.Seek(0, os.SEEK_END)_, err = f.WriteAt([]byte(content), n)fmt.Println("write succeed!")defer f.Close()}return err
}const (KEY_BEGIN = "-----BEGIN RSA PRIVATE KEY-----"KEY_END = "-----END RSA PRIVATE KEY-----"
)func main() {var (pemstr stringnowtime = int32(time.Now().Unix())bt = fmt.Sprintf("1_%d.pem", nowtime)wt = fmt.Sprintf("2_%d.pem", nowtime)pt = fmt.Sprintf("private_%d.txt", nowtime))args := os.Argsif len(args) < 2 {fmt.Println("params error")return}pemstr = args[1]fomartpem := ""parr := strings.Split(pemstr, "")for k, v := range parr {if k != 0 && k%64 == 0 {fomartpem += "\n"}fomartpem += v}fomartpem = KEY_BEGIN + "\n" + fomartpemfomartpem = fomartpem + "\n" + KEY_ENDos.Create(bt)l_file.WriteTxt(bt, fomartpem)// command := exec.Command("openssl", "rsa", "-in", "/Users/lixu/code/git/tools/"+bt, "-out", "/Users/lixu/code/git/tools/"+wt, ">mmn.txt")cmd := fmt.Sprintf("openssl rsa -in %s -out %s", bt, wt)c := exec.Command("bash", "-c", cmd)// 此处是windows版本// c := exec.Command("cmd", "/C", cmd)output, _ := c.CombinedOutput()fmt.Println(string(output))sbt, _ := l_file.ReadFile(wt)signstr := base64.StdEncoding.EncodeToString(sbt)fmt.Println(signstr)os.Create(pt)l_file.WriteTxt(pt, signstr)}
openssl rsa -in pks8.pem -out pks1.pem
pkcs8格式证书转换pkcs1格式相关推荐
- crt格式证书转pem格式证书
我是用IE浏览器间接转换的,先把crt格式证书导入IE浏览器,再导出来,这时候成了cer格式证书,再用命令把cer格式证书转换pem格式证书,记录一下过程. 1.打开IE浏览器的齿轮图标(右上角)直接 ...
- 使用openssl将pfx格式证书转换成key和crt
1. 安装openssl(Windows) 不推荐官网安装方式,直接下载其他人做的便捷版安装包 http://slproweb.com/products/Win32OpenSSL.html 下载后一直 ...
- 关于证书那点事---把一个p7b格式证书转换成cer格式证书。
把p7b格式证书转换成cer格式证书 这个问题,需要追溯到我集成肯尼亚一家支付公司Safaricom的M-Pesa在线支付,我司需要集成这个在线支付手段在我们的站点中(ke).在进行了一系列的处理后, ...
- WPS格式文件转换图片格式如何实现
WPS作为在办公中是一款家喻户晓的软件,相信不少人都使用过.WPS 格式有时候并不适用所有的设施,比如手机中如果没有类似于阅读器软件的话就观看不了.但是图片格式相信都可以阅览的,可以将WPS格式的文件 ...
- cer格式证书转pem格式
cer格式证书转pem格式: openssl x509 -inform der -in apple_pay.cer -out apple_pay_certificate.pem
- 怎么将bmp格式图片转换jpg格式的
BMP是Windows操作系统中的标准图像文件格式,因为不会对图片进行压缩,所以图像还原较高,清晰度较高,但是因为不会对图片进行压缩,所以体积较大,占用的空间内存较大,而且对于一些网站时不支持该格式的 ...
- 怎么把avi格式转换成mp4格式?转换avi格式的方法
AVI格式是视频格式中主流格式之一,很多地方都可以看到这种格式.Avi格式的特点是占用内存相对较大,画质较好.而与同为主流格式之一的mp4相比mp4格式占用空间相对较小,画质和avi格式相差无几,最重 ...
- 手机爱奇艺视频qlv格式怎么转换mp4格式
1.搜索: 小白兔视频格式在线转换 2.上传你的视频(腾讯qlv,爱奇艺qsv.优酷kux)都可以. 3.转换好后,我们把转换的视频下载到电脑里,就可以看到视频已经是MP4格式了. 转载于:https ...
- 爱奇艺qsv视频格式怎么转换mp4格式
1.搜索: 小白兔视频格式在线转换 2.上传你的视频(腾讯qlv,爱奇艺qsv.优酷kux)都可以. 3.转换好后,我们把转换的视频下载到电脑里,就可以看到视频已经是MP4格式了.
- openssl将各种格式证书转换
(1)将DER文件(.crt/.cer/.der)转换为PEM: openssl x509 -inform der -in certificate.cer -out certificate.pem ( ...
最新文章
- python邮件图片加密_Python爬虫如何应对Cloudflare邮箱加密
- react-native icon使用方式
- 512抗击震灾捐款背后的思考
- LVGL(2)Visual Studio模拟器使用
- mysql 杂记(二)
- 拿别人源码去申请软著_别拿自己的尺子,去丈量别人的生活!
- 高可用集群HA基本知识概述
- ajax简单做html查询删除(鲜花)
- 椭圆曲线方程加解密算法研究(一)
- 60分钟带你入门iOS开发
- Spring-Kafka
- 如何写出高性能SQL语句?-性能设计沉思录(6)
- ZoomIt使用教程
- 捷速pdf修改器如何在pdf中添加附件
- 消息系统——极光推送http://docs.jiguang.cn/
- win10之缺少一个或者多个协议(只能上qq不能上网)
- wordcloud OSError: cannot open resource
- 一位博士在华为的 22 年
- Clion远程Linux开发调试环境搭建
- [转载]华为老员工看华为(一):不断改进的海外市场
热门文章
- php微信投票刷票,微信投票程序源码
- 下载速度15MB/s?网友实测度盘的这个新版本后惊了!
- 为什么C语言执行后不会出现小数点,C语言教材第2章要点S.doc
- edius隐藏快捷键_超级实用的edius常用快捷键
- android电池管理软件,四款安卓手机电池管理软件横测
- springboot集成微信app支付
- k3刷机 重置_K3 官改刷官改升级或降级两种方法
- Android之四大组件、六大布局、五大存储
- 网络驱动器无法访问,提示找不到网络路径故障处理过程
- 2021计算机考研总结即经验贴(初试、复试、调剂、心态调整)