Hva er en hashkalkulator?

A hashkalkulator kan være flere ting, men i veldig bred forstand refererer til et program eller funksjon som godtar en eller annen type inngang og deretter kjører den inngangen gjennom en algoritme for å lage en utgangsverdi, for eksempel et stort antall eller en blokk med symboler. Begrepet brukes ofte i dataoverføring for å referere til et program som oppretter en type nøkkel med en algoritme, slik at alle som mottar dataene som overføres, kan bruke den samme algoritmen for å få samme nøkkel for å se om dataene kom intakte og umodifisert. I dataprogrammering kan begrepet "hasjkalkulator" brukes til å indikere en hasjfunksjon som gjør en slags data til en hash -tast som deretter blir behandlet av en annen algoritme for å lage en indeks til en matrise som informasjonen kan lagres. Selv om begge konsernkalkulatoren er like, er resultatene veldig forskjellige og er vanligvis ikke utskiftbare. En fellesegenskap til en hasjkalkulator, uavhengig av bruken, er at hasjverdien som genereres alltid vil være idetical for et gitt stykke data, uavhengig av hvor eller når programmet kjøres.

I kjernen er en hasjkalkulator bare et program eller funksjon som oppretter en hasj fra noen data. En hasj er bare et ord for en verdi og kan være alt fra et tall til en streng hundrevis av alfanumeriske tegn, avhengig av hvordan den brukes. Dataene som blir lagt til en hasjkalkulator for å opprette en hasj, kan også være nesten hva som helst. Når den brukes til feilkontroll i dataoverføring, er kilden for en hasjverdi vanligvis et komplett dokument eller datafil, for eksempel en e -post eller en bildefil. Ved programmering, fordi hashverdien brukes til å bestemme hvor dataregistreringer er lagret i en hasjtabell, er inngangsverdien vanligvis en del av en datapost som er unik, for eksempel etternavnet til en person, et telefonnummer eller et kontonummer.

Når det gjelder dataoverføring, bruker en hasjkalkulator noenF Hundrevis av forskjellige matematiske algoritmer for å skape den unike hasjverdien for informasjonen som overføres. Dette kan være noe så enkelt som å legge til alle verdiene til alle byte i en fil, i hvilket tilfelle hasjverdien er summen. Det kan også være mye mer sammensatt, og involverer telleblokker med biter eller overflødig behandling av forskjellige sekvenser av tall. En av de viktigste aspektene ved enhver hash -algoritme er imidlertid at den resulterende hasjverdien alltid må være den samme hvis de samme dataene brukes som input. Dette konseptet betyr at hvis en fil overføres med sin egen beregnede hasjverdi, kan mottakeren av dataene bruke en hashkalkulator med samme algoritme for å bestemme om hashverdiene for datamatchingen, og bekreftet at dataene ble mottatt intakte og uten feil eller endringer.

I programmering brukes uttrykket "hasjkalkulator" ofte for å beskrive en funksjon som konverterer et stykke punktum til en hasjverdi. I motsetning til dataoverføring, NumbeR generert av kalkulatoren i dette tilfellet brukes ikke nødvendigvis for verifisering, men for å beregne en indeks til en hasjtabell der informasjonen vil bli lagret. En mellomliggende hashverdi beregnes for å tillate at et større antall dataregistreringer forutsier forutsigbart i en mindre hasjtabell, med noen poster som genererer de samme verdiene under visse omstendigheter. Både algoritmen som brukes til å beregne en hasjverdi og dataene som brukes som input er ganske vilkårlige for en hasjtabell og vanligvis applikasjonsspesifikke.

ANDRE SPRÅK