Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL
… více »GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.
Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.
Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Potřebuji z bash skriptu provést dekódování souboru, abych z něj následně mohl vytáhnout nějaké údaje. Soubor je emailová zpráva, která v těle obsahuje část zakódovanou base64. Z práva jako taková mě nazajímá. Pro jistotu uvádím začátek oné části:
Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Cgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9u YWwvL0VOIj4KPGh0bWw+Cjxib2R5IGJnY29sb3I9IiNmZmZmZmYiIHRleHQ9IiMwMDAwMDAiPgoK ...
Moje pokusy s recode a hledání nebylo úspěšné (určitě hlavně proto, že je mi tato oblast naprosto neznámá), může někdo poradit nebo nasměrovat, kde a co hledat? Předem dík.
Na podobné věci používám perlovou utilitku mimedecode, která je ke stažení zde.
Dekóduje to všechny přílohy mailu a uloží do daného adresáře - tělo ignoruje. Jediná věc k řešení je, že zachovává jména příloh, tak to bude třeba v tom bashi nějak poladit
Z toho celého balíku je třeba jen ten jeden soubor mimedecode (a knihovny perlu na manipulaci s MIME, které jsou snad v každém distru - Debian je má v libmime-tools-perl)
Podívám se na to, ale ta zakódovaná část není příloha, ale vlastní tělo zprávy, bude to i zde použitelné?
No tak to nezabere... ale co třeba:
# reformime -x/tmp/ < mail.raw
Rozbalí všechny mime party (včetně těla atd.)... pak stačí chytit ten správnej... takhle na slepo je těžké radit přesněji...
nedaří se, použil jsem
base64 -di mail.txt ,
ale končí to vždy chybou (obdobně i při nepoužití -i)
base64: invalid input
a na obrazovku nebo do souboru se zapíše
..z{Sʗ.{...V...Z.ǭ
a `$ openssl enc -d -base64 -in myfile.b64 -out myfile.decrypt` zabere?
Podobné jako předchozí, celý zakódovaný soubor je v pořádku, ale skutečný soubor je z části nekódovaný a to je problém. Tentokrát to nekončí chybou, ale výsledek je nějaký rozsypaný čaj.
Beru zpět tu nefunkčnost, problém je s tím, že base64 je jen část dokumentu a ono to spadne na začátku na nekódované části. Pokud je v souboru jen ta zkódovaná část, tak to jde. Tím ale vznikl jiný, pro mě asi stejně komplikovaný zádrhel, že bych napřed musel nějak soubor vyčistit.
csplit vstupni_soubor %base64%+1
vznikne ti soubor xx00(jmeno mozno zmeni viz man csplit) kde je jenom base64 kodovana cast sed '1,3d' vstupni_soubor | base64 -d
kde cisla 1 a 3 urcuji rozsah radek ktere se maji z puvodniho souboru smazatTen soubor má standardní hlavičku emailu a v těle jsou dvě části zakodované (jednou pro html, jednou pro plain) , každá tato část má hlavičku o kódování (viz výše) a řetězec ukončující každou část. Nerad bych to zveřejňoval, protože se tam objevují kontakty, které právě potřebuji vytáhnout a uložit.
Poradil jsem si podobným způsobem jak radíš, z mejlu ořežu vše co je navíc a pak to jde, ale je to hnusné řešení, kterým se nemůžu pochlubit a musím spoléhat na to, že se struktura zprávy nezmění v důležitých bodech.
base64 -d
.
$ cat foo Cgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KPGh0bWw+Cjxib2R5IGJnY29sb3I9IiNmZmZmZmYiIHRleHQ9IiMwMDAwMDAiPgo $ base64 -d < foo <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <body bgcolor="#ffffff" text="#000000"> base64: invalid inputTen error ktery to vyhodilo je zpusobem tim, ze jsi nam poskytl jenom uryvek.. staci na konec doplnit "=" a uz to projde v pohode..
Ano stačí, ale jak bylo napsáno výš, musí být z toho souboru odstraněno vše, co není právě tím kódem.
Hledám řešení (pokud je), jak to dekódovat celé bez úprav souboru. Třeba i s tím, že nekódovaná část souboru bude nějak znetvořena, nezajímá mě.
Tiskni
Sdílej: