Git 저장소에 대한 액세스를 요청했고 공개 키와 개인 키를 제공한 후 승인을 받았습니다.
(일반 메소드를 사용하여 생성된 결과 ssh-keygen -t rsa
는 다음과 같습니다.
<user> @ <hostname> : ~/.ssh $ > ll
total 20K
-rw-------. 1 <user> 1.7K Mar 02 10:14 id_rsa
-rw-r--r--. 1 <user> 407 Mar 02 10:14 id_rsa.pub
-rw-r--r--. 1 <user> 1.3K Mar 01 14:25 known_hosts
)
그런데 실수로 홈 디렉토리를 삭제했습니다. 다행히 중요한 파일을 모두 백업해 두었기 때문에 복원하는 것이 번거롭지 않았습니다.
그러나 이전 공개 키와 개인 키를 사용하여 Git 저장소를 다시 복제하려고 하면 복제할 수 없습니다. Git은 승인되지 않은 사용자와 마찬가지로 나에게 비밀번호를 요청했습니다.
따라서 현재 공개 키와 개인 키를 사용하여 액세스를 다시 요청해야 합니다.
비교해 보니 새 키가 원래 키와 실제로는 다르다는 것을 알았습니다.
그래서 제 질문은,
- 동일한 시스템에 있는 사용자의 공개 키와 개인 키가 변경되는 이유는 무엇입니까?
- 계속해서 질문을 이어가면, 다른 변경 없이 이전 공개 키와 개인 키를 사용하여 저장소에 액세스할 수 없는 이유는 무엇입니까?
- 키 다시 생성을 사용하면 키가 변경됩니까
ssh-keygen -t rsa
?
필요한 경우 추가 정보를 제공할 수 있습니다.
답변1
- 키 쌍은 사용자나 컴퓨터와는 아무 관련이 없습니다. 집 열쇠를 도난당했다고 상상해 보세요. 열쇠는 귀하에게 묶여 있지 않으며 누구나 열쇠를 사용하여 문을 열 수 있습니다. 마찬가지로, 귀하의 개인 키를 받으면 이를 사용하여 귀하의 Github 저장소를 변경할 수 있습니다.
- 새 키와 이전 키를 모두 사용하여 저장소에 액세스하려면 다음 사항을 확인해야 합니다.사람들열쇠둘 다키 쌍이 Github에 업로드됩니다. Github에 새 키만 있는 경우 이전 키 쌍을 사용할 때 Github에서 사용자를 인증할 수 없습니다.
- 예, 키가 변경됩니다. 그게 요점입니다. 문에 새 자물쇠를 구입한다고 상상해보십시오. 특히 기존 키가 새 키와 동일한 경우에는 아무런 소용이 없습니다. 누군가가 귀하의 오래된 열쇠를 훔쳐서 자물쇠를 바꾸는 경우. SSH 키 중 하나가 손상된 경우 새 키를 생성하고 이전 키를 삭제한 후 해당 공개 키를 Github에 업로드하면 됩니다. 여러 개의 키 쌍을 가질 수도 있습니다. 원하는 양의 데이터를 생성하고 다양한 목적으로 사용하세요. 이는 집에 여러 개의 자물쇠를 여는 데 여러 개의 열쇠가 있는 것과 유사합니다.
또한 개인 키를 절대로 알려주지 마십시오. 개인 키는 귀하의 신원을 확인하는 데 사용됩니다. 당신의 개인 키를 얻으면 당신인 척 할 수 있어요. Github에서는 차이점을 알 수 없습니다. 당신 외에는 누구도 당신의 개인 키가 무엇인지 알 필요가 없습니다. 개인 키를 어딘가에 업로드했다면 안전을 위해 이를 삭제하고 새 개인 키 쌍을 생성한 후 새 공개 키를 업로드하는 것이 좋습니다.
공개 키 암호화에 대해 자세히 알아보기여기.
답변2
나는 내 개인 키를 누구에게도 절대 알려주지 않습니다. 공개 키가 어떻게든 변경되었기 때문에 누군가 나에게 코인을 보내려고 했을 때 나는 코인을 받지 못했습니다. 그들은 언제나처럼 공개 키를 사용하지만 이번에는 내 쪽에서 공개 키를 보면 마지막 몇 글자가 빠졌습니다. 어떻게 이런 일이 일어날 수 있습니까? 키 설정을 수정한 적이 없습니다.
내 공개 키가 더 이상 마지막 4~5자를 표시하지 못하는 이유를 아시나요?