ssh-keygen이 생산 한 randomart는 무엇입니까?


352

키를 생성하면 최신 버전의 OpenSSH에서 "randomart"를 얻게됩니다. 이유와 그 용도에 대한 설명을 찾을 수 없습니다.

Generating public/private rsa key pair.
The key fingerprint is:
05:1e:1e:c1:ac:b9:d1:1c:6a:60:ce:0f:77:6c:78:47 you@i
The key's randomart image is:
+--[ RSA 2048]----+
|       o=.       |
|    o  o++E      |
|   + . Ooo.      |
|    + O B..      |
|     = *S.       |
|      o          |
|                 |
|                 |
|                 |
+-----------------+

Generating public/private dsa key pair.
The key fingerprint is:
b6:dd:b7:1f:bc:25:31:d3:12:f4:92:1c:0b:93:5f:4b you@i
The key's randomart image is:
+--[ DSA 1024]----+
|            o.o  |
|            .= E.|
|             .B.o|
|              .= |
|        S     = .|
|       . o .  .= |
|        . . . oo.|
|             . o+|
|              .o.|
+-----------------+

5
내가 묻고 싶은 또 다른 질문은; 랜덤 아트 이미지를 다른 사람과 공유하는 것이 안전합니까? 다시 말하면, 위와 같은 랜덤 아트 이미지가 주어지면 이것을 다시 키로 리버스 엔지니어링 할 수 있습니까?
— AndyJ0076

답변:


259

랜덤 아트는 인간이 키를보다 쉽게 ​​검증 할 수있는 방법입니다.

유효성 검사는 일반적으로 의미없는 문자열 (키 지문의 16 진수 표현)을 비교하여 수행됩니다.이 문자열은 사람이 비교할 때 속도가 느리고 부정확합니다. Randomart는 이것을 빠르고 비교하기 쉬운 구조화 된 이미지로 대체합니다.

이 백서 "해시 시각화 : 실제 보안을 향상시키는 새로운 기술", Perrig A. and Song D., 1999, 암호 기술 및 전자 상거래에 관한 국제 워크샵 (CrypTEC '99) "에 몇 가지 기술과 장점이 설명되어 있습니다.


66
인간이 키의 유효성을 검사하는 이유를 설명 할 수 있다면 솔직히 공개 키를 authorized_keys 파일에 넣고 처리하는 경향이 있기 때문에 도움이 될 수 있습니다.
— dlamblin

43
@ dlamblin : 일반적으로 이것으로 자신의 키를 확인하지는 않습니다. 그러나 원격 시스템의 호스트 키를 확인하는 데 유용합니다. 한 가지 아이디어는 다양한 위치에서 특정 시스템에 로그인하거나 해당 키를 known_hosts 파일에 저장하지 않으면 호스트 키의 "예술"을 인식 할 수 있다는 것입니다. 해당 기술이 갑자기 변경된 경우 연결시 중간자 (man-in-the-middle) 공격이 진행 중이거나 호스트가 다른 키를 변경했음을 의미 할 수 있으므로 비밀번호를 입력 할 때주의해야합니다. 이유).
— Chris Johnsen

29
어, 호스트 아트는 언제 볼 수 있습니까? (내가 한 적이 없다고 생각합니다.) 키 페어를 생성 한 후에 만 ​​그러한 이미지를 보았습니다. 그리고 '갑자기'변화를 인식하기 위해 무엇을 비교해야할까요.
— DerMike

12
나는 randomart가 무결성 검사를위한 해시와 유사한 원칙을 고수했다. 즉, 입력의 작은 차이는 완전히 다른 출력을 생성한다. 그것은 당신이 무언가가 잘못되었다는 것을 알 수 있도록 예상 된 랜덤 아트의 거친 모양을 암기해야한다는 것을 의미합니다. 물론 SSH 등이 연결하고있는 호스트의 랜덤 아트를 보여주지 않으면 실제로는 작동하지 않습니다 (호스트가 알려진 경우에도 그렇게해야 함).
— Alan Plum

2
복사가 완료된 후 공개 키를 직접 무결성 검사와 교환 할 때 가장 유용하다고 생각합니다.
— jordanpg

198

더하다

-o VisualHostKey=yes 

명령 줄에 넣거나

VisualHostKey=yes 

당신의 ~/.ssh/config.

당신은 당신이 로그온하는 상자의 임의의 예술을 볼 수 있습니다. 언젠가 로그온하고 임의의 예술이 다른 경우 (당신의 두뇌는 가야합니다! 인식하지 못합니다!), 누군가 누군가 해킹을 당하거나 무언가 일 수 있습니다.

아이디어는 의식적으로 할 필요가 없다는 것입니다. 우리 기계 중 하나의 열쇠 중 하나는 나비처럼 보입니다. 또 하나는 거시기처럼 보입니다 (예, 우리의 두뇌는 원시적입니다). 매일 로그온하면 시도하지 않아도 이미지에 익숙해집니다.


9
좋지 않음. 이전에 로그인 한 경우 컴퓨터가 저장된 지문을 사용하여 인식하는 것이 훨씬 좋습니다. 이 기능은 새 컴퓨터에 로그인하는 데만 사용됩니다.
— Nicholas Wilson

57
이 답변에 늦었지만, 모든 known_hosts가없는 다른 컴퓨터에서 로그인 한 경우 이것이 매우 유용 할 것입니다. 이 경우 컴퓨터는 알려진 컴퓨터인지 확인할 수 없지만 사용자는 "정상과 다르게 보입니다!"를 볼 수 있어야합니다. 그리고 중단하십시오.
— Xkeeper

9
컴퓨터가 인식하도록하는 것은 해킹당하는 자신의 컴퓨터의 알려진 호스트에 취약합니다. 컴퓨터에서 암호를 입력하지 않도록하는 것처럼 호스트 키를 직접 확인하는 것이 좋습니다.
— Marko Topolnik

37

공식 발표 : OpenSSH 5.1 출시

ssh (1) 및 ssh-keygen (1)에 실험적인 SSH 지문 ASCII 시각화를 소개합니다. 비주얼 핑거 프린트 디스플레이는 새로운 ssh_config (5) 옵션 "VisualHostKey"에 의해 제어됩니다. 변경된 호스트 키를 쉽게 호출하고 거부 할 수있는 SSH 호스트 키를 시각적 형식으로 렌더링하는 것이 목적입니다. 이 기술은 "랜덤 아트 [*]"로 알려진 그래픽 해시 시각화 체계와 베를린 23C3의 Dan Kaminsky의 생각에서 영감을 받았습니다.

무작위 아트를 생성하는 데 사용되는 알고리즘은 여전히 ​​변경 될 수 있으므로 지문 시각화는 현재 기본적으로 비활성화되어 있습니다.


8
마지막 문장은 실제로 가치가 있습니다. OpenSSH 6.8 릴리스 상태 에 대한 OpenBSD Journal @ Undeadly.org 정보 , "비주얼 호스트 키도 다를 수 있습니다." 최신 소프트웨어는 이전 소프트웨어에 표시된 이미지와 다른 이미지를 보여줍니다.
— TOOGAM


11

ssh-keygen 생성 후 표시되는 Randomart는 방금 생성 한 키의 그래픽 표현입니다. 그때:

  • Randomart은 하지 정말 유용 에 대한 SSH를 키를 생성 한 사용자

  • Randomart는 SSH를 통한 연결을 사용 하여 동일한 서버에 자주 연결하는 사용자에게 매우 유용 할 수 있습니다 . SSH 명령에 "-o VisualHostKey = yes"옵션을 추가 한 경우 :

    ssh user@domainname.com -o VisualHostKey = yes

서버의 공개 키에 해당하는 Randomart가 표시됩니다.

예를 보려면 다음을 시도하십시오.

ssh git@github.com -o VisualHostKey = yes

사용자가 종종 같은 서버에 연결하는 경우 ,이 서버 의 공개 키 에 해당 하는 Randomart를 인식하는지 여부를 빠르고 쉽게 확인할 수 있습니다 . 공개 키 자체의 문자열을 확인하는 것보다 쉽고 빠릅니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.