====== Algoritmy ====== ====== Služby a dostupné implementace ====== ==== SSH ==== * Key Exchange * algoritmus, kterým si klient a server na začátku spojení bezpečně dohodnou společný klíč pro šifrování komunikace * náhrada Diffie-Hellman * hrozí harvest now, decrypt later - možnost dešifrování dat zpětně * **[[https://ntruprime.cr.yp.to/|SNTRUP]]** * [[https://www.rfc-editor.org/info/rfc9941/|RFC 9941]] * **[[https://csrc.nist.gov/pubs/fips/203/final|ML-KEM]]** * [[https://www.rfc-editor.org/info/rfc10042/|RFC 10042]] * [[https://mikrotik.com/download/changelogs?channelFilter=stable&versionFilter=7.24|RouterOS 7.24]] * Public Key Algorithms * algoritmus použitý pro klíče - zajištění autentizace a integrity, tj. ověření odesílatele a nezměněného obsahu zprávy * náhrada RSA, ECDSA * k prolomení vyžaduje kvantový počítač nyní * **[[https://csrc.nist.gov/pubs/fips/204/final|ML-DSA]]** * [[https://www.ietf.org/archive/id/draft-rpe-ssh-mldsa-03.html|draft-rpe-ssh-mldsa-03]] * ''mldsa-44'', ''mldsa-65'', ''mldsa-87'' * experimentální podpora v OpenSSH [[https://www.openssh.org/txt/release-10.4|10.4]], [[https://gitlab.com/secsh/pkixssh|PKIX-SSH]] * Fedora 45/Rawhide **Dostupnost jednotlivých algoritmů** ^ ^ ''sntrup761x25519-sha512'' | ''mlkem768x25519-sha256'' | ''mlkem768nistp256-sha256'' | ''mlkem1024nistp384-sha384'' | | | OpenSSH | [[https://www.openssh.org/txt/release-8.5|8.5]] | [[https://www.openssh.org/txt/release-9.9|9.9]] | [[https://www.openssh.org/txt/release-9.9|9.9]] | ✘ | | | Dropbear | [[https://github.com/mkj/dropbear/releases/tag/DROPBEAR_2025.87|2025.87]] | [[https://github.com/mkj/dropbear/releases/tag/DROPBEAR_2025.87|2025.87]] | ✘ | ✘ | | | RouterOS | ✘ | [[https://mikrotik.com/download/changelogs?channelFilter=stable&versionFilter=7.24|7.24]] | ✘ | ✘ | | **Verze OpenSSH v distribucích** ^ | 8.5 | 9.9 | | Ubuntu | [[https://packages.ubuntu.com/noble/openssh-server|24.04 LTS]] | [[https://packages.ubuntu.com/questing/openssh-server|25.10]] | | Debian | [[https://packages.debian.org/bookworm/openssh-server|12]] | [[https://packages.debian.org/trixie/openssh-server|13]] | | RHEL | [[https://bugzilla.redhat.com/show_bug.cgi?id=2070604|9.1]] | [[https://redhat.atlassian.net/browse/RHEL-151499|9.8]] | | Alpine | [[https://pkgs.alpinelinux.org/package/v3.16/main/x86_64/openssh|v3.16]] | [[https://pkgs.alpinelinux.org/package/v3.21/main/x86_64/openssh|v3.21]] | | OpenWrt | [[https://github.com/openwrt/packages/pull/20438|22.03.0]] | [[https://github.com/openwrt/packages/pull/25011|24.10]] | | FreeBSD | [[https://www.freebsd.org/releases/13.2R/relnotes/| 13.2]]/[[https://cgit.freebsd.org/src/commit/?id=676824f5cdf9|14.0]] | [[https://cgit.freebsd.org/src/commit/?id=31dcdee20afc|13.5]]/[[https://cgit.freebsd.org/src/commit/?id=059b786b7db5|14.3]] | Otestování klienta OpenSSH $ ssh -Q kex | grep -E 'sntrup|mlkem|mldsa' Otestování serveru OpenSSH # sshd -T | grep -i kexalgorithms Vygenerování klíče OpenSSH $ ssh-keygen -t mldsa44-ed25519 -f ~/.ssh/[key name] Nástroj pro otestování SSH obecně včetně enumerace podporovaných algoritmů $ ssh-audit [host]