Fugleramme, v překladu 'ptačí rámeček', je open-source projekt postavený na Raspberry Pi, který pomocí lokální umělé inteligence BirdNET-Go rozpoznává ptačí druhy podle jejich zpěvu a na displeji následně zobrazuje koláž tvořenou odpovídajícími ilustracemi. Databáze obsahuje přes 800 ručně vybraných historických přírodovědných ilustrací více než 400 druhů ptáků.
… více »Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 18.0. Přidáno bylo 13 007 nových znaků. Celkově jich je 172 808. Přibylo 9 nových Emoji.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 169 (pdf).
Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
Německý kancléř Friedrich Merz (CDU) se během debaty s finalisty studentské vědecké soutěže Jugend forscht vyjádřil pro konec anonymity na internetu a vyslovil názor, že pro uživatele Internetu by měla platit podobná právní odpovědnost jako pro novináře tradičních médií. Na dotaz studenta, jak by se tedy povinnost uvádět pravé jméno slučovala s prací investigativních novinářů nebo ochranou jejich zdrojů, Merz neodpověděl, ve své
… více »Společnost Fujitsu představila FUJITSU-MONAKA CPU a Fujitsu MONAKA Server. Navrženo, vyvinuto a vyrobeno v Japonsku. Pro suverénní AI infrastrukturu.
Předprodej v květnu představených notebooků Googlebook, nástupců notebooků Chromebook, bude spuštěn v pondělí 21. září.
Byla vydána betaverze Fedora Linuxu 45 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 20. října. S konzolí kmscon místo fbcon. Současně byla vydána betaverze Fedora Linux Asahi Remixu 45. S podporou čipů M3.
Po půl roce vývoje od vydání verze 50 bylo vydáno GNOME 51 s kódovým názvem "A Coruña" (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Videopředstavení na PeerTube a YouTube.
OpenAI spolupracuje s konkurenty Anthropic a Google DeepMind ze skupiny Alphabet na bezpečnosti umělé inteligence (AI). Globální obavy ohledně existenčních rizik umělé inteligence vzrostly poté, co se o víkendu sešli vedoucí předních amerických firem z odvětví AI a vyzvali k pozastavení vývoje technologie.
Evidentně čím více řádků, tím větší šance, že to tam bude, a tím větší tabulka. Čím více sloupců, tím větší šance, že to tam bude, a tím déle to trvá. Jaké je procento pokrytí možných hesel viz odkazovaný článek.
Má to pár háčků, část z nich lze řeší právě zduhatěním algoritmu: pro každý krok se použije jiná funkce hash -> heslo. Pak je ovšem potřeba zkoušet různé polohy hashe v tabulce.
Řečeno přesněji (aneb implementace v Lispu - spíš instruktivní než pro použití):
(defstruct (rainbow-table (:type vector)) rows
colors startpoints reducing-function cipher-function)
(defun cipher (key table)
"Do the hashing step"
(funcall (rainbow-table-cipher-function table) key))
(defun reduce-hash (hash color table)
"Call reducing function"
(funcall (rainbow-table-reducing-function table) hash color))
(defun cipher-and-reduce (key color table)
"Returns next key in a row"
(reduce-hash (cipher key table) color table))
(defun traverse-chain (start-key start-color table
&optional (end-color (colors-in table)))
"Return final key for given start key and table"
(loop for color from start-color to end-color
for key = start-key then (cipher-and-reduce key color table)
finally (return key)))
(defun setup-rows (table start-keys-generator)
"Initialize the table"
(let ((start-rows (make-hash-table)))
(loop for row from 0 to (1- (rows-in table))
for start-key = (funcall start-keys-generator row)
do (setf (gethash
(traverse-chain start-key 0 table) start-rows)
start-key))
(setf (rainbow-table-startpoints table) start-rows)))
(defun lookup-start-key (end-key table)
"Return start key to end key, or nil if end key is not in table."
(gethash end-key (rainbow-table-startpoints table)))
(defun lookup-key (key start-color table)
(let ((start-key (lookup-start-key key table)))
(when start-key (traverse-chain start-key 0 table (1- start-color)))))
(defun decipher (hash table)
(loop for start-color from 0 to (1- (colors-in table))
for result = (lookup-key
(traverse-chain
(reduce-hash hash start-color table) start-color table)
start-color table)
do (when (and result
(eql (cipher result table) hash))
(return result))
finally nil))
Obrana: pořádná hesla (je to pořád jenom brute force attack), solit hashe (pak se hůř předpřiravují tabulky)
Tiskni
Sdílej:
Ale radši si do opšnů defstructu přidám (:conc-name rt-)
„The following functions were used but not defined: ROWS-IN COLORS-IN“ je v pořádku?
Nebo si to můžu v pondělí stáhnout odjinud, ale alespoň uvidím, jak jsou tady lidi hodný