当前位置: 首页 > news >正文

OPENSSH PRIVATE 转换 RSA PRIVATE 以及区别

关键字

  • OpenSSH
  • BEGIN OPENSSH PRIVATE KEY
  • BEGIN RSA PRIVATE KEY
  • OPENSSH PRIVATE KEY
  • RSA PRIVATE KEY
  • ssh-keygen
  • puttygen

Git使用时已经生成了openssh格式的密钥,但其他系统需要用你的私钥时,发现格式不对,恼火!

1.首先我们有OPENSSH 私钥

 

2下载工具puttygen 

Download Putty (0.77) for Windows, Linux and Mac - Install SSH in PuTTY

 3. 双击打开

 

 

 

 之后导出 RSA 私钥

区别

一、简单对比


ssh-keygen -t rsa 生成ssh,默认是以新的格式生成,与OpenSSH1有关,高版本默认OPENSSH格式,不同的加密算法2。

OPEN SSH加密算法

-----BEGIN OPENSSH PRIVATE KEY-----
xxxxxxxxxxx
-----END OPENSSH PRIVATE KEY-----

RSA加密算法

-----BEGIN RSA PRIVATE KEY-----
xxxxxxxxxxx
-----END RSA PRIVATE KEY-----
 

生成RSA格式加密文件

ssh-keygen指定格式

执行以下命令,指定格式为PEM,即-m PEM:

root@ssh-keygen -m PEM -t rsa -b 4096 -f /home/

执行结果下:

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:BbcsL/2oee4DL3mmfHYmsVKQaCvW4DTPQEpGGvsycPI root@hlly
The key's randomart image is:
+---[RSA 2048]----+
|...     . .      |
| +o .    + .     |
|=o.o   ...+      |
|.=. = o o=       |
|o Eo O .S.o      |

进入生成加密密钥的文件夹,找到加密文件,查看格式:

[root@hlly .ssh]# cat id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEAtliDmgwSx/ku7Km+tgfquyS460NhiOzk2S50+LYdo+LjtMJ8
mWxFIJOtAe2cde3QzrbymoAQsryLWMgNlFy+5HiafXY5/RGzcJzF++nnzaiVxC9i
+6U5urPsSwGMHcJ0FE079G0i/o1A38VvJDnraNMkoYyQ9xFML2t46c8bAHFQRTuw
d+bg3pOODjojEn/Bg4Ukx11ZuZKkyHeaK4tmRlxwOytRue64NnKo8H4h9Ue+oSqU

关于ssh-kengen3后面的参数说明:

  • -m: 参数指定密钥的格式,PEM(也就是RSA格式)是之前使用的旧格式
  • -b:指定密钥长度;
  • -e:读取openssh的私钥或者公钥文件;
  • -C:添加注释;
  • -f:指定用来保存密钥的文件名;
  • -i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
  • -l:显示公钥文件的指纹数据;
  • -N:提供一个新密语;
  • -P:提供(旧)密语;
  • -q:静默模式;
  • -t:指定要创建的密钥类型

puttygen工具转换

工具下载地址:PuTTYgen Download - Download Putty 0.77 ,有Linux、Mac、Windows版本,按需下载

以Linux版本为例说明。

[root@hlly .ssh]#./puttygen /home/xxxx/.ssh/id_rsa -o loongshawn.ppk
[root@hlly .ssh]#ll
-rw-------. 1 root               root                      
[root@hlly .ssh]#./puttygen loongshawn.ppk -O private-openssh -o loongshanw_id_rsa
[root@hlly .ssh]#ll
总用量 3952
-rw-------. 1 root               root                      1900 1月  01 21:21 loongshawn.ppk
-rw-------. 1 root               root                      1900 1月  01 21:25 loongshanw_id_rsa
[root@hlly .ssh]#cat loongshanw_id_rsa
-----BEGIN RSA PRIVATE KEY-----
HMGRG5AIBAAKCAYEA5yaDVP9DltF1XGthgdgdjgggweEHEeqzvwHg6AVvS8XREM
0ccvvshahkahknvhrGGGHjJKKKNIwvTHazjB59pNX/RyCpjZIIk5I4cxkyHsnBo
  • 第一步:生成ppk文件,puttygen /home/xxxx/.ssh/id_rsa(源文件) -o loongshawn.ppk(中间文件)
  • 第二步:转换为rsa-pem格式转换,puttygen loongshawn.ppk(中间文件) -O private-openssh -o loongshanw_id_rsa(目标文件)

相关文章:

  • 计算机毕业设计ssm体育赛事信息平台dmlva系统+程序+源码+lw+远程部署
  • 网课查题公众号接口调用详细教程
  • 计算机毕业设计ssm通识教育教学系统ekzep系统+程序+源码+lw+远程部署
  • 网课查题接口对接教程
  • 网课答案搜题接口对接教程
  • 计算机毕业设计ssm桐梓娄山书店管理系统6k3s6系统+程序+源码+lw+远程部署
  • c c++源文件依赖关系分析工具
  • yolo系列之yolov4(4)
  • JavaFX、聊天程序
  • SVO2.0
  • WebWall-09.Unsafe file uploads(不安全的文件上传)
  • Docker——使用docker工具管理软件/组件的运行,镜像、容器、数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境
  • HTML5 day_01(8.5)
  • 跑路了,去东北国企干软件测试一个月的感触
  • datawhale8月组队学习《pandas数据处理与分析》(中)(变形、连接、缺失数据)
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • C++入门教程(10):for 语句
  • input的行数自动增减
  • javascript面向对象之创建对象
  • Promise面试题,控制异步流程
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • rabbitmq延迟消息示例
  • Spark RDD学习: aggregate函数
  • Spring Boot MyBatis配置多种数据库
  • XML已死 ?
  • zookeeper系列(七)实战分布式命名服务
  • 对JS继承的一点思考
  • 关于Java中分层中遇到的一些问题
  • 如何在GitHub上创建个人博客
  • 深度学习入门:10门免费线上课程推荐
  • 深度学习在携程攻略社区的应用
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 听说你叫Java(二)–Servlet请求
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 在electron中实现跨域请求,无需更改服务器端设置
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • #宝哥教你#查看jquery绑定的事件函数
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • %@ page import=%的用法
  • (超详细)语音信号处理之特征提取
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (一)WLAN定义和基本架构转
  • (转)关于pipe()的详细解析
  • (转)母版页和相对路径
  • .htaccess 强制https 单独排除某个目录
  • .NET Project Open Day(2011.11.13)
  • .NET单元测试
  • .sh 的运行
  • @Not - Empty-Null-Blank
  • [20170728]oracle保留字.txt
  • [AutoSar]工程中的cpuload陷阱(三)测试
  • [C++] cout、wcout无法正常输出中文字符问题的深入调查(1):各种编译器测试
  • [Codeforces] combinatorics (R1600) Part.2