Miklix

GOST Hash-codecalculator

Gepubliceerd: 17 februari 2025 om 08:26:01 UTC

Hashcodecalculator die de GOST-hashfunctie gebruikt om een hashcode te berekenen op basis van tekstinvoer of geüpload bestand.

Deze pagina is machinaal uit het Engels vertaald om hem voor zoveel mogelijk mensen toegankelijk te maken. Helaas is machinevertaling nog geen geperfectioneerde technologie, dus er kunnen fouten optreden. Als je dat liever hebt, kun je hier de originele Engelse versie bekijken:

GOST Hash Code Calculator

De GOST hash-functie verwijst naar een familie van cryptografische hash-functies die door de Russische overheid zijn gedefinieerd. De bekendste versie is GOST R 34.11-94, die veel werd gebruikt in Rusland en andere landen die GOST-normen overnamen. Later werd deze opgevolgd door GOST R 34.11-2012, ook bekend als Streebog. Dit is de originele versie.

Full disclosure: Ik heb de specifieke implementatie van de hashfunctie die op deze pagina wordt gebruikt niet geschreven. Het is een standaardfunctie die wordt meegeleverd met de programmeertaal PHP. Ik heb alleen de webinterface gemaakt om hem hier voor het gemak publiekelijk beschikbaar te maken.


Nieuwe Hashcode berekenen

Gegevens die via dit formulier worden verzonden of bestanden die via dit formulier worden geüpload, worden niet langer op de server bewaard dan nodig is om de gevraagde hashcode te genereren. Ze worden onmiddellijk verwijderd voordat het resultaat naar uw browser wordt teruggestuurd.

Invoergegevens:



De ingediende tekst is UTF-8 gecodeerd. Aangezien hashfuncties werken op binaire gegevens, zal het resultaat anders zijn dan wanneer de tekst in een andere codering zou zijn. Als je een hash moet berekenen van een tekst in een specifieke codering, moet je in plaats daarvan een bestand uploaden.



Over het GOST-hashalgoritme

Ik ben geen wiskundige of cryptograaf, maar ik zal proberen deze hashfunctie uit te leggen met behulp van een alledaagse analogie die andere niet-wiskundigen hopelijk kunnen begrijpen. Als je de wetenschappelijk correcte, wiskundige versie prefereert, weet ik zeker dat je die ergens anders kunt vinden ;-)

Denk aan GOST als een geavanceerde "data blender" die alles wat je erin stopt omzet in een unieke smoothie. Met dezelfde ingrediënten zal het altijd dezelfde smoothie maken, maar als er ook maar een kleine verandering in de ingrediënten wordt aangebracht, krijg je een compleet andere smoothie.

Dit is een proces in drie stappen:

Stap 1: De ingrediënten voorbereiden (vulling)

  • Je begint met je 'ingrediënten' (de boodschap).
  • Als uw bericht niet de juiste grootte heeft voor de blender, voegt GOST wat "filler" (extra data) toe om het perfect te laten passen. Dit is alsof u water toevoegt om de blender te vullen.

Stap 2: Blenden met geheime recepten (mixen)

  • GOST mengt de gegevens niet slechts één keer, maar mengt ze steeds opnieuw volgens een geheim recept.
  • Dit recept bevat:
    • Choppen (het opdelen van de gegevens in kleine stukjes).
    • Ruilen (de onderdelen verplaatsen).
    • Roeren (op een nieuwe manier weer mengen).

Stel je een chef voor die een ingewikkelde manier heeft om ingrediënten te mengen, zodat niemand kan raden hoe het gedaan wordt. Dat is wat GOST met jouw data doet.

Stap 3: De smoothie serveren (laatste hasj)

  • Nadat u alles hebt gemixt, krijgt u uw smoothie: een gemengde versie van uw gegevens met een vaste grootte.
  • Deze smoothie is uniek met je originele ingrediënten. Verander iets, zelfs een klein kruimeltje, en je krijgt een compleet andere smoothie.

Deze versie van de GOST-functie gebruikt de originele "test parameters" S-boxen, die niet worden aanbevolen voor productiegebruik. Als u GOST gaat gebruiken, moet u waarschijnlijk de implementatie gebruiken die CryptoPro S-boxen gebruikt: GOST CryptoPro Hash-codecalculator

Delen op BlueskyDelen op FacebookDelen op LinkedInDelen op TumblrDelen op XDelen op LinkedInPin op Pinterest

Mikkel Bang Christensen

Over de auteur

Mikkel Bang Christensen
Mikkel is de bedenker en eigenaar van miklix.com. Hij heeft meer dan 20 jaar ervaring als professioneel computerprogrammeur/softwareontwikkelaar en werkt momenteel fulltime voor een groot Europees IT-bedrijf. Als hij niet blogt, besteedt hij zijn vrije tijd aan een breed scala aan interesses, hobby's en activiteiten, die tot op zekere hoogte weerspiegeld kunnen worden in de verscheidenheid aan onderwerpen op deze website.