MD5 암호화 방법에 대해 질문 입니다.
글쓴이: hyoun001 / 작성시간: 수, 2004/02/18 - 1:53오후
안녕하세요.
재가 여쭈어 보고 싶은거는 MD5를 이용해서 암호화하여 소켓으로 전송하고 싶습니다. 클라이언트(MD5로 암호화)->서버(암호화한것을 데이터와 비교)하려는 것인대요 사용 방법도 잘 모르겠고... 해서 이렇게 글을 남깁니다... 한글 문서를 찾을수가 없어서요 아시는분 있으시면 답변 좀 부탁 드리겠습니다.
아.. 그리고 어떤 일정한 데이터를 넘기는대 예를 들어 1111를 넘긴다고 치면 MD5로 암호화 했을 경우에 나오는 값이 일정하게 되어 있는 프로그램이 있더라고요. 일정한 값이 아니라 때에 따라 변화 시킬수 있는 방법은 없는지 궁금 합니다. 답변 부탁 드리겠습니다.
Forums:
MD5는 Encryption algorithm이 아닙니다.
MD5는 흔히 Hash algorithm 혹은 message digest algorithm으로 부릅니다. data의 integrity(무결성)을 check하기 위해 사용됩니다. 전송 전 후 message가 변경된 내용이 있는지를 알수 있도록 하죠.
이 경우에 말씀하신대로 항상 같은 값을 나타내게 되어있습니다. source data가 같으면 digest 값도 같은 셈이죠.
항상 다르게 하면서 integrity check을 하고 싶으시면 MD5와 같은 hash algorithm보다는 MAC(message authentication code)과 같은 방법을 쓰면서 source data에 random #를 넣으면 될 것 같습니다.
MD5는 Jaijin.Choi 님께서 말씀하신 대로 Message Dig
MD5는 Jaijin.Choi 님께서 말씀하신 대로 Message Digest 알고리즘입니다.
이건 데이터의 무결성 검사를 위한 Digest 생성은 가능할지 몰라도 암호화에는 사용할 수 없습니다.
hyoun001 님께서 하시고자 하는 일은 결국 암호화된 통신 채널로 데이터를 주고 받고 싶다는 것인데,
이런 기능을 지원하는 공개 라이브러리가 이미 많이 있습니다.
이 게시판에서 OpenSSL로 검색하시면 답을 얻으실 수 있을 겁니다.
댓글 달기