Fórum Root.cz

Hlavní témata => Hardware => Téma založeno: luvar 10. 03. 2020, 09:17:23

Název: Úprava dat pro kouzelné pero
Přispěvatel: luvar 10. 03. 2020, 09:17:23
Dobry den,
mam doma tento HW: https://www.kuzelnecitanie.sk/ Viem o tom, ze to "pero" ma vpredu nejaku OCR vec, čo pozerá mikrotlač (také bodky v maticiach s posunom) a podľa toho identifikuje, kde sa kliklo. Súbory sa tam tuším nahrávajú cez usb, mass storage, viď stiahnuteľné súbory s audio dátami: https://www.kuzelnecitanie.sk/prevziat-audiosubor/

Moje otázky:
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: phrk 10. 03. 2020, 11:36:31
Používám. A obávám se, že pohrát si s tím moc nepůjde. Tužka sice podporuje vlastní audio soubory (wav), pouštěné načtením samolepek, které k ní dodávají, ale samotný princip vzorku čteného (IR) senzorem a struktura binárních bnl souborů vypadá bez jakékoli dokumentace dost neproniknutelně. Rád se nechám vyvést z omylu  :)
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: czipis 10. 03. 2020, 12:21:50
chvili jsem hledal a vypada to, ze to BNL jsou nejakym zpusobem zaarchivovane mp3 soubory, tuzka potom jenom nacte tag a podle hodnoty tagy prehraje tu spravnou mp3.

v tom BNL jsem neasel nejakou referenci na LAME3, takze by to odpovidalo, ale bude to asi nejak obfuskovane.

jinak napr. tady se to da od cinana objednat i se SW
http://kidslearningpen.sell.everychina.com/p-103333026-dolphin-kids-learning-pen-support-mp3-game-tf-card-blue-green.html
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: czipis 10. 03. 2020, 12:24:07
pres referenci na "ZC90B (Encript IC)" jsem se dostal az sem:
https://github.com/entropia/tip-toi-reveng/wiki/PEN-Hardware-Details
https://github.com/entropia/tip-toi-reveng
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: RDa 10. 03. 2020, 12:28:32
Jak navrhuji kamery tak me zajimalo co je tam za snimac - nasel jsem cinske pera a pak se dopatral az na vyrobce toho modulu, i snimace:

A pak hledajic kde snimac SN9S102C sehnat, jsem natrefil na:
https://cyberleninka.org/article/n/265782.pdf

Design a Training and Maintenance System Based on Code Identification

viz sekci:
3.2. Software Design
There are two software In this design: OIDProducer and SN8Cstudio.


Jinak se tam vysvetluje i kodovani v tisku - kod se nachazi v dvou druzich "cerneho" tisku - vyuziva se kombinace skutecne cerne (K) a falesne cerne (soutiskem CMY), a to co clovek nevidi, to pero dokaze odlisit pod IR svetlem :) Chytra technologie!
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 10. 03. 2020, 13:44:34
pres referenci na "ZC90B (Encript IC)" jsem se dostal az sem:
https://github.com/entropia/tip-toi-reveng/wiki/PEN-Hardware-Details
https://github.com/entropia/tip-toi-reveng

Ten projekt vypadá geniálne, ale zdá sa, že na "moje pero" nepasuje :/ Asi skúsim skrutkovač a pozrieť sa na jeho HW.

PS: Písal som aj výrobcovi, ale vyjadrenie je v smere, že na niektoré veci sa pýtalo viac ludí a niekedy ich upravia (zmeny viet/výslovností) a vydajú update (bnl súbor), ale užívateľsky meniť sa to nedá :)
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 10. 03. 2020, 15:02:29
Zdá sa, že Albi používa E8800 pero. Viď https://www.alibaba.com/product-detail/Wholesale-E8800-language-translation-pen-smart_60767584081.html

Keď budú deti spať, skúsim doplniť výsledky mojeho hľadania. Podľa výrobcu to pero má vedieť aj veci ako "porovnávanie výslovnosti"...
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: Ondrej Nemecek 10. 03. 2020, 16:26:34
BTW: S trochou QR kódů a kreativity by bylo možno udělat vlastní implementaci (HW+software)...
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: iko 10. 03. 2020, 17:20:26
odporucam pozriet toto, malo by to byt to iste, daju sa robit vlastne zosity, kompilovat vlastne subory...atd...
https://github.com/entropia/tip-toi-reveng/wiki
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: czipis 10. 03. 2020, 20:17:49
odporucam pozriet toto, malo by to byt to iste, daju sa robit vlastne zosity, kompilovat vlastne subory...atd...
https://github.com/entropia/tip-toi-reveng/wiki
https://www.youtube.com/watch?v=prEVzshXY6A
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: branchman 10. 03. 2020, 23:03:10
Ten projekt tip-toi-reveng nefunguje na "nase" Albi pera. Aj tak poskytne zakladny navod na OID (teda ako tlacit rozne kody). Zostava nam vyriesit, ako funguje firmware pera.

Trochu som sa s tym hral a toto su moje zavery:

Zvuky su v dvoch (troch) miestach - vo firmware a potom v bnl suboroch. Posledna moznost su WAV subory, ktore maju specialne kody, daju sa nahravat a prehravat a je po nich stopa vo firmware. Tie pouzivaju na vlastne nahravky.
Firmware obsahuje nejaky kod a neviem, o aku architekturu ide. Pero u seba nemam - mozno ho skus otvorit a najst typ CPU.
Okrem toho firmware obsahuje zvuky (MP3 subory), ktore nie su nijak chranene a struktura sa da zistit tym, ze sa na to pozries. V strukture ide o offsety do suboru a mensie detaily k tomu. Neskusal som to, ale prepisat data vo firmware by malo byt mozne.

BNL su narocnejsie. Tiez su v nich ulozene komplet MP3 subory. Su chranene "specialnou" ochranou, ktoru uz len podla struktur tipujem a opisem ju tu. XORuju sa niektore byty. Pozor, nie vsetky. Vyzera to, ze 0x00 a 0xFF nechavaju tak ako boli; offsety a XORy okrem toho vyzeraju na prvy pohlad nahodne. Podla ocakavanej struktury MP3 sa zda, ze ziskaju prvu hodnotu z hlavicky - tu hodnotu este viem zistit. Z tejto hodnoty generuju keystream a offsety, ktore sa maju XORovat. Aby sa keystream nedal prenasat medzi roznymi BNL suborami, tak funkcia keystreamu vyzera nejak takto:
key(n+1) = neznama_funkcia(key(n), ?)+cislo_bnl
takze z keystreamu jedneho BNL pri znalosti key(0) sa da spravit keystream pre druhe BNL s rovnakym key(0), offsety boli tusim tiez rovnake.
Odvodenie dalsich klucov nie je uplne zrejme - skusal som kongruencie nasobenia mod nieco a jednoduchsie "sifry", ale nic mi nevyslo. Je to vzdy jeden byte, takze ani nie je velmi co skusat.

Velmi problematicke pri analyze je to, ze nie je pristupny desifrovany subor, takze moje tvrdenia o BNL stoja na vode a na pozerani do suboru. Keby mal niekto cas a HW na vycitanie komplet firmwaru z pera (teda co sa naozaj vola), tak by to dost pomohlo. Skusal som zistovat, ako sa tam firmware nahrava a cez to som este uplne nepresiel.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: branchman 10. 03. 2020, 23:16:21
BTW: S trochou QR kódů a kreativity by bylo možno udělat vlastní implementaci (HW+software)...
To si este nevidel to pero a knihu. Tie bodky tam su uplne male, takze to bezne clovek okom nepostrehne. Takze dieta naozaj ukaze na obrazok a pero nieco povie.

Inak z pohladu samotneho citania OID (identifikatorov v obrazkoch) to nie je pre mna az take zaujimave. Teda dobry napad, ale je na to cip, ktory uz posiela vysledne ID a do toho netreba az tak rypat. Mna by tiez zaujimalo, ako funguje to spracovanie BNL.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: jinylojza 11. 03. 2020, 06:38:47
chvili jsem hledal a vypada to, ze to BNL jsou nejakym zpusobem zaarchivovane mp3 soubory, tuzka potom jenom nacte tag a podle hodnoty tagy prehraje tu spravnou mp3.
Takhle úplně jednoduchý to neni, protože ty zvuky se přehrávají podle nějakého vnitřního stavu tužky ve kterém je pravděpodobně aktivovaná kniha, předchozí označené tagy, výsledek nějakého generátoru náhodných čísel. Ty tagy nejsou globálně unikátní, ale jen v rámci knihy, takže se kniha musí aktivovat načtením tagu, načtením tagu se dá přehrát více různých zvuků dle předtím zvoleného režimu, které se taktéž udělá načtením tagu. Načtením tagu se dá spustit kvíz různé složitosti, který vygeneruje (pseudo)náhodnou posloupnost otázek, na které se odpovídá označením tagů, které to vyhodnocuje, umožní to opravu chybné odpovědi a vyhodnotí to celý test. A tohle v tom BNL musí být nějak zaznamenáno.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 11. 03. 2020, 09:17:32
Moja "rozborka" HW. Súčiastky na hlavnej doske plošáku z pera E8800:

Strana zadná (bez tlačidiel):
* SONIX SN95303FG 1866ATD6a ??e3
* SONIX SNAP01ASG 186SMCZ01 ??e3

Strana predná (tlačidlá a mikrofón):
* NX1C MX 25L3233F M2I-08G 5C294700 L182424
* ZC90B 186SNCZ03 ??e3
* FT24C02A 8KHKF

Pri čítaní popiskov súčiastok som došiel na hranu mojej optiky (oči, Sigma 30mm a aj SELP1650 zlyhávali). Sú tam možno preklepy. V každom prípade dám dokopy fotografie a hádam najneskôr zajtra pošlem aj foto a popis k rozoberaniu (kde sú záklapky).

PS: tie dvojice otáznikov sú nejaké stromčeky, alebo čo za znaky
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 11. 03. 2020, 10:12:23
Upravené dva popisky (použil som skener s 1200 dpi a dve súčiastky sa dali opraviť)

Strana zadná (bez tlačidiel):
* SONIX SN95303FG 1866ATD6a ??e3
* SONIX SNAP01ASG 186SMCZ01 ??e3
Strana predná (tlačidlá a mikrofón):
* MXIC MX 25L3233F M2I-08G 5C294700 L182424 <- zmena
* ZC90B 186SNCZ03 ??e3
* FT24C02A 8KHIfF <- zmena
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: Martin Sivák 11. 03. 2020, 10:27:35
* SONIX SN95303FG 1866ATD6a ??e3 - 16 bit DSP s dekodérem OID
http://www.sonix.com.tw/files/1/5275B71FB86E4932E050007F01007131

* SONIX SNAP01ASG 186SMCZ01 ??e3 - zesilovač
http://www.sonix.com.tw/files/1/18B3ADEBFF591986E050007F010077CA

MXIC MX 25L3233F M2I-08G 5C294700 L182424 - flash paměť
https://www.macronix.com/Lists/Datasheet/Attachments/7426/MX25L3233F,%203V,%2032Mb,%20v1.6.pdf

* ZC90B 186SNCZ03 ??e3
Podle tip-toi je to Chomptech šifrovací čip. Neznámá specifikace. Viz třeba https://github.com/entropia/tip-toi-reveng/wiki/PEN-Hardware-Details#encryption-ic

* FT24C02A 8KHIfF - serial EEPROM
https://media.digikey.com/pdf/Data%20Sheets/Fremont/FT24C02A_Rev_Dec_2010.pdf


Podle těch součástek je to hodně podobné tomu čínskému peru. Jen je jiné CPU.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 26. 03. 2020, 07:32:00
Ak by pero dokazalo ultrazvuk na vystupe, bolo by mozne zakodovat do zvukov aj nejake idecka, ktore by mohli prijimat smartphony, tablety, televizie, ci PC. Napady na usecase:


Je sanca, ze taketo UC by implementoval vyrobca (cina) do svojeho SDK, pripadne predajca (Albi) by to skusil? Alebo je vacsia pravdepodobnost, ze by vyrobca kus pomohol after market upravam, ako je to s tym "nemeckym" perom?

PS: Niektore usecasy su skor na "paradu" a pre niektoru cielovu skupinu zakaznikov. Niektore sa mi pacia a rad by som ich mal implementovane (predpoklada nekonecno casu, ktore nie je).

PS2: nemam cas na zverejnenie fotografii vnutornosti pera. Ak by niekoho zaujimali, dajte vediet, hadam sa dokopem s vacsou pravdepodobnostou.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 01. 03. 2022, 14:01:07
K tejto teme je dostupny jeden pekny clanok s rozborom a kus aj s "forenznou analyzou": https://tatageek.blog/2022/02/28/jak-funguji-bnl-soubory-pro-albi-tuzku/

Dakujem tatovi, geekovi, za link.
Název: Re:Úprava dat pro kouzelné pero
Přispěvatel: luvar 16. 03. 2022, 20:59:38
Ak niekto sleduje, vysiel dalsi diel (o dekodovani bnl suboru) https://tatageek.blog/2022/03/07/zaklady-zpetneho-inzenyrstvi/
Tento diel je pekny uvod do pocitania v dvojkovej sustave :)

A vysiel uz aj diel o dekodovani mp3 suborov z bnl suborov https://tatageek.blog/2022/03/14/hacking-a-cracking-bnl-souboru-pro-albi-tuzku/ Paci sa mi uvaha o "sifrovani". Na podobne som narazil na seriovom protokole k vahe (scale, https://myweigh.com/product/ultraship-u2/ ). Tiez xorovanie, ale prist na to som potreboval aj excel a kamarata "na telefone" :/