当前位置:   article > 正文

有关公钥私钥的困惑和生成_sm2公钥是每回都要生成吗?

sm2公钥是每回都要生成吗?

关于这个困惑的背景:是在公司下班空余时间学习node.js的时候,准备自己用express快速搭建一个简易博客,想着代码代码能传到自己的仓库,毕竟用的是公司电脑,万一走了,要带走也不方便,就想起了git,然后问题来了:

Git使用https协议,每次pull, push都要输入密码,相当的烦。使用git协议,然后使用ssh密钥。这样可以省去每次都输密码。

然而我只是听过并不懂他们到底是干嘛的,并且怎么去生成……

查了查是这么解释的:
公钥一般是给服务器的,他们在权限中加入我给的公钥,然后当我从远地仓库中下载项目的时候,我在git clone xxx的时候,那个服务器我通过他的绑定的公钥来匹配我的私钥,这个时候,如果匹配,则就可以正常下载,如果不匹配,则失败.

大多数 Git 服务器都会选择使用 SSH 公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权,没有的话就要生成一个。
整体步骤如下吧:

  1. 当然是下载一个git客户端了,这个就不多说,下载安装即可。

  2. 然后就是使用命令行终端(下载好的Git Bash)来执行命令生成公钥和密钥了
    命令:ssh-keygen -t rsa -C “your_email@example.com”( 你的邮箱),连续点击 Enter 键即可。

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# Creates a new ssh key, using the provided email as a label
# Generating public/private rsa key pair.
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]  // 推荐使用默认地址
Enter passphrase (empty for no passphrase)://此处点击 Enter 键即可,也可以填写密码,填写密码后每次使用 SSH 方式推送代码时都会要求输入密码,由于这个 Key 也不是用于军事目的,所以也无需设置密码。
  • 1
  • 2
  • 3
  • 4
  • 5

然后会生成

Your identification has been saved in /Users/you/.ssh/id_rsa.
# Your public key has been saved in /Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
  • 1
  • 2
  • 3
  • 4

以上代码示例是我从coding上copy的,当然我自己已经生成过了,图个方便就用他的示例了

3.在终端输入 open ~/.ssh,用文本编辑器打开『id_rsa.pub』文件,复制全部内容,这个就是公钥了,
接下来你可以把这个公钥部署到coding(码市)或者github上去了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/388437
推荐阅读
相关标签
  

闽ICP备14008679号