<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Testspective by Tomasz Sas]]></title><description><![CDATA[Biorę temat, wchodzę w niego głęboko, sprawdzam jak działa w praktyce — i piszę co znalazłem.]]></description><link>https://testspective.com</link><image><url>https://substackcdn.com/image/fetch/$s_!TDyc!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb387962f-9602-440f-a3a1-a94608bab8a3_144x144.png</url><title>Testspective by Tomasz Sas</title><link>https://testspective.com</link></image><generator>Substack</generator><lastBuildDate>Wed, 15 Jul 2026 19:18:56 GMT</lastBuildDate><atom:link href="https://testspective.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Tomasz Sas]]></copyright><language><![CDATA[pl]]></language><webMaster><![CDATA[testspective@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[testspective@substack.com]]></itunes:email><itunes:name><![CDATA[Tomasz Sas]]></itunes:name></itunes:owner><itunes:author><![CDATA[Tomasz Sas]]></itunes:author><googleplay:owner><![CDATA[testspective@substack.com]]></googleplay:owner><googleplay:email><![CDATA[testspective@substack.com]]></googleplay:email><googleplay:author><![CDATA[Tomasz Sas]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Czym się różni embedded od IoT?]]></title><description><![CDATA[W naszym &#380;yciu bardzo cz&#281;sto spotykamy si&#281; z urz&#261;dzeniami embedded i IoT.]]></description><link>https://testspective.com/p/czym-sie-rozni-embedded-od-iot</link><guid isPermaLink="false">https://testspective.com/p/czym-sie-rozni-embedded-od-iot</guid><dc:creator><![CDATA[Tomasz Sas]]></dc:creator><pubDate>Wed, 15 Jul 2026 05:30:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!TCLU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>W naszym &#380;yciu bardzo cz&#281;sto spotykamy si&#281; z urz&#261;dzeniami embedded i IoT. W wielu gospodarstwach domowych na co dzie&#324; korzysta si&#281; z takich rozwi&#261;za&#324;. Kiedy odgrzewasz sobie obiad w nowoczesnej mikrofal&#243;wce, a potem myjesz naczynia w zmywarce, prawdopodobnie wykorzystujesz do tego urz&#261;dzenia embedded. Je&#347;li masz w domu smart &#380;ar&#243;wki lub smart lod&#243;wk&#281;, to prawie na pewno korzystasz z rozwi&#261;zania IoT. W takim razie jaka jest mi&#281;dzy nimi r&#243;&#380;nica?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TCLU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TCLU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TCLU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg" width="1456" height="2189" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2189,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:816040,&quot;alt&quot;:&quot;Blat w kuchni, na kt&#243;rym jest wiele r&#243;&#380;nych przedmiot&#243;w: kwiat w doniczce, porcelanowe figurki &#347;winek, trzy s&#322;oiki z r&#243;&#380;nymi s&#322;odyczami i pojemnik na sztu&#263;ce, w kt&#243;rym s&#261; &#322;y&#380;ki, no&#380;e i widelce. Pod blatem wida&#263; nowoczesn&#261; mikrofal&#243;wk&#281; z wieloma przyciskami i wy&#347;wietlaj&#261;cym si&#281; czasem 5:31. Z lewej strony wida&#263; te&#380; ma&#322;&#261; lod&#243;wk&#281; z metalowymi drzwiczkami. &quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://testspective.com/i/206879026?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Blat w kuchni, na kt&#243;rym jest wiele r&#243;&#380;nych przedmiot&#243;w: kwiat w doniczce, porcelanowe figurki &#347;winek, trzy s&#322;oiki z r&#243;&#380;nymi s&#322;odyczami i pojemnik na sztu&#263;ce, w kt&#243;rym s&#261; &#322;y&#380;ki, no&#380;e i widelce. Pod blatem wida&#263; nowoczesn&#261; mikrofal&#243;wk&#281; z wieloma przyciskami i wy&#347;wietlaj&#261;cym si&#281; czasem 5:31. Z lewej strony wida&#263; te&#380; ma&#322;&#261; lod&#243;wk&#281; z metalowymi drzwiczkami. " title="Blat w kuchni, na kt&#243;rym jest wiele r&#243;&#380;nych przedmiot&#243;w: kwiat w doniczce, porcelanowe figurki &#347;winek, trzy s&#322;oiki z r&#243;&#380;nymi s&#322;odyczami i pojemnik na sztu&#263;ce, w kt&#243;rym s&#261; &#322;y&#380;ki, no&#380;e i widelce. Pod blatem wida&#263; nowoczesn&#261; mikrofal&#243;wk&#281; z wieloma przyciskami i wy&#347;wietlaj&#261;cym si&#281; czasem 5:31. Z lewej strony wida&#263; te&#380; ma&#322;&#261; lod&#243;wk&#281; z metalowymi drzwiczkami. " srcset="https://substackcdn.com/image/fetch/$s_!TCLU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TCLU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff306258-624f-49c0-9b9b-8db5fe3ee936_1920x2886.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@andreaedavis?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Andrea Davis</a> on <a href="https://unsplash.com/photos/a-kitchen-counter-with-a-microwave-and-a-potted-plant-Y-gey2XBHSM?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure></div><h1>Urz&#261;dzenia embedded</h1><p>&#379;eby sobie wyobrazi&#263;, czym s&#261; urz&#261;dzenia embedded, warto pomy&#347;le&#263; o komputerze og&#243;lnego przeznaczenia, kt&#243;ry wi&#281;kszo&#347;&#263; os&#243;b ma w domu lub wykorzystuje w pracy. Mo&#380;na go wykorzystywa&#263; do niezliczonej liczby zada&#324; - od cel&#243;w biznesowych po rozrywk&#281;. Najcz&#281;&#347;ciej korzystamy z edytor&#243;w tekstu, przegl&#261;damy Internet w poszukiwaniu informacji, ogl&#261;damy filmy oraz s&#322;uchamy muzyki. Oczywi&#347;cie jest to bardzo skr&#243;cona lista sposob&#243;w u&#380;ycia. Taki komputer, z kt&#243;rego korzystamy na co dzie&#324;, jest zbudowany zazwyczaj z r&#243;&#380;nych komponent&#243;w - p&#322;yty g&#322;&#243;wnej, procesora, pami&#281;ci RAM, dysku twardego, monitora, myszki i klawiatury. Wszystkie razem tworz&#261; komputer, kt&#243;ry dzi&#281;ki nim dzia&#322;a tak, jak si&#281; spodziewamy.</p><p>W przeciwie&#324;stwie do komputer&#243;w osobistych urz&#261;dzenia embedded nie maj&#261; tak z&#322;o&#380;onego zestawu operacji, kt&#243;re mo&#380;na na nich wykona&#263;, i zazwyczaj s&#261; skoncentrowane wok&#243;&#322; jednego specjalistycznego zadania. Wr&#243;&#263;my do przyk&#322;ad&#243;w z pocz&#261;tku artyku&#322;u: mikrofal&#243;wka raczej nie b&#281;dzie mia&#322;a mo&#380;liwo&#347;ci odtwarzania muzyki. Ale jako urz&#261;dzenie o konkretnym przeznaczeniu spe&#322;nia swoj&#261; rol&#281; - odgrzewa i rozmra&#380;a potrawy. Mo&#380;na ustawi&#263;, z jak&#261; moc&#261; ma pracowa&#263;, po jakim czasie powinna si&#281; wy&#322;&#261;czy&#263; itd. Starsze mikrofal&#243;wki realizowa&#322;y to za pomoc&#261; mechanicznego programatora z pokr&#281;t&#322;ami; wsp&#243;&#322;czesne robi&#261; to za pomoc&#261; wbudowanego ma&#322;ego komputera. I to jest g&#322;&#243;wna zasada w embedded: ma&#322;y komputer - procesor z pami&#281;ci&#261; wykonuj&#261;cy program - wbudowany w wi&#281;ksze urz&#261;dzenie. Taki system specjalizuje si&#281; w w&#261;skim spektrum zastosowa&#324;, przewa&#380;nie w jednym zadaniu. Procesor i pami&#281;&#263; mog&#261; wyst&#281;powa&#263; jako osobne uk&#322;ady lub by&#263; zintegrowane w mikrokontrolerze (ma&#322;y komputer zawieraj&#261;cy procesor, pami&#281;&#263; oraz interfejsy wej&#347;cia/wyj&#347;cia w jednym uk&#322;adzie scalonym); korzystaj&#261; te&#380; z urz&#261;dze&#324; peryferyjnych - r&#243;&#380;nego rodzaju czujnik&#243;w (np. czujnik temperatury) albo urz&#261;dze&#324; u&#322;atwiaj&#261;cych sterowanie czy komunikacj&#281;, np. ekranu dotykowego. Urz&#261;dzenia embedded mog&#261; mie&#263; proste oprogramowanie lub bardziej z&#322;o&#380;ony system operacyjny, taki jak Linux. Projektanci embedded musz&#261; si&#281; liczy&#263; z ograniczonymi zasobami obliczeniowymi, nierzadko musz&#261; tak&#380;e ogranicza&#263; zu&#380;ycie pr&#261;du (np. gdy urz&#261;dzenie jest zasilane z baterii). Je&#347;li urz&#261;dzenie wymaga dzia&#322;ania w czasie rzeczywistym (real time - gwarantowany czas wykonania operacji), niesie to ze sob&#261; kolejne wyzwania.</p><h1>IoT</h1><p>Mo&#380;na powiedzie&#263;, &#380;e urz&#261;dzenia Internetu Rzeczy (<strong>I</strong>nternet <strong>o</strong>f <strong>T</strong>hings) wprowadzaj&#261; jedn&#261;, ale znacz&#261;c&#261; zmian&#281; w urz&#261;dzeniach embedded &#8211; &#322;&#261;czno&#347;&#263; sieciow&#261;. Dzi&#281;ki niej urz&#261;dzenia IoT mog&#261; same lub z wykorzystaniem specjalnej bramki komunikowa&#263; si&#281; ze &#347;wiatem zewn&#281;trznym &#8211; chmur&#261;, aplikacjami czy innymi urz&#261;dzeniami. W tym celu mog&#261; by&#263; wykorzystywane Wi&#8209;Fi, Bluetooth, sie&#263; kom&#243;rkowa itd. Wymiana danych ze &#347;wiatem zewn&#281;trznym nierzadko oznacza po&#322;&#261;czenie z chmur&#261;, gdzie s&#261; one gromadzone i przetwarzane. Bardzo cz&#281;sto z urz&#261;dzeniami IoT mo&#380;emy &#322;&#261;czy&#263; si&#281; przez aplikacj&#281; mobiln&#261; lub webow&#261;. Mo&#380;na tymi urz&#261;dzeniami zarz&#261;dza&#263; na du&#380;&#261; skal&#281; lub aktualizowa&#263; ich oprogramowanie bez konieczno&#347;ci interakcji z fizycznym urz&#261;dzeniem. Przyk&#322;adowo, smart lod&#243;wka ma mo&#380;liwo&#347;&#263; automatycznego dodawania na list&#281; produkt&#243;w, kt&#243;re do niej wk&#322;adasz; list&#281; mo&#380;esz potem zobaczy&#263; na swoim smartfonie. B&#281;dziesz otrzymywa&#322; powiadomienia, gdy dany produkt b&#281;dzie zbli&#380;a&#322; si&#281; do ko&#324;ca terminu wa&#380;no&#347;ci. Opr&#243;cz rzeczy zwi&#261;zanych z &#380;ywno&#347;ci&#261; mo&#380;esz te&#380; np. sterowa&#263; muzyk&#261; w domu z wy&#347;wietlacza lod&#243;wki.</p><p>Warto wspomnie&#263;, &#380;e ka&#380;de urz&#261;dzenie IoT jest zbudowane na embedded - po prostu wprowadza t&#281; jedn&#261; dodatkow&#261; warstw&#281; &#322;&#261;czno&#347;ci sieciowej wykorzystuj&#261;c&#261; protok&#243;&#322; IP (Internet Protocol).</p><h1>Bezpiecze&#324;stwo</h1><p>Zastanawiaj&#261;c si&#281; nad powy&#380;sz&#261; charakterystyk&#261; urz&#261;dze&#324; embedded i IoT, mo&#380;na &#322;atwo dostrzec, &#380;e wzbogacenie urz&#261;dzenia o warstw&#281; sieciow&#261; mo&#380;e doda&#263; kolejne wektory ataku. Zagro&#380;one jest ju&#380; nie tylko pojedyncze urz&#261;dzenie, lecz tak&#380;e ca&#322;y ekosystem &#8211; protoko&#322;y sieciowe, backend i rozwi&#261;zania chmurowe, aplikacje webowe i mobilne. Skoro urz&#261;dzenia IoT s&#261; osi&#261;galne przez Internet, fizyczny dost&#281;p do urz&#261;dzenia nie jest potrzebny, by je zaatakowa&#263;. Wymaga to powa&#380;nego podej&#347;cia do bezpiecze&#324;stwa i regularnych aktualizacji oprogramowania.</p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://testspective.com/subscribe?&quot;,&quot;text&quot;:&quot;Subskrybuj&quot;,&quot;language&quot;:&quot;pl&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Nie chcesz, by omin&#261;&#322; Ci&#281; kolejny artyku&#322;?</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Wpisz sw&#243;j adres e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subskrybuj"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Zaczynam naukę IoT security: dlaczego i jak?]]></title><description><![CDATA[Od wielu lat wraca do mnie temat pisania artyku&#322;&#243;w na blogu.]]></description><link>https://testspective.com/p/zaczynam-nauke-iot-security-dlaczego</link><guid isPermaLink="false">https://testspective.com/p/zaczynam-nauke-iot-security-dlaczego</guid><dc:creator><![CDATA[Tomasz Sas]]></dc:creator><pubDate>Wed, 01 Jul 2026 05:31:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aIiV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Od wielu lat wraca do mnie temat pisania artyku&#322;&#243;w na blogu. Wiele razy postanawia&#322;em sobie, &#380;e chcia&#322;bym to robi&#263;, a przynajmniej spr&#243;bowa&#263;. W ko&#324;cu wi&#281;c, zamiast ci&#261;gle tylko o tym my&#347;le&#263;, postanowi&#322;em spr&#243;bowa&#263; &#8212; przynajmniej na jaki&#347; czas &#8212; i zobaczy&#263;, jak b&#281;dzie. Sporo te&#380; zastanawia&#322;em si&#281;, jaki b&#281;dzie m&#243;j temat przewodni na blogu. Moja obecna specjalizacja, w kt&#243;rej czuj&#281; si&#281; dobrze, to testowanie oprogramowania i quality assurance na styku hardware&#8217;u i software&#8217;u. Chcia&#322;em jednak, by blog mia&#322; styl public learning, dlatego temat musia&#322; by&#263; dla mnie w miar&#281; nowy i interesuj&#261;cy. W moim zespole pracujemy zar&#243;wno z czystym oprogramowaniem, jak i z systemami IoT. Jako osoba pracuj&#261;ca w IT jestem &#347;wiadomy zagro&#380;e&#324; zwi&#261;zanych z bezpiecze&#324;stwem, ale nie m&#243;g&#322;bym z czystym sumieniem powiedzie&#263;, &#380;e temat ten nie ma przede mn&#261; tajemnic. W&#322;a&#347;nie dlatego pad&#322;o na bezpiecze&#324;stwo system&#243;w IoT. &#379;eby jednak ten blog mia&#322; warto&#347;&#263; dla os&#243;b, kt&#243;re chc&#261; rozpocz&#261;&#263; przygod&#281; z embedded i IoT security, zaczn&#281; od pisania artyku&#322;&#243;w wprowadzaj&#261;cych podstawy embedded i sukcesywnie b&#281;d&#281; zwi&#281;ksza&#322; liczb&#281; artyku&#322;&#243;w poruszaj&#261;cych tematy security.</p><p>Czego mo&#380;na si&#281; spodziewa&#263; w najbli&#380;szym czasie po tym blogu?</p><blockquote><p><em>B&#281;d&#281; pisa&#322; o tym, co odkry&#322;em w trakcie zbierania do&#347;wiadczenia z IoT security</em></p></blockquote><p>Na pocz&#261;tku jedna wa&#380;na sprawa &#8211; nie jestem specjalist&#261; od IoT security (a przynajmniej na razie &#128521;). Blog jest dla mnie miejscem, w kt&#243;rym zamierzam opisywa&#263; &#347;cie&#380;k&#281; prowadz&#261;c&#261; do wzmocnienia technicznych kompetencji zwi&#261;zanych z bezpiecze&#324;stwem IoT. Mog&#261; wi&#281;c tutaj pojawia&#263; si&#281; informacje, z kt&#243;rymi osoby pracuj&#261;ce od lat w tej dziedzinie nie b&#281;d&#261; si&#281; zgadza&#263; &#8212; i w zasadzie na to licz&#281;, poniewa&#380; pope&#322;nianie b&#322;&#281;d&#243;w i uczenie si&#281; na nich jest najlepsz&#261; metod&#261; nauki. Je&#347;li jednak moja wiedza w jakim&#347; temacie si&#281; pog&#322;&#281;bi i b&#281;dzie trzeba dokona&#263; rewizji, bez w&#261;tpienia to zrobi&#281;.</p><p>Opisz&#281; pokr&#243;tce, na jakim sprz&#281;cie b&#281;d&#281; pracowa&#322; i jakie tematy b&#281;d&#281; porusza&#322; w najbli&#380;szym czasie.</p><h1>Sprz&#281;t</h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aIiV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aIiV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 424w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 848w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aIiV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg" width="728" height="485.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:3113714,&quot;alt&quot;:&quot;Dwie p&#322;ytki PCB z widoczn&#261; elektronik&#261; le&#380;&#261;ce na zielonej podk&#322;adce&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://testspective.com/i/202920199?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="Dwie p&#322;ytki PCB z widoczn&#261; elektronik&#261; le&#380;&#261;ce na zielonej podk&#322;adce" title="Dwie p&#322;ytki PCB z widoczn&#261; elektronik&#261; le&#380;&#261;ce na zielonej podk&#322;adce" srcset="https://substackcdn.com/image/fetch/$s_!aIiV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 424w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 848w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!aIiV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2a705cf-1127-4090-9623-eb59c73015ca_5184x3456.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@_louisreed?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Louis Reed</a> on <a href="https://unsplash.com/photos/close-up-photo-of-black-and-white-home-appliance-53jnUK5LqEY?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption></figure></div><p>Chcia&#322;em zacz&#261;&#263; na pocz&#261;tek od czego&#347; w miar&#281; prostego i nie obci&#261;&#380;aj&#261;cego przy okazji nadmiernie bud&#380;etu. Celem by&#322;y zakupy za ok. 500 z&#322; pozwalaj&#261;ce stworzy&#263; w przysz&#322;o&#347;ci jaki&#347; prosty system po&#322;&#261;czonych ze sob&#261; urz&#261;dze&#324;, kt&#243;re b&#281;d&#261; zbiera&#322;y r&#243;&#380;nego typu dane i dzieli&#322;y si&#281; nimi mi&#281;dzy sob&#261;.</p><p>Oto lista urz&#261;dze&#324; i element&#243;w, kt&#243;re b&#281;d&#261; baz&#261; do moich test&#243;w:</p><ul><li><p>Arduino Uno Rev3</p></li><li><p>2 x P&#322;ytka ESP32-DevKitC</p></li><li><p>Raspberry Pi Zero 2 WH 512MB RAM - WiFi + BT 4.2</p></li><li><p>Czujniki (BMP280, DHT11, LM35, fotorezystor)</p></li><li><p>Podstawowe komponenty elektroniczne (p&#322;ytka stykowa, diody LED, rezystory, tranzystory, potencjometry, przyciski tact-switch)</p></li><li><p>Modu&#322;y wspomagaj&#261;ce &#8211; wy&#347;wietlacz LCD, sterownik silnika L293D, ekspander PCF8574, rejestr przesuwny 74HC595</p></li><li><p>Komplet przewod&#243;w po&#322;&#261;czeniowych</p></li></ul><h1>Tematy</h1><p>B&#281;d&#281; opisywa&#322;, czego sam si&#281; ucz&#281; przechodz&#261;c &#347;cie&#380;k&#281; od &#8220;zera&#8221;. Chocia&#380; jestem elektronikiem i pracuj&#281; z urz&#261;dzeniami IoT, to jednak b&#281;d&#281; pokazywa&#322; &#347;cie&#380;k&#281;, kt&#243;r&#261; musi przej&#347;&#263; osoba kompletnie niemaj&#261;ca poj&#281;cia o embedded i IoT, ale maj&#261;ca do&#347;wiadczenie w IT &#8211; w testowaniu, programowaniu lub innych technicznych aspektach pracy z dostarczaniem oprogramowania. Chcia&#322;bym, &#380;eby osoba maj&#261;ca do&#347;wiadczenie z aplikacjami webowymi i mobilnymi mog&#322;a dzi&#281;ki wiedzy zgromadzonej na tym blogu sta&#263; si&#281; specjalist&#261; od bezpiecze&#324;stwa IoT i nie ba&#322;a si&#281; pracowa&#263; z fizycznymi urz&#261;dzeniami. Nie b&#281;d&#281; si&#281; jednak zag&#322;&#281;bia&#322; w tematy elektroniki czy embedded, kt&#243;re nie s&#261; potrzebne do zrozumienia podstaw bezpiecze&#324;stwa IoT. Pocz&#261;tkowo temat&#243;w zwi&#261;zanych z samym embedded b&#281;dzie wi&#281;cej, a z czasem liczba artyku&#322;&#243;w zwi&#261;zanych z IoT i bezpiecze&#324;stwem b&#281;dzie wzrasta&#263;.</p><p>Wiedz&#281; b&#281;d&#281; zdobywa&#322; sukcesywnie przez szukanie i czytanie tre&#347;ci ju&#380; istniej&#261;cych w internecie, branie udzia&#322;u w meetupach i konferencjach bran&#380;owych oraz doszkalanie si&#281; podczas kurs&#243;w zg&#322;&#281;biaj&#261;cych temat. Wierz&#281;, &#380;e na swojej drodze uda mi si&#281; r&#243;wnie&#380; znale&#378;&#263; osoby &#8211; specjalist&#243;w z bran&#380;y, kt&#243;re b&#281;d&#261; gotowe podzieli&#263; si&#281; swoim do&#347;wiadczeniem i wiedz&#261;. Wszystko, co odkryj&#281;, b&#281;d&#281; opisywa&#322; tutaj na blogu. Pocz&#261;tkowo przyj&#261;&#322;em te&#380; pewn&#261; kolejno&#347;&#263; temat&#243;w i b&#281;d&#281; sukcesywnie pod&#261;&#380;a&#322; t&#261; &#347;cie&#380;k&#261;, ale poniewa&#380; sam si&#281; ucz&#281;, nie jest to wyryte w kamieniu i b&#281;d&#281; j&#261; dostosowywa&#322; w trakcie (obecnie nie wiem, czego nie wiem &#8212; a to sprawia, &#380;e mo&#380;e si&#281; tam pojawi&#263; wiele innych potrzebnych element&#243;w lub trzeba b&#281;dzie j&#261; nieco przeprojektowa&#263;). Na obecn&#261; chwil&#281; wygl&#261;da ona nast&#281;puj&#261;co:</p><p><strong>Embedded od strony firmware&#8217;u i security &#8211;</strong><span>&nbsp;b&#281;dzie o tym, jak jest zbudowany hardware i jak wsp&#243;&#322;pracuje z firmware&#8217;em oraz gdzie s&#261; s&#322;abe punkty, mog&#261;ce wp&#322;ywa&#263; na bezpiecze&#324;stwo.</span> Z temat&#243;w na tym etapie na pewno b&#281;d&#261; architektura mikrokontrolera, GPIO i elektronika, protoko&#322;y sprz&#281;towe, troch&#281; o C/C++ dla czytania firmware&#8217;u. B&#281;d&#281; stara&#322; si&#281; te&#380; zawsze przy tematach pokazywa&#263; praktyczne eksperymenty pozwalaj&#261;ce zrobi&#263; co&#347; samemu i zweryfikowa&#263;, jak w praktyce wygl&#261;da omawiana teoria.</p><p><strong>Linux i tematy zwi&#261;zane z komunikacj&#261; sieciow&#261; -</strong> przyjrzymy si&#281; systemowi Linux i protoko&#322;om sieciowym, porozmawiamy o modelu OSI oraz TCP/IP.</p><p><strong>Protoko&#322;y w IoT -</strong> b&#281;dzie o protoko&#322;ach MQTT/BLE/CoAP a tak&#380;e o bezpiecze&#324;stwie WiFi, provisioning i OTA</p><p><strong>Podstawy bezpiecze&#324;stwa -</strong> m. in. OWASP IoT Top 10, kryptografia, uwierzytelnianie, analiza firmware&#8217;u, bezpiecze&#324;stwo API dla backendu IoT, atakowanie powierzchni hardware&#8217;u, spr&#243;bujemy stworzy&#263; &#347;rodowisko z podatno&#347;ciami bezpiecze&#324;stwa i zaatakujemy jego infrastruktur&#281;. Nast&#281;pnie dowiemy si&#281;, jak broni&#263; si&#281; przed takimi atakami.</p><p><strong>Automatyzacja security -</strong> u&#380;ywanie istniej&#261;cych narz&#281;dzi i pisanie w&#322;asnych skrypt&#243;w, automatyzacja w r&#243;&#380;nych warstwach podatnych na ataki oraz bezpiecze&#324;stwo w CI/CD</p><p>Powy&#380;sza lista to taka bardzo og&#243;lna &#347;cie&#380;ka. Opr&#243;cz wiedzy teoretycznej b&#281;d&#281; pracowa&#322; na fizycznym sprz&#281;cie, kt&#243;ry pewnie b&#281;dzie rozbudowywany o nowe urz&#261;dzenia i modu&#322;y.</p><p>To tylko og&#243;lny skr&#243;t temat&#243;w, kt&#243;re chc&#281; porusza&#263;, tak wi&#281;c je&#347;li te tematy s&#261; dla Ciebie interesuj&#261;ce, zach&#281;cam do subskrybowania i pozostania w kontakcie.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://testspective.com/subscribe?&quot;,&quot;text&quot;:&quot;Subskrybuj&quot;,&quot;language&quot;:&quot;pl&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Podobaj&#261; Ci si&#281; powy&#380;sze tematy i chcesz by&#263; na bie&#380;&#261;co?</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Wpisz sw&#243;j adres e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subskrybuj"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>