logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Klawiatura makro (było: Serwer poświadczeń STM32F103)

ex-or 16 Sty 2021 22:11 3879 28
  • Klawiatura makro (było: Serwer poświadczeń STM32F103)

    Pracujący przy komputerze w firmie o korporacyjnej "kulturze pracy" zapewne rozpoznają ten obraz. Wiele programów z dostępem chronionym hasłem (oczywiście każdy swoim). Do tego jakieś udziały sieciowe (znów hasło), korporacyjny serwer www, pocztowy, harmonogramów (kolejne hasła, hasła, hasła). Część programów wymusza okresowe zmiany hasła. Część programów ma krótkie timeouty. Ciągle trzeba coś tam wpisywać. Człowiek z głową zaabsorbowaną ważkim problemem, przełącza się do programu X by coś szybko sprawdzić a tam oczywiście timeout (Jakie tu, k...., jest hasło?...Ok...co ja tu właściwie chciałem...). Motywem wykonania urządzenia była potrzeba poradzenia sobie tą sytuacją.

    Podstawowym założeniem było uczynienie czynności wpisywania danych autoryzacyjnych maksymalnie szybkim i nieabsorbującym. Dlatego odpadły rozwiązania programowe. I dlatego sposób obsługi urządzenia jest uproszczony do maksimum.

    Urządzenie ma formę pudełka z 10 klawiszami i trzema różnokolorowymi diodami na wierzchu. Pod każdy przycisk "podpięty" jest ciąg znaków. Wciśnięcie przycisku wysyła do komputera tenże ciąg, tak jakby był on wpisany z klawiatury. Ciąg może składać się z dowolnych znaków ASCII. Maksymalna długość to 150 znaków. Długie wciśnięcie dowolnego batona aktywuje symulację ruchów myszki, co bywa przydatne przy dłuższej obserwacji ekranu bez aktywności na urządzeniach wejściowych (nie, nie chodzi o oglądanie filmików na jutubie). LEDy dają podstawową informacje zwrotną: tryb myszki, brak definicji ciągu, wyprowadzenie ciągu na wyjście, błąd krytyczny urządzenia.

    Softwareowo jest to urządzenie kompozytowe USB składające się z trzech klas: HID klawiatura, HID mysz oraz CDC. Przejściowo zamiast dwóch oddzielnych HIDów zaimplementowałem HID z dwoma raportami, ale to rozwiązanie się nie sprawdziło. Nie wspomniałem o tym wcześniej więc teraz powiem, że podstawowym wymaganiem była praca urządzenia na standardowych sterownikach Windows (brak uprawnień administratora). HID dwuraportowy, niestety, domaga się sterowników więc skleciłem dwa oddzielne HIDy i to działa na sterownikach defaultowych. (Z CDC jest podobna kołomyjka, niestety, ale o tym może trochę dalej). CDC jest w charakterze interfejsu do wpisywania haseł. Po stronie urządzenia nasłuchuje prosty CLI realizujący kilka niezbędnych komend. Są to głównie komenda SET ustawiająca lub kasująca hasło, LIST listująca wszystkie hasła oraz HELP wyświetlający listę dostępnych komend z krótkim opisem.

    Schemat ideowy jest bardzo prosty.
    Klawiatura makro (było: Serwer poświadczeń STM32F103)

    Sercem urządzenia jest płytka Black Pill z klonem STM32F103, zawierająca większość potrzebnych elementów (w tym gniazdo USB) co bardzo upraszcza wykonanie. Płytka wpięta w płytkę bazową z rozmieszczonymi pozostałymi elementami układu (LED, switche). Płytka bazowa jest przyśrubowana do obudowy Kradex Z-73.
    Klawiatura makro (było: Serwer poświadczeń STM32F103) Klawiatura makro (było: Serwer poświadczeń STM32F103) Klawiatura makro (było: Serwer poświadczeń STM32F103) Klawiatura makro (było: Serwer poświadczeń STM32F103) Klawiatura makro (było: Serwer poświadczeń STM32F103) Klawiatura makro (było: Serwer poświadczeń STM32F103)

    Urządzenie kompozytowe zostało złożone do kupy z trzech oddzielnych urządzeń wyklikanych w CubeMX. W tym zadaniu bardzo pomogły mi informacje z tej strony:
    https://sudonull.com/post/68144-CDC-MSC-USB-Composite-Device-on-STM32-HAL
    W większym lub mniejszym stopniu przydały się także:
    https://ep.com.pl/kursy/tutoriale/12577-stm32cubemx-tworzenie-urzadzen-usb-hid
    https://ep.com.pl/kursy/tutoriale/10890-stm32-urzadzenie-usb-cdc.-wykonanie-za-pomoca-cubemx
    https://community.arm.com/developer/tools-sof...-forum/31001/2-hids-in-one-composite-usb-code
    http://kevincuzner.com/2018/01/29/bare-metal-stm32-writing-a-usb-driver/
    https://damogranlabs.com/2018/02/stm32-usb-hid-mouse-keyboard/

    Moduł CLI to moje własne wypociny sklecone kiedyś tam na AVR, które okazały się trochę nieprzystające do wymogów pracy asynchronicznej. Adaptacja nie do końca się udała i zabrała za dużo czasu. Ta część firmware jest pierwsza do ewentualnych modyfikacji, jeśli kiedyś nastąpią.

    Aplikacja została napisana przy użyciu frameworka Quantum Leaps QP/C (Link).

    Koszty materiałowe to ok 25 zł, z tego obudowa 6.94, Black Pill 6.77, laminat 3.43

    W załączniku projekt Eclipse z kodem źródłowym. Dla zbudowania binarki potrzebne są także źródła frameworka (w załączniku ich nie ma). Najnowsza wersja prawdopodobnie nie będzie działać (framework jest mocno rozwijany, API jest dosyć dynamiczne), trzeba użyć wersji 6.3.8 (Link). W Eclipse trzeba ustawić dwie zmienne środowiskowe ze ścieżką dostępu do frameworka, są to:
    QPC_SRC w Window > Preferences > General > Workspace > Linked Resources
    QPC_PATH w Window > Preferences > C/C++ > Build > Build Variables

    Filmik z działania: https://youtu.be/VQ_yNAAg3ck

    Urządzenie jest wykorzystywane od kilku miesięcy i, wg relacji użytkownika, spełnia swoje zadanie. Ma jednak dwa mankamenty.
    Pierwszy, iż sposób definiowania haseł jest dosyć trudny do ogarnięcia przez przeciętnego użytkownika Windowsów. Samo znalezienie w Windowsach portu COM pod którym urządzenie siedzi jest zadaniem niemal niemożliwym. Wpisywanie zaś komend w terminalu to rzecz totalnie nerdowska.
    Drugim mankamentem jest fakt iż Windows 7 domaga się sterownika dla VCP w urządzeniu kompozytowym.
    Dlatego powstała druga wersja w którym są dwa tryby pracy z przełączaniem się pomiędzy USB kompozytowym 2xHID oraz CDC. Powstała także aplikacja okienkowa Qt, w której można połączyć się z urządzeniem oraz podefiniować hasła w bardziej przyjazny sposób. Ale o tym może innym razem.

    === Edit 21.01.2021 ===

    Mała aplikacja Qt na PC: https://github.com/m-xor/cserv.git Ułatwia znalezienie urządzenia i edycję haseł.
    Kompilacja w Qt Creator https://www.qt.io/product/development-tools
    Klawiatura makro (było: Serwer poświadczeń STM32F103)
    Deployment na Windows: https://doc.qt.io/qt-5/windows-deployment.html Aplikacja nie stosuje niestandardowych wtyczek więc 'windeployqt katalog_z_binarką' bez dodatkowych parametrów. Kompilacja statyczna też nie jest specjalnie potrzebna. Na komputery z zainstalowanym Qt wystarczy sama binarka.
    Załączniki:
    • cserver.zip (670.46 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    ex-or
    Poziom 28  
    Offline 
  • #2 19189084
    piotr_go
    Konstruktor DIY elektronika
    Posty: 2910
    Pomógł: 94
    Ocena: 3350
    ex-or napisał:
    płytka Black Pill z klonem STM32F103

    Black Pill jest na STM32F4.
  • #5 19189380
    romulus73
    Poziom 28  
    Posty: 1225
    Pomógł: 96
    Ocena: 252
    Założenie miało być proste ale " Samo znalezienie w Windowsach portu COM pod którym urządzenie siedzi jest zadaniem niemal niemożliwym. Wpisywanie zaś komend w terminalu to rzecz totalnie nerdowska.
    Drugim mankamentem jest fakt iż Windows 7 domaga się sterownika dla VCP w urządzeniu kompozytowym."- gdzie tu prostota i wygoda z tytułu spodziewałem się czegoś Pluginplay
    Używam SafeInCloud i nie widzę aby przejście na hardware było prostsze. A już miałem nadzieję.
  • #6 19189405
    andrzejek23
    Poziom 19  
    Posty: 314
    Pomógł: 21
    Ocena: 146
    Korpo stosują logowanie domenowe do wszystkich swoich usług, a zdalne połączenie do sieci firmowej po VPN. Hasło jest zatem jedno.
  • #7 19189452
    freebsd
    Poziom 42  
    Posty: 6791
    Pomógł: 766
    Ocena: 2033
    Co to ma wspólnego z serwerem poświadczeń?
  • #8 19189460
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    @romulus73 Przede wszystkim to dwie rożne ligi. SafeInCloud to pełnowartościowy manager haseł, moje pudełko to zwykła klawiaturka nie zapewniajaca bezpieczeństwa przechowywanych haseł. To taki jakby elektroniczny odpowiednik Sticky Note z hasłem, na ramce monitora. Plus że wpisanie hasła zajmuje sekundę i nie angażuje szarych komórek. Przy założeniu "żadnych sterowników" nie widzę sposobu żeby to zrobić inaczej.Pudełko było szyte pod konkretną osobę i dla niej jest to wystarczające.
    Co do mankamentów z zacytowanego tekstu: jak wspomniałem powstała wersja nr 2, która je usuwa (taka przynajmniej jest nadzieja bo jeszcze nie jest w żytkowaniu).
    @andrzejek23 Usługi domenowe to jedno, a oprogramowanie użytkowe to co innego.
    @freebsd Szumną nazwę.
  • #9 19189468
    freebsd
    Poziom 42  
    Posty: 6791
    Pomógł: 766
    Ocena: 2033
    @ex-or Tytuł wprowadza w błąd.
  • #10 19189601
    omin172
    Poziom 16  
    Posty: 182
    Pomógł: 6
    Ocena: 71
    andrzejek23 napisał:
    Korpo stosują logowanie domenowe do wszystkich swoich usług, a zdalne połączenie do sieci firmowej po VPN. Hasło jest zatem jedno.


    Tylko teoretycznie. W praktyce masz jeszcze przecież loginy/hasła do firm współpracujących: że wspomnę chociażby benefitowe Sodexo, albo programy od kurierów DHL czy UPS, na stronach dostawców jak TME też chyba się trzeba logować...? Itd., itp.... Z teoretycznego jednego robi się kilkanaście...

    romulus73 napisał:
    Używam SafeInCloud i nie widzę aby przejście na hardware było prostsze. A już miałem nadzieję.


    Jak pracodawca zablokuje dostęp do stron typu SafeInCloude to takie rozwiązanie będzie jedyne możliwe...
  • #11 19189661
    Dragas
    Poziom 26  
    Posty: 1029
    Pomógł: 76
    Ocena: 197
    Pomysł jak najbardziej OK, ale jednak jak dla mnie mało mobilny. Dodatkowo mało bezpieczne rozwiązanie, ktoś podejdzie wciśnie przycisk i ma hasło - gdyby hasła znajdowały się w jakiejś pamięci szyfrowanej (np. AT88SC0104C) i były autoryzowane chociażby mifare a karta/brylo leżałby ma urządzeniu (na środku jest troche miejsca).
    Przy okazj ciekawi mnie, że w firmie jest brak rozwiązania typu autoryzacji SSO (single sign-on) - jedno hasło do wszystkiego i ewentualnie MFA. W firmie której pracuję mamy jedno hasło (zmieniane cyklicznie) do kilkudziesięciu usług, począwszy od komputera, poczty i VPN, a kończąc na usługach firm trzecich (np. Slack, AWS)
  • #12 19190031
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    Dragas napisał:
    gdyby hasła znajdowały się w jakiejś pamięci szyfrowanej (np. AT88SC0104C) i były autoryzowane chociażby mifare a karta/brylo leżałby ma urządzeniu (na środku jest troche miejsca).

    O, i to jest pomysł którego mi brakowalo! Dzięki za podpowiedź. Zastanawiałem się nad jakąś formą autoryzacji, ale nie podobał mi się żaden własny pomysł. A skoro nie ma autoryzacji to i szyfrowania, bo i po co.
    Dziwne że na to nie wpadłem, bo firma stosuje kontrolę dostępu na kartę i może nawet dało by się ją wykorzystać W kolejnej wersji pudełka na pewno to zastosuję.
  • #13 19190063
    Andrzej_;)
    Poziom 14  
    Posty: 111
    Pomógł: 6
    Ocena: 10
    Nawet fajna sprawa takie urządzenie.

    Dałoby się to zrobić nawet na arduino.

    Obecnie są dość tanie czytniki linii papilarnych.
    Gdyby uzupełnić Twój gadget o taki czytnik można by uznać urządzenie za mniej lub bardziej "bezpieczne" i można by zostawić je, na biurku w pracy bez opieki.
  • #14 19191280
    Jawi_P
    Poziom 36  
    Posty: 3259
    Pomógł: 260
    Ocena: 715
    andrzejek23 napisał:
    Korpo stosują logowanie domenowe do wszystkich swoich usług, a zdalne połączenie do sieci firmowej po VPN. Hasło jest zatem jedno.

    A Ty znasz wszystkie korpo? Ja znam 3 korporacje, w każdej było wiele haseł, wiele aplikacji, logowanie domenowe w części oprogramowania. Nawet do softu po WWW, nie wszędzie było przez domenę.
    ex-or napisał:
    Urządzenie ma formę pudełka z 10 klawiszami i trzema różnokolorowymi diodami na wierzchu. Pod każdy przycisk "podpięty" jest ciąg znaków. Wciśnięcie przycisku wysyła do komputera tenże ciąg, tak jakby był on wpisany z klawiatury.


    Rozwiązanie Twoje jest złamaniem zasad bezpieczeństwa. W wielu firmach, gdzie bezpieczeństwo danych jest priorytetem, takie "udogodnienie" jest złamaniem regulaminu pracy. W mojej firmie chyba bardzo poważnym.
    No bo co robisz jak odchodzisz od komputera, odłączasz pudełko i nosisz w kieszeniach? Nosisz je codziennie do domu?
    Rozwiązanie nie dla mnie. Natomiast znalazłoby zastosowanie w giercowaniu ;)
    Jest pełno softu - menedżerów haseł, nawet przeglądarki mają wbudowane swoje. Napisać własny soft w postaci skryptu, AutoIt, Python itp. to żaden problem pewnie dla Ciebie skoro napisałeś program pod STMa.

    I najważniejsze, we współczesnych laptopach często są tylko 3 porty USB, ja wykorzystuje wszystkie 3. Mysz, token i słuchawki. A to urządzenie dodatkowo zabiera mi port :(
  • #15 19192048
    Ibuprom
    Poziom 26  
    Posty: 1377
    Pomógł: 52
    Ocena: 180
    Token Yubikey - może nie należy do najtańszych, ale po spięciu tego z keepass-em mamy podobne rozwiazanie - i co najważniejsze wielokrotnie bezpieczniejsze. Tu wystarczy otworzyć notatnik, klepnać wszystkie przyciski i mamy komplet haseł. Wiem że taka miała być funkcjonalność, ale nie przyzwyczajajmy siebie ani ludzi mało obeznanych z komputerami do złudnej wygody.
  • #16 19192155
    andrzejek23
    Poziom 19  
    Posty: 314
    Pomógł: 21
    Ocena: 146
    Jawi_P napisał:
    A Ty znasz wszystkie korpo? Ja znam 3 korporacje, w każdej było wiele haseł, wiele aplikacji, logowanie domenowe w części oprogramowania. Nawet do softu po WWW, nie wszędzie było przez domenę.

    Widocznie znamy różne korporacje :)
  • #18 19200627
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    W pierwszym poście dodałem link do aplikacji okienkowej usprawniającej konfigurację.
  • #19 19201737
    S_Goryl
    Poziom 13  
    Posty: 76
    Pomógł: 3
    Ocena: 16
    Dragas napisał:
    Pomysł jak najbardziej OK, ale jednak jak dla mnie mało mobilny. Dodatkowo mało bezpieczne rozwiązanie, ktoś podejdzie wciśnie przycisk i ma hasło - gdyby hasła znajdowały się w jakiejś pamięci szyfrowanej (np. AT88SC0104C) i były autoryzowane chociażby mifare a karta/brylo leżałby ma urządzeniu (na środku jest troche miejsca).

    Widzę, że mniej więcej nadajemy na tych samych falach. W czasach "szału" przy wprowadzaniu RODO popełniłem właśnie coś takiego dla moich kadrówek: autoryzacja breloczkiem Mifare, emulacja klawiatury i transfer hasła przez USB. Co 60 s sprawdzanie, czy breloczek leży na czytniku. W przypadku jego braku: wysłanie sekwencji Win+L. Klucze od pomieszczenia przypięte do breloka, więc się o nim raczej się nie zapomni. Całość złożona z gotowych chińskich klocków: klon Arduino Pro Micro, konwerter poziomów logicznych, czytnik RFID. Hasła przechowywane w dwóch zewnętrznych EEPROM-ach, szyfrowane. W dużej mierze zainspirował mnie projekt https://www.instructables.com/PasswordPump-Passwords-Manager/
    Uznałem jednak, że taki sposób wprowadzania hasła jak w w/w projekcie jest co najmniej upierdliwy dla prostych użytkowników, zdecydowałem się na autoryzację kartą na codzień służącą do wchodzenia do pomieszczeń biurowych.
  • #20 19212243
    romulus73
    Poziom 28  
    Posty: 1225
    Pomógł: 96
    Ocena: 252
    omin172 napisał:
    andrzejek23 napisał:
    Korpo stosują logowanie domenowe do wszystkich swoich usług, a zdalne połączenie do sieci firmowej po VPN. Hasło jest zatem jedno.


    Tylko teoretycznie. W praktyce masz jeszcze przecież loginy/hasła do firm współpracujących: że wspomnę chociażby benefitowe Sodexo, albo programy od kurierów DHL czy UPS, na stronach dostawców jak TME też chyba się trzeba logować...? Itd., itp.... Z teoretycznego jednego robi się kilkanaście...

    romulus73 napisał:
    Używam SafeInCloud i nie widzę aby przejście na hardware było prostsze. A już miałem nadzieję.


    Jak pracodawca zablokuje dostęp do stron typu SafeInCloude to takie rozwiązanie będzie jedyne możliwe...

    A jak pracodawca może zablokować dostęp do mojego serwera NAS, o co kaman? Jedno konto kilka urządzeń.
  • #21 19212556
    omin172
    Poziom 16  
    Posty: 182
    Pomógł: 6
    Ocena: 71
    Zwyczajnie. Nie wiesz, że dostawca Internetu może blokować dostęp do określonych stron?

    Jawi_P napisał:
    Rozwiązanie Twoje jest złamaniem zasad bezpieczeństwa. W wielu firmach, gdzie bezpieczeństwo danych jest priorytetem, takie "udogodnienie" jest złamaniem regulaminu pracy. W mojej firmie chyba bardzo poważnym.


    Aha. Ale w takich firmach ta surowość przepisów jest przecież złagodzona mozliwością ich nieprzestrzegania ;). A poważnie: śrubowanie nierealnych wymagań bezpieczeńśtwa wcale nie zwiększa, bo ludzie są ludźmi i nie są w stanie zajmować się robotą i dodatkowo regularnie uczyć się na pamięć dziesiątków bezsensownych zbitków liter.
  • #22 19213260
    Jawi_P
    Poziom 36  
    Posty: 3259
    Pomógł: 260
    Ocena: 715
    omin172 napisał:
    A poważnie: śrubowanie nierealnych wymagań bezpieczeńśtwa wcale nie zwiększa, bo ludzie są ludźmi i nie są w stanie zajmować się robotą i dodatkowo regularnie uczyć się na pamięć dziesiątków bezsensownych zbitków liter.

    A które to wymaganie jest nierealne?
    Rozmawiamy w kontekście urządzenia które klikiem w przycisk loguje Cię do aplikacji.
  • #23 19215004
    sstasinek
    Poziom 13  
    Posty: 101
    Ocena: 15
    Jednego nie rozumiem.
    https://en.wikipedia.org/wiki/Touch_memory
    https://www.fujitsu.com/jp/group/frontech/doc...igent-society/rfid/ait64k/brochure-ait64k.pdf

    W sumie nie znam się na kartach elektronicznych czy też NFC, dlatego nie znalazłem informacji po polsku ani też jakichś konkretnych aplikacji. Ale są raczej dwa istniejące i używane w korporacjach rozwiązania (stąd wiele klawiatur Dell, HP ma wbudowane czytniki kart) w których hasła są zapisane w bazie danych serwera haseł lub (bo nie wiem) dostpępne bezpośrednio na karcie. Wystarczy tylko czytnik kart. Metoda bardziej elegancka bo karta jest kluczem. Po co wymyślać jakiś nowy system? Może to jest nawet praktyczne, ale oczywiste ulepszenie byłaby aplikacja odczytująca dane z takiej karty. Można by to nawet używać na telefonie - wypozażone w NFC, karta w futerale na pleckach telefonu. Kwestia tylko zastosowania jakiegoś standardu,

    Podejrzewam - bo nie wiem że gdyby powiązać przechowywanie danych na karcie można byłoby to z łatwością powiązać z managerem haseł typu KeePass https://keepass.info/plugins.html#smartcert W linku fujitsu breloczek o pojemności 64kB w pierwszym linku stykowe rozwiązanie które widziałem w wielu wózkach widłowych - kluczyk Dallas 1-wire.
  • #24 19215047
    Dragas
    Poziom 26  
    Posty: 1029
    Pomógł: 76
    Ocena: 197
    Znalazłem przypadkiem chyba bardzo podobne o ile nie identyczne urządzenie, tylko w miniaturowej wersji https://onlykey.io/
    I co fajne, posiada 6 przycisków, działających jako klawiatura do wpisywania PINu
  • #25 19215720
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    Dragas napisał:
    https://onlykey.io/

    Ciekawe urządzonko, trzeba się przyjrzeć.
    Porównując je z moim pudełkiem:
    Dragas napisał:
    tylko w miniaturowej wersji

    Miniaturyzacja była wykluczona na starcie. User ma mieć klawisze pod ręką, dostępne do wymacania nawet na ślepo. Dlatego odpadły klawiatury membranowe, dotykowe itp. I dlatego taka wielkość pudełka. (NB. O ile nie mam dobrego zdania o obudowach Kradexa, to akurat z tego pudła jestem zadowolony - nieźle leży w ręku, tworzywo nawet dosyć miłe w dotyku, sztywne, ciężar taki jak trzeba, nie przesuwa się po stole, punkty mocowania tam gdzie trzeba. Jest OK)
    Dragas napisał:
    6 przycisków, działających jako klawiatura do wpisywania PINu

    Rozważałem jakaś konfigurowalną sekwencję do uzyskania autoryzacji, ale odrzuciłem to jako wnoszące, W TYM KONKRETNYM PRZYPADKU, więcej problemów niż korzyści. Jeszcze raz podkreślam: W TYM KONKRETNYM PRZYPADKU wygoda usera miała nadrzędne znaczenie.

    W tej chwili zastanawiam się nad dodaniem albo czytnika kart/breloka albo wykorzystaniem bluetootha. Oba tematy są mi nieznane, sprawa do rozpoznania od zera więc temat na razie leży.
    Co do bluetootha - w smartfonach jest opcja odblokowywania telefonu w zasięgu zaufanego urządzenia bluetooth. Wygląda to fajnie więc skłaniam się ku temu rozwiązaniu. W tej chwili ludzie nigdzie się nie ruszają bez smartka przy tyłku więc teoretycznie powinno spełnić zadanie.
  • #26 19216821
    romulus73
    Poziom 28  
    Posty: 1225
    Pomógł: 96
    Ocena: 252
    omin172 kolego jedno konto wiele urządzeń, jak zablokuje mi dostęp do mojego serwera na moim telefonie, przecież wszystko można wklepać ręcznie.
    Słowo moje jest tu kluczowe.
  • #27 20244213
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    Cześć!
    Poniżej mały apdejt.
    Urządzenie przestało być potrzebne użytkownikowi i do mnie wróciło. Po przeróbkach wykorzystałem je do własnych celów.
    Poprzednio pod klawisze można było podpiąć ciągi drukowalnych znaków ASCII (bez spacji) plus dwa białe znaki tj. tabulator i znak nowej linii. Po przeróbce pod button można podpiąć ciąg składający się z dowolnego klawisza standardowej klawiatury 104 klawiszowej (oprócz dwóch klawiszy narodowych, które uznałem za zbędne). Dodatkowo utworzyłem dwa ewenty nie związane z klawiaturą, które też można wykorzystać: jeden zwłoki o kilku, z góry zdefiniowanych długościach, drugi zatrzymujący przesyłanie do czasu ponownego wciśnięcia buttona. A więc obecnie jest to "normalna" klawiatura (chociaż z niewielką liczbą klawiszy) z możliwością makrodefiniowania. W tej chwili używam diwajsa na codzień i dosyć się przydaje.
    W toku użytkowania pojawiły się pomysły dalszych ulepszeń. W tej chwili pracuję nad przeróbką pozwalającą na użycie w makrodefinicjach ewentów myszy. Od strony drivera USB mam to już rozpracowane, do zrobienia jest oprogramowanie i testowanie interpretera makr oraz integracja tego z firmware i dopisanie obsługi w aplikacji.
    Drugim kierunkiem potencjalnego ulepszenia jest wymiana tact switchów na prawdziwą klawiaturę. Na myśli mam klawiaturę z drukarki fiskalnej.
    Jeszcze słowo o programowaniu klawiszy i makrach. Zdefiniowanie makra pod klawiszem polega na przypisaniu ciągu znakowego składającego się ze zwykłych znaków ASCII dla znaków drukowalnych bez spacji oraz escape sequences dla klawiszy sterujących. Przykładowe ciąg dla makra wykonującego kopiuj-wklej z przełączeniem na drugie okno: "\cc\a\t\cv". Tak to wygląda od strony interfejsu użytkownika, dalej zakodowany ciąg jest tłumaczony przez interpreter na ciąg złożony z kodów które są zapamiętywane w urządzeniu. Kody te w większości pokrywają się z kodami standardowej klawiatury USB HID. Programowanie odbywa się komendami przez serial. Jest to mega nerdowskie, "normalny" user by coś takiego nie zniósł, ale to diwajs dla mnie więc nie ma problemu :-)
  • #28 20244618
    Nepto
    Poziom 24  
    Posty: 580
    Pomógł: 58
    Ocena: 258
    Ja bym poeksperymentował z autoryzacją dostępu do haseł - inaczej faktycznie to taki elektroniczny notatnik z zapisanymi hasłami i trzeba pamiętać, żeby nie zostawić go na wierzchu wychodząc do kuchni po kawę. :)
  • #29 20294249
    ex-or
    Poziom 28  
    Posty: 785
    Pomógł: 147
    Ocena: 151
    Dynks nie jest używany do haseł więc wywaliłem wszelkie uwierzytelniania. Teraz to jest klawiatura makro na sterydach.
    Dodałem ewenty urządzenia wskazującego (korzystajac z informacji ze strony https://www.codeproject.com/Articles/1001891/...HID-Keyboard-Mouse-Touchscreen-emulator-with). Pozycjonowanie kursora na ekranie jest wg współrzednych bezwzględnych wyrażonych w procentach z dokładnością dwóch miejsc po przecinku. Na przykład na filmie poniżej minimalizowanie okna wykonwyane jest przez kliknięcie w pozycji x: 94,44%, y: 1,50%. Działa to niezależnie od rozdzielczości ekranu. W toku prac natknąłem się na dziwne zachowanie linuxowego drivera, ignorującego następujące po sobie ewenty o dla tych samych współrzędnych. Udało się znaleźć obejście ale trochę czasu straciłem :-(
    Kolejny dodany ficzer to generowanie losowych znaków.
    Teraz klawiaturka w większości ma to czego potrzebuję.
    Krótki klip z działania:


Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy stworzenia urządzenia do szybkiego wprowadzania haseł w środowisku korporacyjnym, gdzie użytkownicy muszą często zmieniać hasła i logować się do różnych aplikacji. Uczestnicy rozmowy poruszają kwestie związane z używaniem klawiatury makro, która ma na celu uproszczenie procesu logowania. Wskazują na problemy z konfiguracją urządzenia w systemie Windows, a także na kwestie bezpieczeństwa związane z przechowywaniem haseł. Pojawiają się sugestie dotyczące dodania funkcji autoryzacji, takich jak czytniki kart RFID lub Bluetooth, aby zwiększyć bezpieczeństwo. Uczestnicy dzielą się również doświadczeniami z innymi rozwiązaniami, takimi jak menedżery haseł i tokeny bezpieczeństwa.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA