Git可以使用HTTPS、SSH等协议。
使用HTTPS协议时,每次进行push时,都需要输入用户名及密码,很麻烦。
SSH则较方便的实现了用户登录,它采用的方式是密钥验证。
用户可以在本地主机A上使用ssh-keygen,生成私钥及公钥(这两个是一对的),私钥(独自拥有)存储在本地主机A上,公钥(可公开给其他人)可以提供给远程主机B。
验证步骤:
每次本地主机A在进行git push后,远程主机B会发一串随机字符串,本地主机A用私钥对这串字符串进行加密后,传送给远程主机B,远程主机B利用本地主机A提供的公钥进行解密,如果解密成功,那么说明是可信的,允许本地主机A进行登录。
more:
[url=http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html]SSH原理与运用(一):远程登录[/url]
[url=http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html]数字签名是什么?[/url]
使用HTTPS协议时,每次进行push时,都需要输入用户名及密码,很麻烦。
SSH则较方便的实现了用户登录,它采用的方式是密钥验证。
用户可以在本地主机A上使用ssh-keygen,生成私钥及公钥(这两个是一对的),私钥(独自拥有)存储在本地主机A上,公钥(可公开给其他人)可以提供给远程主机B。
验证步骤:
每次本地主机A在进行git push后,远程主机B会发一串随机字符串,本地主机A用私钥对这串字符串进行加密后,传送给远程主机B,远程主机B利用本地主机A提供的公钥进行解密,如果解密成功,那么说明是可信的,允许本地主机A进行登录。
more:
[url=http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html]SSH原理与运用(一):远程登录[/url]
[url=http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html]数字签名是什么?[/url]