Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: WebStyleBoard. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

1

Freitag, 12. Januar 2007, 12:14

Bekannten japh erweitert

Liebe Leute,

hier mal etwas Stoff für interessierte Perl-Programmierer, weil ich weiß, dass es denen Spaß macht, sich durch obfuszierte Programme zu wühlen. Alle engagierten Perl-Programmierer kennen diesen berühmten japh, der es sogar als Beispiel auf die entsprechende Wikipedia-Seite geschafft hat:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
not exp log srand xor s qq qx xor
s x x length uc ord and print chr
ord for qw q join use sub tied qx
xor eval xor print qq q q xor int
eval lc q m cos and print chr ord
for qw y abs ne open tied hex exp
ref y m xor scalar srand print qq
q q xor int eval lc qq y sqrt cos
and print chr ord for qw x printf
each return local x y or print qq
s s and eval q s undef or oct xor
time xor ref print chr int ord lc
foreach qw y hex alarm chdir kill
exec return y s gt sin sort split

Aus einigen Gründen ist er mir aber nicht toll genug. Unter anderem fehlen zwei Versalien, ein Satzzeichen und ein Umbruch. Also habe ich ihn erweitert:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
not srand xor s qq qx xor s x x length uc
ord and print uc chr ord for qw q join qx
xor eval xor lc eval qq x abs cos ord and
print chr ord for qw q use substr tied qx
xor print qq q q xor int eval lc qq m cos
and print chr ord for qw y abs ne or tied
hex exp ref y m xor scalar srand print qq
q q xor sin abs eval q x log srand ord or
printf uc chr ord foreach qw q package qx
xor sqrt eval lc qq y sqrt cos and printf
chr ord for qw x each return local x y or
print qq s s and uc exp eval q s undef or
oct xor time xor ref print chr int ord lc
for qw y hex alarm chdir kill exec return
y s xor log exp eval q x print chr length
join qw y length for map substr chr shift
y x or sqrt abs ord lc and eval print q q
q and s q q lcfirst chr eval log shift qx

Wer sich mal daran versuchen will, es ist viel leichter als es aussieht. Die meisten japhs die ich kenne, sind viel schwieriger. Einige weitere japhs von mir findet Ihr unten auf meiner Homepage, wie zum Beispiel dieser hier:

Quellcode

1
2
3
4
$_=sub{qq q$_[0]${[ \qw n ker h er he \no us n ]}[$c++]$_[1]q};BEGIN{$_=q$\$_=
join & _\__ => & us\ub u => &w/|\$-=y;@ <2?y:\$-->(y, (\$-,@ ))\//$ and s y\yy
join qw, if ,, sh, tyeg&&y |\|&/|{q}|&& eval && eval } die _$_ => qq j\u\jj=>q
at \aa=> qw utu=> qq r\r \upr=> q ol o=> qw ca\cc=> qq ;,\n;; # [EMAIL]mail@memowe.de[/EMAIL]

Bei Unklarheiten stehe ich gerne zur Verfügung.

Schöne Grüße
Mirko :)

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »memowe« (12. Januar 2007, 15:21)