• Wunderte mich schon, wer hier "Mattthias" rauskramt :P
    Ich finds echt lustig, das sieht tatsächlich danach aus :D - Schön :)

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Andy: Cool

    Ich hab mal ein bisschen rumgespielt, sieht sehr witzig aus :D

    Spoiler anzeigen


    [Blockierte Grafik: http://www.host-it.tk/uploads/502fdaa0bd238-15.PNG]

    [autoit]


    $user32 = DllOpen("user32.dll")
    $gdi32 = DllOpen("gdi32.dll")
    $w = 640
    $h = 480

    [/autoit] [autoit][/autoit] [autoit]

    Global $pi = 4 * ATan(1)

    [/autoit] [autoit][/autoit] [autoit]

    $hgui = GUICreate("Bandit", $w, $h)
    GUISetBkColor(0x000000)
    $hdc_gui = getdc($hgui)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $radian = ATan(1) / 45
    $radius = 171
    $col = 0xFF00FF;0xFF00FF0F
    For $deg1 = 360 To 180 Step -1

    [/autoit] [autoit][/autoit] [autoit]

    $c1 = Cos($deg1 * $radian)
    $s1 = Sin($deg1 * $radian)

    [/autoit] [autoit][/autoit] [autoit]

    $c1 *= ($c1 ^ 2)
    ;$s1 /= ($s1 * 2)

    [/autoit] [autoit][/autoit] [autoit]

    $x1 = $radius * $c1
    $y1 = $radius * $s1

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 5 - 50, $h / 2 + $y1 / 10, $col);auge
    pix($hdc_gui, $w / 2 + $x1 / 5 + 50, $h / 2 + $y1 / 10, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 15 - 45, $h / 2 + $y1 / 15 + 5, $col);pupille
    pix($hdc_gui, $w / 2 + $x1 / 15 + 45, $h / 2 + $y1 / 15 + 5, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 20 - 45, $h / 2 + $y1 / 20 + 5, $col);pupille2
    pix($hdc_gui, $w / 2 + $x1 / 20 + 45, $h / 2 + $y1 / 20 + 5, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 1.4, $h / 2 + $s1*$y1 / 2 + 100, $col);mund
    pix($hdc_gui, $w / 2 + $x1 / 1.2, $h / 2 + $s1*$y1 / 2 + 90, $col);mund

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $deg2 = 360 To 180 Step -2

    [/autoit] [autoit][/autoit] [autoit]

    $c2 = Cos($deg2 * $radian)
    $s2 = Sin($deg2 * $radian)

    [/autoit] [autoit][/autoit] [autoit]

    $x2 = $radius * $c2 * $c2 * Cos(Cos($deg2 * $s1 * $c2 * $radian) * $c1) * $c2 * $c2 / $c1 * $s1 * Cos($deg2 * $radian * $c1)
    $y2 = $radius * $s2 * $s2 * Sin(Cos($deg2 * $c1 * $s2 * $radian) * $s1) * $s2 * $s2 / $s1 * $s1 * Sin($deg2 * $radian * $s1)
    ; $col = Int($c2 * $x2 * $deg2 ^ 2 + $s2 * $y2 * $deg2 ^ 2)
    ;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $col = ' & $col & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console
    pix($hdc_gui, $w / 2 + $x1 + $x2, $h / 2 + $y1 + $y2, $col)
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    For $deg1 = 360 To 180 Step -1

    [/autoit] [autoit][/autoit] [autoit]

    $c1 = Cos($deg1 * $radian)
    $s1 = Sin($deg1 * $radian)

    [/autoit] [autoit][/autoit] [autoit]

    ;$c1 *= ($c1 ^ 2)
    $s1 /= ($s1 * 2)

    [/autoit] [autoit][/autoit] [autoit]

    $x1 = $radius * $c1
    $y1 = $radius * $s1

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 5 - 50, $h / 2 + $y1 / 10, $col);auge
    pix($hdc_gui, $w / 2 + $x1 / 5 + 50, $h / 2 + $y1 / 10, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 15 - 45, $h / 2 + $y1 / 15 + 5, $col);pupille
    pix($hdc_gui, $w / 2 + $x1 / 15 + 45, $h / 2 + $y1 / 15 + 5, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 20 - 45, $h / 2 + $y1 / 20 + 5, $col);pupille2
    pix($hdc_gui, $w / 2 + $x1 / 20 + 45, $h / 2 + $y1 / 20 + 5, $col)

    [/autoit] [autoit][/autoit] [autoit]

    pix($hdc_gui, $w / 2 + $x1 / 1.4, $h / 2 + $s1*$y1 / 2 + 100, $col);mund
    pix($hdc_gui, $w / 2 + $x1 / 1.2, $h / 2 + $s1*$y1 / 2 + 90, $col);mund

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $deg2 = 360 To 180 Step -2

    [/autoit] [autoit][/autoit] [autoit]

    $c2 = Cos($deg2 * $radian)
    $s2 = Sin($deg2 * $radian)

    [/autoit] [autoit][/autoit] [autoit]

    $x2 = $radius * $c2 * $c2 * Cos(Cos($deg2 * $s1 * $c2 * $radian) * $c1) * $c2 * $c2 / $c1 * $s1 * Cos($deg2 * $radian * $c1)
    $y2 = $radius * $s2 * $s2 * Sin(Cos($deg2 * $c1 * $s2 * $radian) * $s1) * $s2 * $s2 / $s1 * $s1 * Sin($deg2 * $radian * $s1)
    ; $col = Int($c2 * $x2 * $deg2 ^ 2 + $s2 * $y2 * $deg2 ^ 2)
    ;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $col = ' & $col & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console
    pix($hdc_gui, $w / 2 + $x1 + $x2, $h / 2 + $y1 + $y2, $col)
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While GUIGetMsg() <> -3
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func atan2($y, $x)
    Return (2 * ATan($y / ($x + Sqrt($x * $x + $y * $y))))
    EndFunc ;==>atan2

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func pix($dc, $x, $y, $color) ;pixel mit farbe an koordinaten setzen
    DllCall($gdi32, "long", "SetPixel", "long", $dc, "long", $x, "long", $y, "long", $color)
    EndFunc ;==>pix

    [/autoit] [autoit][/autoit] [autoit]

    Func GetDC($handle)
    $dc = DllCall($user32, "int", "GetDC", "hwnd", $handle)
    Return $dc[0]
    EndFunc ;==>GetDC

    [/autoit]

    Sieht ein bisschen nach Hundeschnauze mit Hut aus :rofl:

  • ach der Film ist noch gar nix

    schonmal jemand 4,5 Petabyte in 42 Kilobyte gesehen?
    beim entpacken einer 42 KB großen ZIP Datei wächst das Datenvolumen um das Hundertmilliardenfache
    1 PB = 1024 TB
    1 TB = 1024 GB
    für die, die es nicht wissen^^

    hier bei Wikipedia nach zu lesen: http://de.wikipedia.org/wiki/Archivbombe
    unten bei wikipedia ist auch ein Link zu einer seite wo man das downloaden kann

    ist einfach nur eine 4,3GB große DLL datei die nur Nullen enthält die wurde sehr oft mit maximaler stärke gepackt und dann ganz oft in den zip gepackt
    der Sinn der Datei ist es einen Denial of Service auszulösen
    bsp. schickt man die Datei jemanden per Email (oder dateianhang) guckt der Emailprovider in die Datei mit nem Antiviren programm, tia 4,5PB scannen... der RAM ist weg server verreckt xD
    und würde man es wirklich entpacken (der Apple Safarie browser entpackt automatisch!!!!) würde man schnell kein speicher mehr haben :)

    der Download muss deswegen sogar mit nem Passwort versehen sein (also die ZIP) weil Internet provider auch mal gerne den traffic scannen
    und stellt euch mal vor ihr downloadet das euer provider guckt rein und seine Server sagen adee ;)
    die nachtbarn freuen sich

    ich hoffe ich hab jetzt keine cyber terroristen mit den infos ausgebildet xD
    ich pflege den grundsatz "den guten zeigen wie die bösen arbeiten, damit die sich schützen können, weil die bösen wissen eh schon wie das geht" :)

    mfg :D

    PS: jedes halbwegsgute Antivirenprogramm muss die ZIP als Virus erkennen durch den HASH wert ;)

  • Naja, das ganze in 42k sollte jetzt nicht so schwer sein ...
    Einfach ne For schleife zum schreiben ?

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • ja in ner kleinen .exe das zu machen wär viel zu billig

    aber eine ZIP Datei die ihr Volume beim entpacken um das Hundertmilliardenfache vergrößert ist schon hamma geil xD
    obwohl das auch nicht schwer ist

    es muss sich ja nur merken "in der datei X sind X Nullen drinn"
    aber die DLL wurde sicher mit ner For schleife erstellt :)

  • Naja,
    den "geistigen Erguss", eine Handvoll Nullen so zu Packen, dass beim Entpacken einige Handvoll mehr Nullen da sind, kommentiere ich mal nicht.
    Dafür aber 42 kB zu verbrauchen bewerte ich gelinde gesagt als absolutes programmiertechnisches Armutszeugnis!

    Wer einen Sudoku-solver in 62 Bytes packt, der erledigt "ich schreib den Speicher/Platte voll mit Nullen" mit einer Handvoll Bytes.
    Btw. reicht dafür ein einziger API-Call. "Können" ist dafür definitiv keins erforderlich.
    Daher treffen sich Leute, die es drauf haben, z.B. bei internationalen Events wie diesem in Saarbrücken, dort kann man nur noch staunen, was man mit entsprechendem knowHow alles auf einen Monitor bzw. aus dem Lautsprecher bekommt. Auf der letzten Breakpoint in Bingen war ich mit UEZ zusammen, DA wurde gezeigt, wo bei Grafiken der Hammer hängt...
    Bei solchen Partys findet man auch keine Scriptkiddies^^....wie gesagt, C&P gepaart mit Halbwissen und sozialer Unintelligenz reicht definiv nicht aus, um einen Hund hinter dem Ofen hervorzulocken.

  • Die Hohe Kunst ist es aus Wenig viel zu machen.
    z.B. aus 64KB einen Film incl Ton der zusammen (unkomprimiert (Bitmaps) bei einer handelsüblichen Auflösung) bestimmt über 1GB hat.
    aus 42KB 4,5*10^15 Nullen zu zaubern geht dagegen relativ einfach.

    Was ich mich immer frage ist, wie wohl der Interpreter aufgebaut ist. (Irgendwas muss die kompakten Bildinformationen ja generieren und auf den Schirm bringen).
    Ich bastele z.B. (wieder mal) an einem Skript für Vektorgrafiken. Damit können komplexe Bilder in wenigen hundert Bytes gespeichert werden. Der Interpreter allein hat aber schon fast 64KB :pinch:

  • @Krabat Ich bin auch der Meinung, dass das einerseits nichts mit diesem Thema zu tun hat und andererseits keinerlei Intelligenz, Talent oder ähnliches erfordert. Auserdem bist du mit dieser Info etwas spät dran, da Archivbomben heutzutage nur noch in wenigen Fällen funktionieren, weil sich die Erkennungsmethoden in den letzten Jahrzehnten eben so stark verbessert haben.

    @Topic Mehr als "Wow! :thumbup: " fällt mir momentan zu dem Thema nicht ein... :D

    MfG, James


  • Prozedurale Programmierung bezeichnet einfach nur das Prinzip Teilprobleme in Funktionen (auch "Prozeduren" genannt) auszulagern und eigenständig benutzbar zu machen.
    Also nichts weiter was wir in AutoIt nicht auch schon die ganze Zeit machen.


    Gemeint war denke ich Prozedurale Generierung.
    Edit: Link angepasst.

  • UEZ,
    bin zzt im Urlaub, jetzt glücklicherweise mit UMTS-Verbindung^^.
    Hatte in dieser Woche zufällig ein Gespräch mit einem "Programmierer" abends in einer Hotelbar, da liefen auf einem Monitor irgendwelche Videos. Er meinte, was alles an Rechenpower und Knowhow nötig wären um die Grafiken zu erstellen, und ich hab nur beiläufig gesagt, ein "ordentlicher" Programmierer packt das in eine Handvoll Codebytes 8o
    Sein Kumpel fühlte sich gleich angepisst und fing an zu labern, da bin ich ins Hotelzimmer geflitzt und hab den Laptop geholt und denen die von dir verlinkte Site gezeigt.
    Die wollten sich dann die Videos auf Youtube angucken, aber bei GPRS funzt das ja nicht, also hab ich die 4K-files einfach downgeloadet...hat bissl gedauert, jetzt haben die gedacht, die 4k-Files wären ein Download-Programm für die komprimierten Grafiken, ich hab dermasssen lachen müssen^^
    Jedenfalls waren die zwei total begeistert und es sind etliche Biers getrunken worden. Bestimmt haben die den Rest der Nacht Demos geladen. :rofl:
    Am nächsten Morgen beim Frühstück haben wir ausgemacht, uns nächstes Ostern in Saarbrücken zu treffen :D

  • Ich glaube, dach mache ich wieder mit! Scheiß auf die Entferung!

    Hauptsache AAAAAAAMMMMMMMMMIIIIIIIIIIIGGGGGGAAAAAAAAAAA! :thumbup:

    :rock:
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Zitat von UEZ

    Ich glaube, dach mache ich wieder mit! Scheiß auf die Entferung!

    Gut, abgemacht, ich hol dich dann ab, ob man 500km fährt oder 600 ist für mich egal :thumbup:
    Mal sehen, vielleicht bekommen wir ne Übernachtung hin, dass es sich lohnt, und können den einen oder anderen AutoIt-ler aktivieren^^

  • Gut, abgemacht, ich hol dich dann ab, ob man 500km fährt oder 600 ist für mich egal :thumbup:
    Mal sehen, vielleicht bekommen wir ne Übernachtung hin, dass es sich lohnt, und können den einen oder anderen AutoIt-ler aktivieren^^

    Abgemacht! :thumbup:

    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Mein Angebot steht, 2-3 Leute auf dem Weg dahin "einzusammeln".
    2 Tage sollte man aber mindestens einplanen...

  • Wann isn das ?
    Wenns erst wieder 2013 ist komm ich selbst angefahren, auf ner 125er, kann dann ggf (sofern ruhig und nicht zappelig) einen aufm Rücksitz mitnehmen, zwischen Berlin <> Saarbrücken is bestimmt wer da.
    €: Wenns schon 2012 wieder is, Andy, Lust nach Berlin zu kommen ? XD

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Lass mal stecken, Ostern auf ner 125er braucht kein Mensch...kannst zu mir kommen, biste ca. in 2h, und dann kannste auf dem weiteren Weg wieder auftauen :rofl: