Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

해싱의 작동 원리는 무엇입니까?

<시간/>

해싱은 주어진 키를 코드로 해석하는 절차입니다. 해시 함수는 데이터를 새로 생성된 해시 코드로 대체하는 데 사용됩니다. 또한 해싱은 내러티브 정보를 저장하기 위해 생성된 변수인 문자열이나 입력 키를 가져와서 해시 값으로 정의하는 관행으로 일반적으로 알고리즘에 의해 결정되며 원본보다 훨씬 짧은 문자열을 생성합니다.

해싱은 일반적으로 단방향 암호화 기능입니다. 해시는 되돌릴 수 없기 때문에 해시 방법의 출력을 이해한다고 해서 파일 내용을 재생성할 수 있는 것은 아닙니다. 이를 통해 내용을 이해하지 않고도 두 파일이 동일한지 여부를 평가할 수 있습니다.

정보 보안 및 인터넷 인증에서 해싱을 사용하는 것은 일반적입니다. 예를 들어 데이터베이스에 암호를 안전하게 저장하는 데 사용할 수 있지만 파일 및 문서를 비롯한 다른 정보 요소의 보안도 제공할 수 있습니다.

해싱 데이터 구조는 어레이가 정보를 효과적으로 찾고 저장할 수 있도록 하여 정보를 찾고 저장하는 효과적인 구조를 지원합니다. 20,000개의 숫자 목록이 있고 해당 목록에서 특정 숫자를 찾도록 요청받고 목록의 각 숫자를 스캔하여 입력된 숫자와 일치하는지 확인할 수 있다고 가정합니다.

해싱은 문자열을 자주 더 짧고 고정 길이 값으로 변환하는 절차입니다. 데이터베이스에서 요소를 검색하기 위해 해시 키를 사용하는 이유는 원래 값을 사용하여 항목을 검색하는 것이 더 짧은 해시 키를 사용하는 것보다 시간이 더 오래 걸리기 때문입니다.

검색할 때 컬렉션에서 요소를 효과적으로 찾거나 저장하는 데 사용할 수 있습니다. 예를 들어, 10,000개의 영어 단어 목록이 있을 수 있고 주어진 단어가 그 사이에 있는지 확인하려는 경우 일치하는 항목이 발견될 때까지 주어진 단어를 10,000개 항목과 비교하는 것은 비효율적입니다.

배열은 범위의 키 값으로 인덱싱될 수 있으며, 이를 샤싱이라고 합니다. 모듈로 연산자는 키 값 범위를 얻는 데 사용됩니다. 이 경우 20x20 해시 테이블에 다음 항목을 저장할 수 있습니다. 각 항목의 형식은 (키, 값)입니다.

MD5, SHA-1, SHA-2, NTLM 및 LANMAN을 포함한 해싱 알고리즘은 오늘날 세계에서 일반적으로 사용됩니다. 메시지 다이제스트는 5가지 버전으로 나뉩니다. 이 버전은 MD5입니다. 이전에는 MD5가 가장 유명한 해싱 알고리즘 중 하나였습니다. MD5는 출력을 위해 128비트가 필요합니다.

해싱에서 데이터 블록의 각 비트는 고정된 크기의 비트 문자열 값으로 변환됩니다. 파일에는 데이터 블록이 포함됩니다. 두 개의 다중 입력이 동일한 해시 값을 생성할 위험이 있습니다. 이것은 두 개의 다중 입력이 동일한 해시 값을 지원할 때 나타나는 충돌이라고 합니다.