2010-06-07 3 views
11

두 개의 암호와 두 개의 결과 해시가 있습니다. 암호에서 해시가 파생 된 방법을 알 수 없습니다. 소금을 사용하는지 모르겠다. 암호가 정수 값 또는 문자열 (유니 코드 일 수도 있음)로 해시 된 것인지 여부는 알 수 없습니다.암호 해싱 스키마를 알아낼 수 있습니까?

암호 : 6770 해시 : c12114b91a3841c143bbeb121693e80b

암호 : 9591 해시 : 25238d578b6a61c2c54bfe55742984c1

해시 길이가 MD5를 제안 할 것으로 보인다. 아무도 내가 시도 할 수있는 아이디어가 없나요?

참고 : 이것은 해킹을위한 것이 아닙니다. 데스크톱 클라이언트가 아닌 API를 통해 서비스에 액세스하려고하는데 암호 해시를 계산하는 방법을 알 수 없습니다. 현재 내 실제 암호 대신 해시를 직접 보내고 있습니다.

답변

28

그 해시 값을 인터넷 검색 (!)가 25238d578b6a61c2c54bfe55742984c1는 "9591"(source)의 md2sum 것으로 보여, 그 사이트가 6770에 대해 동일한 확인 다른 페이지를 가지고 있으며, 여러분의 첫번째 해시 값 (source2).

(편집 : 이후 최대 검색 좀 일부 MD2 소스 코드와 크로스 체크 해시를.) 다시 편집

는 (코멘트 :이 API는 어떤없이 그런 끔찍한 해싱 방식을 사용하는 믿을 수 없을만큼 운이 소금 또는 접두사! :-))

+10

무호흡 암호 해싱이 얼마나 나쁜지 알 수 있습니다. –

+1

+1 - 해시 자체를 검색하는 것을 실제로 생각하지 않았습니다. –

3

API 설명서에 이상한.

원칙적으로 이는 불가능한 문제입니다. 임의의 주어진 수의 특정 사례에서 임의의 수의 서로 다른 해시 알고리즘이 동일한 결과를 제공 할 수 있으며, 처음 하나에 의존 할 때 다른 결과를 줄 수 있습니다.

그러나 실제로는 몇 가지 일반적인 암호화 해시 알고리즘을 시도해 볼 수 있습니다. 무작위로 선택한 몇 가지 사례 중 하나와 일치하는 경우, 아마도 맞을 것입니다. 예를 들어, 악의적 인 사용자는 기본 해시 알고리즘을 적용하기 전에 몇 가지 문자를 재 매핑 할 수 있습니다 (예 : '3'또는 '-'와 '2'를 바꾸면 예제 비밀번호로 찾을 수 없습니다).하지만 실제 앱에서는 그렇지 않을 수 있습니다.

BTW - 4 자리 숫자 암호는 암호가 전혀없는 것처럼 안전합니다.

관련 문제