CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): hello (Yang S.S.)
날 짜 (Date): 1996년02월21일(수) 20시05분23초 KST
제 목(Title): [Re]패스워드



질문에 대한 정확한 요점을 파악하지 못하여
제 나름대로 생각하는 것에 대하여 말씀드리겠습니다.

유닉스에서의 패스워드는 로그인(login)을 예를 들어 설명
하는 것이 좋을 것 같아서 로그인과 관련하여 말씀드릴까 합니다.

일단 터미날마다 getty라는 process 가 있어서 터미날로 부터 어떤 키든지
입력을 받게 되면 login이라는 프로그램을 exec하게 됩니다.
로그인에서는 login : 라는 프롬프트를 보여준 후에 로그인 이름을 받아 들이고
이어서 패스워드를 받아 들입니다.

패스워드를 받아서 crypt라는 함수를 통하여 /etc/passwd(or shadow)에 있는
패스워드 필드의 값과 일치하는 지를 검사한 후에 일치할 경우
사용자의 로그인 쉘을 불러주지요.

이때 사용하는 crypt라는 함수는 시스템에서 제공하는 함수로 DES(data encryption
standard)(data가 맞는지는 잘 모르겠네요.)라는 암호 알고리즘에 기초를 두고
있습니다.
미국 이외에 사용하는 DES는 키가 미국에서 사용하는 것보다 작기 때문에
보안성이 약간 떨어집니다. (미국의 정책이기 때문에 어쩔수가 없어요)

어쨋든 crypt라는 함수를 통하여 암호화 시킨 값과 패스웨드 화일에 있는 
암호화된 패스워드를 비교하는 것이지요.

login에 관한 소스는 이미 공개되어 있고 쉽게 찾을 수 있으리라 생각합니다.
몇년전의 PC advance라는 잡지에서도 나와있구요.
(저에게 연락을 주시면 팩스로 제공가능합니다.)

무슨 의미로 쓰셨는지 모르겠지만 클라이언트 서버라는 관계에서는 보안성이
문제가 되지요.
특히 현재의 TCP/IP를 쓰는 Ethernet에서의 로그인은 보안성이 낮지요.(거의 
무방비)
왜냐하면 지나다니는 패킷에 로그인이 모두 보이는 상태 플레인 텍스트(plain 
text)로 패킷을 전송하기 때문이지요. 따라서 이것을 이용해서 쉽게 날아다니는
로그인명과 패스워드를 얻을 수 있습니다. 텔넷(telnet)접속 뿐만 아니라 ftp접속도
모두 보이지요. 하여튼 날아다니는 패킷은 그냥 다 보여요.

이런것 때문에 로그인 자체도 보내기 위해서 먼저 암호화를 시키기도 하는데
이런것은 상용으로 파는 것 뿐이 대부분이라서 일반 네트웍에서는 완전한
open system(?)이지요.

저도 이것 때문에 후배에게 패스워드를 들키고 말았어요.(흑흑흑, 물론 제가 
사용하는 패스워드 중에서 한가지만 들켰지만.)

하여튼 일반적인 네트웍에서는 이런것이 문제가 되어 보안 시스템이 많이 팔리고 
있지만 아직까지는 그런 것을 구입하여 사용하는 경우가 드물어요.

보안 문제는 암호학 책을 좀 보는 것이 도움이 될것 같습니다.
현재로 가장 많이 사용하는 것은 DES와 RSA로 알고는 있습니다만
얼마 지나지 않아 미국의 표준 암호가 DES말고 다른 체계로 바뀐다는 소리도 
있더군요.
싱글키로는 (single key) 로는 가장 많이 사용하고 있지만 컴퓨터 시스템의 
발달로 안전하지 못하다는 생각이 들기 시작하였기 때문 이겠지요.

하여간 암호학 쪽을 조금 만 보면 보안의 문제점이 상당히 많이 지적되고 있습니다.

도움이 되었는지 모르겠습니다.
아무쪼록 조그만 도움이라도 되었기를....
 
-------------------------------------------
안녕하세요? <o>------< HELLO
e-mail : ssyang@metro.telecom.samsung.co.kr
-------------------------------------------
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.