Adler32 er en checksum algoritme, der sikrer integriteten af overførte data, der er lagret , eller komprimeret og dekomprimeret . Lavet ved at tilføje alle bytes i en data- streng ( blok) eller ord , en Adler32 checksum er en 32- bit heltal bruges til at kontrollere data. Algoritmen selv adskiller sig ikke for Java , Python eller nogen af de andre programmeringssprog , der bruger den , men scriptet bruges til at kalde algoritmen og viser resultaterne kan variere afhængig af programmeringssprog. Adler32 Algoritme
Udviklet af Mark Adler baseret på Fletchers checksum , det Adler32 algoritmen giver et enkelt 32-bit heltal beregnet ud fra en streng eller blok af data ( udgangspunktet ) . Når du overføre data , er en kontrol udført på den modtagende ende . Hvis resultatet af checksum på start strengen afviger på nogen måde fra resultatet af checksum på strengen sendes til modtageren , så dataene er ændret på en eller anden måde . Hvis starter og slutter heltal matcher , er der en god mulighed for de modtagne data er den samme som de data, du overførte .
Java og Python Script Forskel
Processing bogstavelig værdier som 32 byte binære værdi som følge af Adler32 checksum , Java skubber den bogstavelige 32 byte binære værdi på en stak. Python skubber en pointer på stakken , der peger på en tilsvarende heltal objekt . Desuden er Python mere dynamisk , når de behandler bytecodes , hvor Java er ikke så fleksible .
Java
Computing Adler32 checksum af en fil kræver, at du oprette et objekt af Adler32 . En FileInputStream klasse skaber et input stream at læse bytes fra filen, og når data sendes checksum beregnes ved CheckOutputStream klasse som det bliver skrevet på den udgående strøm . Den getValue () metode returnerer værdien af checksum og reset () metode nulstiller værdien tilbage til den oprindelige kontrolsumværdien
Python
Computing 32. . - bit Adler checksum , Python udfører en simpel kommando til at få checksum en given streng. Det bruger en byte buffer ( BUF) for at gemme nummeret . Hvis buf ikke har et nummer , returnerer funktionen en standard værdi .