Hier kannst du Texte mit gängigen Verfahren kodieren oder in Klartext umwandeln.
Für Konvertierung von japanischen Rōmaji, Hiragana und Katakana siehe TextEncoder Japanisch.
Die JavaScript Implementierungen der verschiedenen Algorithmen im TextEncoder stammen von phpjs.org.
MIME::Base64 ist ein Core Modul jeder Perl Installation.
use MIME::Base64; $encoded = encode_base64('text'); # => TW909nJoZWFk $decoded = decode_base64($encoded);
Die Funktion ord() wandelt ein Zeichen in die entsprechende ASCII/Unicode Zahl um. Mit sprintf() kann diese leicht in Hexadezimal umgewandelt werden.
Für die Dekodierung müssen die Werte mit hex() in eine Zahl und anschließend mit chr() in ein Zeichen umgewandelt werden.
$text = 'Motörhead'; $encoded = ($text =~ s/(.)/sprintf("%X",ord($1))/eg); # => 4D6F74F67268656164 $decoded = ($encoded =~ s/([a-fA-F0-9][a-fA-F0-9])/chr(hex($1))/eg);
Das Modul HTML::Entities gibt es auf CPAN.
use HTML::Entities; $encoded = encode_entities('Motörhead'); # => Motörhead $decoded = decode_entities($encoded);
Mit URI::Escape können URL Parameter kodiert werden. Um eine ganze URL in application/x-www-form-urlencoded Format zu kodieren, sollte URL::Encode verwendet werden.
use URI::Escape; $encoded = uri_escape('Motörhead'); # => Mot%C3%B6rhead $decoded = uri_unescape($encoded);
use URL::Encode; $encoded = url_encode('http://www.perlmania.de/?query=Motörhead'); $decoded = url_decode($encoded);
Das Modul Convert::UU gibt es auf CPAN.
use Convert::UU; $encoded = uuencode('Motörhead'); # => )36]T]G)H96%D` $decoded = uudecode($encoded);
Das Modul MIME::QuotedPrint::Perl gibt es auf CPAN.
use MIME::QuotedPrint::Perl; $encoded = encode_qp('Motörhead'); # => Mot=F6rhead $decoded = decode_qp($encoded);
Die simple ROT13 (Caesar) Verschlüsselung lässt sich in Perl auf unterschiedliche Weise implementieren. Eines der kürzesten Skripte dafür ist folgendes:
#!perl -p y/N-ZA-z/A-za-m/
Oder über die Kommandozeile:
perl -pe 'tr/A-Za-z/N-ZA-Mn-za-m/' < input_file > output_file