Re: 1 řádek v C...

Ladislav Vaiz spam na nagano.cz
Úterý Leden 23 10:30:02 CET 2018


Ne vždy je hlavním parametrem čitelný kód. Tohle vypadá buď na nějakou 
soutěž v obfuskaci ve snaze mít co nejkratší zdroják.
Nějaký popis je zde 
https://www.reddit.com/r/C_Programming/comments/4j0emw/can_someone_explain_this_c_code_and_possibly/
L.


Dne 23.01.2018 v 10:22 Josef Štengl napsal(a):
> Funkce g() vybírá to jednu hodnotu z pole "BY}6YB6%" nebo "Qj}6jQ6%" + 
> její modifikace základě jedné globální proměnné (i). výstup je 4 
> součty funkce g() o třech parametrech. Parametry fukce g() jsou 
> kombinace globální proměnné i a parametrů funkce main(n,s). A tady 
> jsem se ztratil :-). Na víc bohužel nemám čas. Výstup je obyčejný 
> znakový (no znakový .. prostě jsou to data).
>
> netuším, proč má funkce main() parametry, když se to volá bez 
> parametrů ... aha, jestli to dobře chápu, tak je to jen otravnej 
> způsob mít dvě lokální int proměnné (čti, dělá kód měně čitelným).
>
> No není to zrovna C99 kód. Sice dobrý, ale autor by se měl naučit psát 
> normální čitelný kód, jako by si něco kompenzoval :-D
>
> BTW: pulse audio mám.
>
> On 23.1.2018 09:52, balu wrote:
>> Mohli by ste niekto znaly, nam netusiacim, aspon trochu priblizit co 
>> to zhruba robi? :)
>>
>>
>>> On 23 Jan 2018, at 09:14, Václav Ovsík <vaclav.ovsik na gmail.com> wrote:
>>>
>>>> On Mon, Jan 22, 2018 at 10:08:25PM +0100, Pavel Troller wrote:
>>>> Zdravím,
>>>> tak toto mi dnes ukázal synátor:
>>>>
>>>> gcc -xc -oa 
>>>> -<<<'i;g(x,t,o){return(3&x&(i*((3&i>>16?"BY}6YB6%":"Qj}6jQ6%")[t%8]+51)>>o))<<4;}main(n,s){for(;;)putchar(g(1,n=++i>>14,12)+g(s=i>>17,n^i>>13,10)+g(s/3,n+(i>>11)%3,10)+g(s/5,8+n-(i>>10)%3,9));}';./a 
>>>> | aplay
>>>>
>>>> Resp. synátor měl jinou koncovku: ;./a | padsp tee /dev/audio 
>>>> >/dev/null
>>>>
>>>> Jenže já ve své distribuci nemám (ze zásadních důvodů) pulseaudio, 
>>>> tak hraji jednoduše přes Alsu.
>>>> Nebojte se, není to hack zneužívající Spectre, ikdyž ten kód to 
>>>> svou čitelností trochu připomíná :-).
>>>> Pokud to pustíte, nechte to chvíli běžet. Ze začátku je to trochu 
>>>> nudné, ale pak se to doslova
>>>> rozehraje :-). Čumím na to, jak může jeden řádek kódu produkovat 
>>>> takový docela poslouchatelný výstup :-).
>>>
>>> No ty kráso :-D. Tak to je bomba! Diky!
>>> BTW: taky nemam pulseaudio
>>> -- 
>>> Zito
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list





Další informace o konferenci Hw-list