abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 4
    včera 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 3
    včera 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    21.5. 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    21.5. 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1685 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Bash base64

    pepe_ avatar 27.2.2011 11:15 pepe_ | skóre: 48
    Bash base64
    Přečteno: 493×

    Zdravim , potřebuji do bash scriptu poslat uživatelské jméno a heslo a bash script by měl vyhodit zakódovaně.

    Nejde mi ale předat proměnné viz :

    pepe@PC-Pepe:~$ a="aaa" ; b="bbb" ; perl -MMIME::Base64 -e 'print  encode_base64("\0$a\0$b");'
    AAA=
    pepe@PC-Pepe:~$ perl -MMIME::Base64 -e 'print  encode_base64("\0aaa\0bbb");'
    AGFhYQBiYmI=
    

    A přes openssl sice mi to proměnné pošle ale výsledek je nesprávný

     

    pepe@PC-Pepe:~$ echo "\0aaa\0bbb" | openssl enc -base64
    XDBhYWFcMGJiYgo=
    
    pepe@PC-Pepe:~$ a="aaa" ; b="bbb" ; echo "\0$a\0$b" | openssl enc -base64
    XDBhYWFcMGJiYgo=


    Správně má být "AGFhYQBiYmI="

    Poradíte ?

    Přes perl mi to jde ale nedokážu tam dodat proměnné , přes openssl mi to nejde vůbec.


    Řešení dotazu:


    Odpovědi

    27.2.2011 11:22 RobS | skóre: 12
    Rozbalit Rozbalit vše Re: Bash base64
    pozor na to, co vubec sifrujes. V tech dvou pripadech jsou to opravdu dva ruzne vstupy :)
    zkus
    echo -e "\0aaa\0bbb" | openssl enc -base64

    pepe_ avatar 27.2.2011 11:26 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Bash base64
    pepe@PC-Pepe:~/Programovani$ echo -e "\0aaa\0bbb"|openssl enc -base64
    AGFhYQBiYmIK
    pepe@PC-Pepe:~/Programovani$ perl -MMIME::Base64 -e 'print  encode_base64("\0aaa\0bbb");'
    AGFhYQBiYmI=
    
    Proč se tedy výstup také liší ?
    27.2.2011 11:32 RobS | skóre: 12
    Rozbalit Rozbalit vše Re: Bash base64
    sorry, nevyzkousel jsem si to..

    k parametru -e (interpretace escape znaku) pridej jeste -n (neodentrovat novy radek).
    pak by to uz melo sedet.

    echo -ne "\0aa\0bb.....
    pepe_ avatar 27.2.2011 11:45 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Bash base64

    Takto to funguje , za to děkuji ! Stále ale nevím jak poslat proměnné perlu

    $user="aaa"
    $passwd="bbb"
    auth=`perl -MMIME::Base64 -e 'print  encode_base64("\0$user\0$passwd");'`
    echo $auth
    
    27.2.2011 13:00 chrono
    Rozbalit Rozbalit vše Re: Bash base64
    Pri tých priradeniach do user a passwd nemá byť ten znak $.
    27.2.2011 15:05 RobS | skóre: 12
    Rozbalit Rozbalit vše Re: Bash base64
    Za prvé, přečti si něco o programování v bashi; aspoň pár prvních kapitol. Takhle se prostě proměnné neinicializují.

    Dále, pokud používáš apostrofy, tak uvnitř nich adresace nefunguje. Ta funguje u normálních uvozovek. Takže:

    auth=`perl -e "print encode_base64(\"\0$user\0$passwd");"`

    Taky muzes pouzit perl, aby sam precetl tu promenne z prostredi ($ENV), pak bys je ale musel exportovat.
    27.2.2011 15:08 RobS | skóre: 12
    Rozbalit Rozbalit vše Re: Bash base64
    teda...
    auth=`perl -MMIME::Base64 -e "print encode_base64(\"\0$user\0$passwd\");"`
    uz jsem taky z toho taky zmaten :)
    pepe_ avatar 27.2.2011 15:49 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Bash base64

    Jo děkuju , to je to co jsem chtěl vědět. Toto je řešení.

    stativ avatar 27.2.2011 15:22 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Bash base64
    Možná mám trochu blbou otázku, ale proč nepoužiješ místo perlu base64 z coreutils? Perl mi přijde pro daný účel kanón na vrabce.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    pepe_ avatar 27.2.2011 15:51 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Bash base64

    Nejde jen o base64 , mám s tím problém často a pořád nechápu jak se to má vlastně správně dělat.

    pepe_ avatar 27.2.2011 16:15 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Bash base64

    No a zde je to co jsem patlal :

     

    #!/bin/bash
    from="odesilatel@seznam.cz"
    to="prijemce@seznam.cz"
    domain="192.168.100.1"
    mailserver="smtp.seznam.cz"
    subject="Nazev zpravy"
    mailtext="Text e-mailu\r\n\r\nDalsi radek emailu.\r\n"
    user="jmeno-seznam-uctu"
    passwd="heslo-seznam-uctu"
    #auth=`perl -MMIME::Base64 -e "print encode_base64(\"\0$user\0$passwd\");"`
    auth=`echo -ne "\0$user\0$passwd" | openssl enc -base64`
    exec 9<>/dev/tcp/$mailserver/25
    read -r temp <&9
    echo "$temp"
    echo -en "EHLO $domain\r\n" >&9
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo "$temp"
    read -r temp <&9
    echo -en "AUTH PLAIN $auth\r\n" >&9
    read -r temp <&9
    echo "$temp"
    echo -en "MAIL FROM: <$from>\r\n" >&9
    read -r temp <&9
    echo "$temp"
    echo -en "RCPT TO: <$to>\r\n" >&9
    read -r temp <&9
    echo "$temp"
    echo -en "DATA\r\n" >&9
    read -r temp <&9
    echo "$temp"
    echo -en "Subject: $subject\r\n" >&9
    echo -en "From: $from\r\n" >&9
    echo -en "To: $to\r\n" >&9
    echo -en "Return-Path : <$from>\r\n" >&9
    echo -en "X-Mailer: Bash-Email 1.0\r\n" >&9
    echo -en "\r\n" >&9
    echo -en "$mailtext\r\n" >&9
    echo -en ".\r\n" >&9
    read -r temp <&9
    echo "$temp"
    echo -en "QUIT\r\n" >&9
    read -r temp <&9
    echo "$temp"
    9>&-
    9<&-
    exit 0
    
    
    
    27.2.2011 18:11 NN
    Rozbalit Rozbalit vše Re: Bash base64
    Take je mozne pouzit prikazy:
    uuencode
    uudecode
    
    NN

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.