Miklix

Калкулатор за хаш код CRC-32C

Објавено: 5 март 2025, во 19:47:00 UTC
Последно ажурирано: 12 јануари 2026, во 11:37:48 UTC

Калкулатор за хаш-код што ја користи хаш-функцијата CRC-32C (32-битна проверка на циклична редундантност, C варијанта) за да пресмета хаш-код врз основа на внесен текст или прикачување на датотека.

Оваа страница беше машински преведена од англиски за да биде достапна за што повеќе луѓе. За жал, машинското преведување сè уште не е усовршена технологија, така што може да се појават грешки. Ако сакате, можете да ја видите оригиналната англиска верзија овде:

CRC-32C Hash Code Calculator

Цикличната проверка на редундантност (CRC) е код за откривање грешки што најчесто се користи за откривање на случајни промени во суровите податоци. Иако технички не е криптографска хеш функција, CRC-32 често се нарекува хеш поради неговата способност да произведе излез со фиксна големина (32 бита) од влез со променлива должина. Верзијата презентирана на оваа страница е варијантата CRC-32C, што е понова, „попаметна“ (подобро откривање на грешки) верзија која често е хардверски забрзана на современите процесори (преку SSE 4.2).

Целосно обелоденување: Не ја напишав конкретната имплементација на функцијата за хаш што се користи на оваа страница. Тоа е стандардна функција вклучена во програмскиот јазик PHP. Го направив веб-интерфејсот само за да го направам јавно достапен овде за погодност.


Пресметајте нов хаш код

Поднесените податоци или датотеките поставени преку овој формулар ќе се чуваат на серверот само онолку колку што е потребно за да се генерира бараниот хаш-код. Ќе се избрише веднаш пред резултатот да се врати во вашиот прелистувач.

Влезни податоци:



Испратениот текст е шифриран UTF-8. Бидејќи хаш-функциите работат на бинарни податоци, резултатот ќе биде различен отколку ако текстот бил во друго кодирање. Ако треба да пресметате хаш на текст во одредено кодирање, наместо тоа треба да испратите датотека.



За алгоритмот за хеширање CRC-32C

Не сум математичар, но ќе се обидам да ја објаснам оваа хеш функција со едноставна аналогија. За разлика од многу криптографски хеш функции, ова не е особено комплициран алгоритам, па веројатно ќе биде во ред ;-)

Замислете дека испраќате писмо по пошта, но се грижите дека може да се оштети пред да пристигне кај примачот. Врз основа на содржината на писмото, пресметувате CRC-32 контролна сума и ја пишувате на пликото. Кога примачот ќе го прими писмото, тој или таа може да ја пресмета и контролната сума и да види дали се совпаѓа со она што сте го напишале. Ако е така, писмото не било оштетено или изменето по патот.

Начинот на кој CRC-32 го прави ова е процес од четири чекори:

Чекор 1: Додадете дополнителен простор (дополнување)

  • CRC додава малку дополнителен простор на крајот од пораката (како пакување кикирики во кутија).
  • Ова му помага полесно да ги забележува грешките.

Чекор 2: Магичниот линијар (Полиномот)

  • CRC-32 користи специјален „магичен линијар“ за мерење на податоците. Замислете го овој линијар како шема од испакнатини и жлебови (ова е полиномот, но не грижете се за тој збор). Најчестиот „линијар“ за CRC-32 е фиксен шема.

Чекор 3: Лизгање на линијарот (Процес на делење)

  • Сега CRC го лизга линијарот преку пораката. На секое место, проверува дали испакнатините и жлебовите се порамнуваат. Ако не се порамнуваат, CRC прави забелешка (ова се прави со користење на едноставен XOR, како вклучување или исклучување на прекинувачите). Продолжува да лизга и превртува прекинувачи сè додека не стигне до крајот.

Чекор 4: Конечниот резултат (Контролна сума)

  • Откако ќе го поминете линијарот низ целата порака, ви останува мал број (долг 32 бита) што ги претставува оригиналните податоци. Овој број е како уникатен отпечаток од прст за пораката. Ова е CRC-32 контролната сума.

Верзијата презентирана на страницата е варијантата CRC-32C, која треба да биде претпочитаната варијанта, особено ако користите процесор со хардверско забрзување (SSE 4.2 и понова) и не ви е потребна компатибилност со други варијанти.

Имам калкулатори и за другите варијанти:

  • Линк
  • Линк

Дополнително читање

Ако ви се допадна овој пост, можеби ќе ви се допаднат и овие предлози:


Споделете на BlueskyСподелете на ФејсбукСподелете на LinkedInСподелете на TumblrСподелете на XСподелете на LinkedInЗакачи на Pinterest

Микел Кристенсен

За авторот

Микел Кристенсен
Микел е креатор и сопственик на miklix.com. Тој има над 20 години искуство како професионален компјутерски програмер/развивач на софтвер и моментално е вработен со полно работно време во голема европска ИТ корпорација. Кога не пишува блог, тој го поминува своето слободно време на широк спектар на интереси, хоби и активности, кои до одреден степен може да се рефлектираат во разновидните теми опфатени на оваа веб-локација.