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格式相关推荐

  1. crt格式证书转pem格式证书

    我是用IE浏览器间接转换的,先把crt格式证书导入IE浏览器,再导出来,这时候成了cer格式证书,再用命令把cer格式证书转换pem格式证书,记录一下过程. 1.打开IE浏览器的齿轮图标(右上角)直接 ...

  2. 使用openssl将pfx格式证书转换成key和crt

    1. 安装openssl(Windows) 不推荐官网安装方式,直接下载其他人做的便捷版安装包 http://slproweb.com/products/Win32OpenSSL.html 下载后一直 ...

  3. 关于证书那点事---把一个p7b格式证书转换成cer格式证书。

    把p7b格式证书转换成cer格式证书 这个问题,需要追溯到我集成肯尼亚一家支付公司Safaricom的M-Pesa在线支付,我司需要集成这个在线支付手段在我们的站点中(ke).在进行了一系列的处理后, ...

  4. WPS格式文件转换图片格式如何实现

    WPS作为在办公中是一款家喻户晓的软件,相信不少人都使用过.WPS 格式有时候并不适用所有的设施,比如手机中如果没有类似于阅读器软件的话就观看不了.但是图片格式相信都可以阅览的,可以将WPS格式的文件 ...

  5. cer格式证书转pem格式

    cer格式证书转pem格式: openssl x509 -inform der -in apple_pay.cer -out apple_pay_certificate.pem

  6. 怎么将bmp格式图片转换jpg格式的

    BMP是Windows操作系统中的标准图像文件格式,因为不会对图片进行压缩,所以图像还原较高,清晰度较高,但是因为不会对图片进行压缩,所以体积较大,占用的空间内存较大,而且对于一些网站时不支持该格式的 ...

  7. 怎么把avi格式转换成mp4格式?转换avi格式的方法

    AVI格式是视频格式中主流格式之一,很多地方都可以看到这种格式.Avi格式的特点是占用内存相对较大,画质较好.而与同为主流格式之一的mp4相比mp4格式占用空间相对较小,画质和avi格式相差无几,最重 ...

  8. 手机爱奇艺视频qlv格式怎么转换mp4格式

    1.搜索: 小白兔视频格式在线转换 2.上传你的视频(腾讯qlv,爱奇艺qsv.优酷kux)都可以. 3.转换好后,我们把转换的视频下载到电脑里,就可以看到视频已经是MP4格式了. 转载于:https ...

  9. 爱奇艺qsv视频格式怎么转换mp4格式

    1.搜索: 小白兔视频格式在线转换 2.上传你的视频(腾讯qlv,爱奇艺qsv.优酷kux)都可以. 3.转换好后,我们把转换的视频下载到电脑里,就可以看到视频已经是MP4格式了.

  10. openssl将各种格式证书转换

    (1)将DER文件(.crt/.cer/.der)转换为PEM: openssl x509 -inform der -in certificate.cer -out certificate.pem ( ...

最新文章

  1. python邮件图片加密_Python爬虫如何应对Cloudflare邮箱加密
  2. react-native icon使用方式
  3. 512抗击震灾捐款背后的思考
  4. LVGL(2)Visual Studio模拟器使用
  5. mysql 杂记(二)
  6. 拿别人源码去申请软著_别拿自己的尺子,去丈量别人的生活!
  7. 高可用集群HA基本知识概述
  8. ajax简单做html查询删除(鲜花)
  9. 椭圆曲线方程加解密算法研究(一)
  10. 60分钟带你入门iOS开发
  11. Spring-Kafka
  12. 如何写出高性能SQL语句?-性能设计沉思录(6)
  13. ZoomIt使用教程
  14. 捷速pdf修改器如何在pdf中添加附件
  15. 消息系统——极光推送http://docs.jiguang.cn/
  16. win10之缺少一个或者多个协议(只能上qq不能上网)
  17. wordcloud OSError: cannot open resource
  18. 一位博士在华为的 22 年
  19. Clion远程Linux开发调试环境搭建
  20. [转载]华为老员工看华为(一):不断改进的海外市场

热门文章

  1. php微信投票刷票,微信投票程序源码
  2. 下载速度15MB/s?网友实测度盘的这个新版本后惊了!
  3. 为什么C语言执行后不会出现小数点,C语言教材第2章要点S.doc
  4. edius隐藏快捷键_超级实用的edius常用快捷键
  5. android电池管理软件,四款安卓手机电池管理软件横测
  6. springboot集成微信app支付
  7. k3刷机 重置_K3 官改刷官改升级或降级两种方法
  8. Android之四大组件、六大布局、五大存储
  9. 网络驱动器无法访问,提示找不到网络路径故障处理过程
  10. 2021计算机考研总结即经验贴(初试、复试、调剂、心态调整)