Adler32 is een checksum algoritme dat de integriteit van de verzonden gegevens die zijn opgeslagen of gecomprimeerd en gedecomprimeerd zorgt . Gemaakt door het toevoegen van alle bytes in een data string ( blok ) of een woord , een Adler32 checksum is een 32 - bits geheel getal wordt gebruikt om gegevens te controleren . Het algoritme zelf verschilt niet voor Java , Python of een van de andere programmeertalen die het gebruiken , maar het script wordt gebruikt om het algoritme te bellen en tonen de resultaten kunnen variëren afhankelijk van de programmeertaal . Adler32 Algoritme Ontwikkeld door Mark Adler op basis van Fletcher's checksum , de Adler32 algoritme biedt een 32 - bits geheel getal berekend uit een string of een blok gegevens ( startpunt ) . Zodra u de data te verzenden , wordt een controle uitgevoerd op de ontvangende kant . Indien het resultaat van de controlesom op de beginnende tekenreeks enige wijze afwijkt van het resultaat van de controlesom op de naar de ontvanger tekenreeks vervolgens de gegevens is iets veranderd . Indien de eerste en laatste getallen overeenkomen , is er een goede mogelijkheid kreeg de gegevens is hetzelfde als de gegevens die u verzonden . Java en Python Script Verschil Processing letterlijke waarden als de 32 byte binaire waarde die resulteert uit de Adler32 checksum , Java duwt de letterlijke 32 byte binaire waarde op een stapel . Python duwt een pointer naar de stack die wijst naar een geheel getal en object . Bovendien , Python is dynamischer bij de verwerking bytecodes , waar Java is niet zo flexibel . Java Het berekenen van de Adler32 checksum van een bestand moet u maak een object van Adler32 . Een FileInputStream klasse creëert een input stream om bytes te lezen uit het bestand , en zodra de gegevens worden verzonden de checksum wordt berekend door de CheckOutputStream klasse als het wordt op de output stream geschreven . De methode getValue ( ) geeft de waarde van de checksum en de reset ( ) methode reset de waarde terug naar de oorspronkelijke checksum waarde Python Het berekenen van de 32 . - bit Adler checksum , Python voert een eenvoudige opdracht om de checksum van een gegeven string te krijgen. Het maakt gebruik van een byte buffer ( buf ) om het nummer op te slaan . Als het buf een nummer heeft , retourneert de functie een standaard waarde .
|