Vývojáři KDE ve spolupráci se společností Slimbook oznámili 16palcový notebook KDE Slimbook VI s předinstalovaným KDE Neon s Plasmou 6. Uvnitř se nachází procesor AMD Ryzen 7 8845HS s integrovanou grafickou kartou Radeon 780M.
Ve Würzburgu dnes začala konference vývojářů a uživatelů desktopového prostředí KDE Akademy 2024. Sledovat lze také online (YouTube, Mastodon, 𝕏, …)
Byla vydána nová major verze 14 svobodného systému pro řízení přístupu k síti (NAC) PacketFence (Wikipedie). Přehled novinek v oznámení o vydání. Pro uživatele předchozích verzí jsou k dispozici poznámky k aktualizaci.
Jak nahrávat zvuk z webového prohlížeče na Linuxu s PipeWire pomocí Nahrávání zvuku (Sound Recorder) a Helvum případně qpwgraph, článek na webu Libre Arts.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.9.
České bezpečnostní instituce, jmenovitě Vojenské zpravodajství (VZ) a Bezpečnostní informační služba (BIS), ve spolupráci s americkou Agenturou pro kybernetickou a infrastrukturní bezpečnost (CISA), Federálním úřadem pro vyšetřování (FBI), Národní bezpečností agenturou (NSA) a dalšími mezinárodními partnery ze Spojeného království, Austrálie, Kanady, Německa, Nizozemska, Estonska, Ukrajiny a Lotyšska vydaly upozornění (
… více »Byla vydána (𝕏) srpnová aktualizace aneb nová verze 1.93 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.93 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Společnost Laravel stojící za stejnojmenným open source PHP frameworkem získala investici 57 milionů dolarů od společnosti Accel. Především na Laravel Cloud.
Byla vydána verze 1.81.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Řešena je také zranitelnost CVE-2024-43402. Vyzkoušet Rust lze například na stránce Rust by Example.
Ahoj, chtěl jsem se zeptat, zda existuje možnost použít klíče vygenerované pomocí OpenSSL pro práci s OpenSSH. Konkrétněji, zda lze veřejný klíč z klasického formátu PEM/PKCS nějak převést do jednořádkové podoby, kterou lze dát do souboru authorized_keys
na serveru. Nebo to nejde, mám se na to vybodnout a prostě vytvořit nové klíče pomocí ssh-keygen
? Soukromý klíč v id_rsa
kupodivu v textovém formátu PEM může být a klient ho normálně přečte...
Aha, tak já si dnes vystačím sám. Netransformuje se veřejný klíč. Vypočte se znova ze soukromého klíče pomocí ssh-keygen
.
Nerozumím, odpovědi na otázku.
Soubor se soukromým klíčem obvykle obsahuje i veřejný klíč, protože když už znám soukromý klíč, tak znalost veřejného klíče nic nezkazí.
Avšak výpočet (nikoliv oddělení) veřejného klíče ze soukromého je nemožný.
Pokud se jedná o převod veřejného SSH klíče na klíč vhodný pro authorized_keys, tak tam se nic nepřevádí. Prostě se obsah id_rsa.pub přiřetězí k athorized_keys. Přesně tohle dělá ssh-copy-id.
Pokud si myslíte, že ssk-keygen -i
převádí PEM na OpenSSH formát, tak tomu tak není. Převádí RFC 4712 SSH2 formát na OpenSSH formát. PEM a SSH2 se liší.
Nerozumím, odpovědi na otázku.
Já taky ne. Podstatné je, že mi to už funguje.
Soubor se soukromým klíčem obvykle obsahuje i veřejný klíč, protože když už znám soukromý klíč, tak znalost veřejného klíče nic nezkazí.
Nevím, je to možné. Nicméně soubor, který jsem použil, obsahoval pouze jeden blok s klíčem. Zda tam je někde ukrytý i veřejný klíč, to netuším. Možné to je.
-----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,30DECD56B5DEE229 ... -----END RSA PRIVATE KEY-----
Avšak výpočet (nikoliv oddělení) veřejného klíče ze soukromého je nemožný.
Obecně asymetrický šifrovací algoritmus musí splňovat pouze podmínku, že z veřejného klíče je nepřekonatelně obtížné odvodit soukromý. Převoditelnost opačným směrem není nijak na závadu, pokud vím.
Už si nepamatuju, jak je to konkrétně v algoritmu RSA. Ze školy si nějak matně vzpomínám, že ani tím druhým směrem se to nedá odvodit, ale jistý si tím už nejsem. Nemám v úmyslu řešit otázku, jestli (a) soubor se soukromým klíčem má někde v sobě ukrytý veřejný klíč, nebo (b) lze odvodit veřejný klíč ze soukromého, nebo (c) je v tom jiný trik. Prostě mi to funguje s původním soukromým klíčem na straně klienta a s tím vygenerovaným SSH klíčem na straně serveru.
Pokud se jedná o převod veřejného SSH klíče na klíč vhodný pro authorized_keys, tak tam se nic nepřevádí. Prostě se obsah id_rsa.pub přiřetězí k athorized_keys. Přesně tohle dělá ssh-copy-id.
V tomto případě se samozřejmě nejedná o převod SSH klíče na klíč pro authorized_keys
. (Tam samozřejmě není třeba nic převádět.) Zde se jedná o převod PEM klíče vygenerovaného pomocí OpenSSL na SSH klíč.
Pokud si myslíte, že ssk-keygen -i
převádí PEM na OpenSSH formát, tak tomu tak není. Převádí RFC 4712 SSH2 formát na OpenSSH formát. PEM a SSH2 se liší.
Vůbec není podstatné, co si o tom myslím. (Kromě toho, o optionu -i
tu řeč nebyla...) Podstatné je, že
ssh-keygen -y -f můj_soubor_se_soukromým_PEM_klíčem >> ~/.ssh/authorized_keys
na straně serveru mi zprovonzil autentifikaci pomocí certifikátu založenou na mém PEM klíči. Už nezadávám heslo uživatele na cílovém stroji, ale pouze heslo k tomu soukromému klíči. Nemám v úmyslu pátrat po tom, proč to funguje.
Nedá. Pojemy "soukromý" a "veřejný" klíč jsou jen věcí definice, je v podstatě jedno, který klíč použijete jako veřejný a který jako soukromý. Platí, že to, co zašifrujete pomocí jednoho klíče, dešifrujete pomocí druhého a naopak. -m.Už si nepamatuju, jak je to konkrétně v algoritmu RSA. Ze školy si nějak matně vzpomínám, že ani tím druhým směrem se to nedá odvodit, ale jistý si tím už nejsem.
Obecně asymetrický šifrovací algoritmus musí splňovat pouze podmínku, že z veřejného klíče je nepřekonatelně obtížné odvodit soukromý. Převoditelnost opačným směrem není nijak na závadu, pokud vím.Veřejný klíč je ze soukromého odvozen. Princip asymetrické kryptografie je v tom, že mezi dvěma klíči je pouze jednosměrný vztah. Pokud by tam ten vztah nebyl žádný, těžko ty klíče "dohromady" (použití jednoho a následně druhého) mohou vést k něčemu rozumnému.
oba klíče (soukromý a veřejný) jsou odvozené ze stejného základu (tím vznikne ta vazba), ale ten základ pak není součástí soukromého klíče, ale zahodí se
AFAIK znalost soukromého klíč (zhruba) odpovídá znalosti dvou velkých prvočísel, zatímco znalost veřejného klíče (opět zhruba) odpovídá znalosti součinu těch prvočísel (s tím, že soukromý klíč by šlo teoreticky získat faktorizací toho součinu, prakticky by ta faktorizace měla u velkých prvočísel trvat velmi dlouhou dobu). Pokud by se ten "stejný základ" zahazoval, tak těžko vysvětlíte tohle:
[user@machine ~]$ openssl version OpenSSL 0.9.8g 19 Oct 2007 [user@machine ~]$ cat > text.txt blabla [user@machine ~]$ openssl genrsa -out mykey_rsa Generating RSA private key, 512 bit long modulus ...++++++++++++ ......++++++++++++ e is 65537 (0x10001) [user@machine ~]$ cat mykey_rsa -----BEGIN RSA PRIVATE KEY----- MIIBOgIBAAJBAM/vbCYhM1m9MMaRXtFHNYkjxQSnBON1e6Ze9LK0biskxaPxxVz0 Lp4IsQW7RfBZQbe4Ly6M/mKaEIHWHp7qo70CAwEAAQJAQAok7Llc705tLzqmUR31 Rv9VNlGaF9Oe+WZVRpR7OZ3TbnSvJF+7RtvBBMgs1bMLiweNs3S73n3u/KZoSexv AQIhAO6q8CRWsLRL/KN3ykzYF2B2TIT4EHjeLLeMJg63m6LVAiEA3wkjWKpZZiWD /Og7Odt6/WLdgETdIFB0E4YbjdG84UkCIF52c7O+SBQkWysMF5rQkHgSenjKgiKE tSg0pT9/9m69AiEAk8DiAaMYhmrj/W97jOCxoZsVUhxMwVOLEkQNjO4dSsECID83 5XcKRsW4wTDq519HeVWL6O/96poU+x6LazkiSsCl -----END RSA PRIVATE KEY----- [user@machine ~]$ openssl rsa -in mykey_rsa -out mykey_rsa.pub -pubout writing RSA key [user@machine ~]$ cat mykey_rsa.pub -----BEGIN PUBLIC KEY----- MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAM/vbCYhM1m9MMaRXtFHNYkjxQSnBON1 e6Ze9LK0biskxaPxxVz0Lp4IsQW7RfBZQbe4Ly6M/mKaEIHWHp7qo70CAwEAAQ== -----END PUBLIC KEY----- [user@machine ~]$ openssl rsautl -encrypt -inkey mykey_rsa.pub -in text.txt -out text.asc -pubin [user@machine ~]$ cat text.asc _o���헔g���|%Ľ�:��8L�j��'����n)�x�Z�a?��??���z[�?N�Z�nf-�b5?[user@machine ~]$ [user@machine ~]$ hexdump text.asc 0000000 6f5f adb9 ed80 9497 f767 8997 257c bdc4 0000010 3aa3 8bbe 4c38 6a8c e5b9 ea27 c8c8 6ecd 0000020 ef29 6878 dd08 f45a 1d61 ebc0 1012 e7d7 0000030 7aec ff5b 4e16 5aed 6ea2 2d66 62e8 0135 0000040 [user@machine ~]$ openssl rsautl -decrypt -inkey mykey_rsa -in text.asc blabla
Tiskni Sdílej: