Järjestelmä : funktiot

CRC32


   KUVAUS

CRC32-algoritmia käytetään tarkastamaan korruptoitunutta dataa. Tiedostoista tai muistipaloista voidaan laskea ns. tarkistussumma, joka toimii vähän kuin sormenjälkenä tiedostoille. Monet tietoliikenneohjelmat käyttävät sitä varmistamaan, että siirrossa ei tapahtunut virheitä. Monet pakkausformaatit kuten zip ja rar sisältävät myös CRC-tarkistuksen; Viallisia tiedostoja ei pureta paketeistaan.

CRC32 on 32-bittinen sormenjälkialgoritmi, mikä tarkoittaa sitä, että tulos on 4-tavuinen kokonaisluku. Erilaisia yhdistelimä on siten noin 4 miljardia. On olemassa teoreettinen mahdollisuus, että kahdella eri tiedostolla on sama sormenjälki, mutta se on käytännössä olematon. Tätä varten on kuitenkin kehitetty tarkempia sormenjälkimenetelmiä, kuten MD5 ja Base64.

Voit käyttää tätä funktiota tarkastamaan onko jotakin tiedostoa näpelöity, koska yhdenkin tavun muuttaminen vaikuttaa sormenjälkeen. Tämä on kätevää esim. pelin asetustiedostojen ja tallennettujen pelitilanteiden varmentamiseen.

Kryptauskomentojen tapaan tätä voi käyttää sekä tiedostoille että muistipaloille.

   KÄYTTÖ
CRC32 (lähde)

  • lähde = Lähdetiedostonimi merkkijonona tai muistipalan muuttuja

  •    ESIMERKKI
    'get the file fingerprint for 'level.bmp' in the Media directory
    checksum=CRC32("Media\level.bmp")
    Print "File Fingerprint for 'level.bmp' "+Hex(checksum)
    Print "Should be: ECAA0F4C"
    Print

    'check if someone has been modified it...
    If Hex(checksum)="ECAA0F4C" Then
        Print "It's a match."
    Else
        Print "Someone has been poking on the file..."
    EndIf
    WaitKey

    <<TAKAISIN