CRYPT :: OTP

PERL-implementatie van de One Time Pad (VENSE, OTP) -coderingsmethode.
Download nu

CRYPT :: OTP Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Kurt Kincaid
  • Uitgever website:
  • http://search.cpan.org/~sifukurt/Crypt-GOST_PP-1.10/GOST_PP.pm

CRYPT :: OTP Tags


CRYPT :: OTP Beschrijving

Perl-implementatie van de ene time-pad (VENSE, OTP) -coderingsmethode. Crypt :: OTP is een Perl-implementatie van de One Time Pad (VENSE, OTP) Encryptie-methode. Synopsis # OO-interface Gebruik Crypt :: OTP; $ Ref = Crypt :: OTP-> NIEUW ("PADFILE"); $ cipher = $ ref-> otp ($ bericht); of $ cipher = $ Ref-> OTP ($ bericht, $ modus); # Functionale interface Gebruik Crypt :: OTP; $ cipher = crypt :: otp ($ pad, $ bericht); of $ Cipher = Crypt :: OTP ($ PAD, $ MESSAGE, $ MODUS); de ene Time Pad-coderingsmethode is heel eenvoudig, en onmogelijk om te barsten zonder het daadwerkelijke padbestand waarmee het te-be-gecodeerde boodschap XOR is ed. Encryptie en decodering worden uitgevoerd met behulp van excuctly dezelfde methode, en het bericht zal alleen correct decoderen als hetzelfde pad wordt gebruikt in decodering zoals gebruikt in codering. De veiligste gebruiksmethode is om een groot, semi-willekeurig tekstbestand te gebruiken als de Pad, zoals SO: $ CipherText = OTP ("my_pad.txt", $ bericht); Ik heb echter ook een tweede methode geïmplementeerd die niet op een extern padbestand is gebaseerd, hoewel deze Mathod in hoofdzaak minder veilig is. $ Less_Secure = OTP ("Deze tekst neemt de plaats van mijn padbestand", $ bericht, 1); in dit voorbeeld instrueert de "1" de OTP-subroutine om de inhoud van het eerste element te gebruiken als de pad, in plaats van de Standaardmethode die is om het eerste element te gebruiken als de naam van het externe pad-bestand. Als het bestand dat is opgegeven met de eerste methode niet bestaat, retourneert OTP nul. In alle andere gevallen retourneert OTP de XOR'ed-bericht. Een paar belangrijke punten moeten worden gemaakt over het sleutelbeheer. Eerst en het belangrijkste moet worden opgemerkt dat het gebruik van de methode waarbij het pad wordt doorgegeven als een tekenreeks (dwz het instellen van de modus naar een niet-nulwaarde) enorm onbeveiligd is, tenzij u een niet-herhaalde sequentie gebruikt die ten minste als lang als het bericht dat moet worden gecodeerd. Ik heb op dit punt een levendig debat gehad met anderen, maar ik sta stevig door het idee dat het sleutelbeheer wordt achtergelaten als een oefening voor de gebruiker. Het doel van deze module is om één time-pad-codering te bieden, niet om belangrijk management voor hetzelfde te verschaffen, wat onbetwistbaar een aparte taak is. Net als bij elke coderingsmethode, als u het op een onveilige manier gebruikt, is het onbeveiligd. In elk geval is de beste praktijken om een kussen te gebruiken die een pseudo-willekeurige set gegevens bevat met een periode groter dan of gelijk aan de lengte van het te versleutelen bericht. Waarom "pseudo-willekeurig"? Gemakkelijk. Elke willekeurige nummergenerator (d.w.z. de RAND () -functie in PERL) die niet specifiek wordt vermeld om cryptografisch veilig te zijn, zal uiteindelijk zijn reeks willekeurige getallen herhalen. Als bijvoorbeeld uw willekeurige nummergenerator bijvoorbeeld begint met het herhalen van de reeks na, zeggen 100 nummers, berichten van minder dan 100 tekens vrij veilig. Gecodeerde berichten van meer dan 100 tekens zouden echter als zwak worden beschouwd, omdat ze worden gecodeerd met een pad die een herhalingssequentie weergeeft. Als u zich ongemakkelijk voelt met het doen van uw eigen sleutelbeheer, dan is dit waarschijnlijk niet de module voor u. Als u de juiste voorzorgsmaatregelen neemt met uw pad / sleutel, zal Crypt :: OTP u in goede plaats serveren. Gebruik deze module op eigen risico en gebruik de uiterste zorg met het beheer van uw sleutels. Vereisten: · Perl


CRYPT :: OTP Gerelateerde software