{"id":503196,"date":"2026-11-14T11:13:28","date_gmt":"2026-11-14T08:13:28","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=503196"},"modified":"2026-11-14T11:13:28","modified_gmt":"2026-11-14T08:13:28","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=503196","title":{"rendered":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0432\u043e\u0437\u0434\u0443\u0445\u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043b \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e HTTP: \u043a\u0430\u043a \u044f \u0432\u044b\u0433\u043d\u0430\u043b \u0438\u0437 \u043d\u0435\u0433\u043e \u043e\u0431\u043b\u0430\u043a\u043e Coway"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/ab\/ad\/24\/abad245715aa706a803861aa725a1edd.jpg\" alt=\"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c Coway Airmega IconS\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/ab\/ad\/24\/abad245715aa706a803861aa725a1edd.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/ab\/ad\/24\/abad245715aa706a803861aa725a1edd.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c Coway Airmega IconS<\/figcaption><\/div>\n<\/figure>\n<p><em>\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0432\u043f\u043e\u043b\u043d\u0435 \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u044b\u0439, \u0430 \u0432\u043e\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a \u043d\u0435\u043c\u0443 \u043c\u043d\u0435 \u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f.<\/em><\/p>\n<p>\u041d\u0430 \u0434\u0432\u043e\u0440\u0435 2017 \u0433\u043e\u0434. \u0417\u0430\u043f\u0430\u0434\u043d\u043e\u0435 \u043f\u043e\u0431\u0435\u0440\u0435\u0436\u044c\u0435 \u0421\u0428\u0410 \u0433\u043e\u0434 \u0437\u0430 \u0433\u043e\u0434\u043e\u043c \u043d\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u043b\u0435\u0441\u043d\u044b\u0435 \u043f\u043e\u0436\u0430\u0440\u044b. \u0414\u043d\u0451\u043c \u043d\u0435\u0431\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/53\/69\/01\/536901b4e2b9ffd2b74406687296c2b2.jpg\" alt=\"\u0413\u043e\u0440\u043e\u0434 \u043f\u043e\u0434 \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u043d\u0435\u0431\u043e\u043c\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/53\/69\/01\/536901b4e2b9ffd2b74406687296c2b2.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/53\/69\/01\/536901b4e2b9ffd2b74406687296c2b2.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0413\u043e\u0440\u043e\u0434 \u043f\u043e\u0434 \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u043d\u0435\u0431\u043e\u043c<\/figcaption><\/div>\n<\/figure>\n<p>\u041c\u043e\u0439 \u0434\u043e\u043c, \u043a\u0430\u043a \u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u0434\u043e\u043c\u0430 \u0432 \u0440\u0430\u0439\u043e\u043d\u0435 \u0437\u0430\u043b\u0438\u0432\u0430 \u0421\u0430\u043d-\u0424\u0440\u0430\u043d\u0446\u0438\u0441\u043a\u043e, \u043d\u0435 \u0443\u0442\u0435\u043f\u043b\u0451\u043d \u0438 \u0442\u043e\u043b\u043a\u043e\u043c \u043d\u0435 \u0433\u0435\u0440\u043c\u0435\u0442\u0438\u0447\u0435\u043d. \u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u0434\u044b\u0445\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u043a\u043e\u043f\u043e\u0442\u0438, \u043c\u043d\u043e\u0433\u0438\u0435 \u0442\u043e\u0433\u0434\u0430 \u0441\u0442\u0430\u043b\u0438 \u043f\u043e\u043a\u0443\u043f\u0430\u0442\u044c \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0438 \u0432\u043e\u0437\u0434\u0443\u0445\u0430 \u0432\u0440\u043e\u0434\u0435 \u044d\u0442\u043e\u0433\u043e:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/18\/fb\/bb\/18fbbbe2dcc2681cbee5d1c6a11dfdde.jpg\" alt=\"\u0420\u0435\u043a\u043b\u0430\u043c\u0430 Coway: \u0447\u0451\u0440\u043d\u044b\u0439 \u0438 \u0431\u0435\u043b\u044b\u0439 Airmega\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/18\/fb\/bb\/18fbbbe2dcc2681cbee5d1c6a11dfdde.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/18\/fb\/bb\/18fbbbe2dcc2681cbee5d1c6a11dfdde.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0435\u043a\u043b\u0430\u043c\u0430 Coway: \u0447\u0451\u0440\u043d\u044b\u0439 \u0438 \u0431\u0435\u043b\u044b\u0439 Airmega<\/figcaption><\/div>\n<\/figure>\n<p><em>\u041f\u043e\u0447\u0442\u0435\u043d\u043d\u044b\u0439 Coway Airmega<\/em><\/p>\n<p>\u041f\u043e \u0441\u0443\u0442\u0438 \u044d\u0442\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0432 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u043e\u043c \u043a\u043e\u0440\u043f\u0443\u0441\u0435 \u0441 HEPA-\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u043c \u0438 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u043c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u0434\u0443\u0445\u0430. \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u0430 \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u043a\u0435: \u043f\u0440\u0438 \u043f\u043b\u043e\u0445\u043e\u043c \u0432\u043e\u0437\u0434\u0443\u0445\u0435 \u043e\u043d \u0441\u0430\u043c \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442 \u043e\u0431\u043e\u0440\u043e\u0442\u044b. \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043e\u043d \u043d\u0435\u043a\u0440\u0430\u0441\u0438\u0432\u043e, \u043d\u043e \u0437\u0434\u0435\u0441\u044c \u043e\u043d \u0441\u0442\u043e\u0438\u0442 \u043f\u043e\u0447\u0442\u0438 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0434\u043e\u043c\u0435, \u0438, \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0435\u0433\u043e \u0443\u0436\u0435 \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u0435\u0442. \u0418, \u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u043e\u0441\u0442\u0438 \u0440\u0430\u0434\u0438, \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442: \u0432\u043e\u0437\u0434\u0443\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0447\u0438\u0449\u0435.<\/p>\n<p>\u0421\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0441\u0442\u0430\u043b \u0443 \u043d\u0430\u0441 \u0434\u043e\u043c\u0430 \u043d\u0435\u0437\u0430\u043c\u0435\u043d\u0438\u043c\u044b\u043c: \u0436\u0435\u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u043d\u043e\u0447\u044c \u043d\u0430 \u043f\u043e\u043b\u043d\u0443\u044e \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0431\u0435\u043b\u043e\u0433\u043e \u0448\u0443\u043c\u0430. \u042f \u043f\u0440\u0438\u0432\u044b\u043a, \u0438 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0430\u043c \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0435 \u0437\u0430\u0441\u044b\u043f\u0430\u044e.<\/p>\n<h3>\u041a\u043d\u043e\u043f\u043a\u0430 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb<\/h3>\n<p>\u041e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u0443 \u043d\u0430\u0441 \u0443\u043c\u043d\u043e\u0435 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043a Apple Home. \u041f\u0435\u0440\u0435\u0434 \u0441\u043d\u043e\u043c \u044f \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u0430\u0436\u0438\u043c\u0430\u044e \u043a\u043d\u043e\u043f\u043a\u0443 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb, \u0438 \u0432\u0435\u0441\u044c \u0441\u0432\u0435\u0442 \u0433\u0430\u0441\u043d\u0435\u0442. \u041c\u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u0442\u044c \u043a \u043d\u0435\u0439 \u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440: \u043d\u0430\u0436\u0430\u043b \u043a\u043d\u043e\u043f\u043a\u0443, \u0441\u0432\u0435\u0442 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u043b\u0441\u044f, \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0440\u0430\u0441\u043a\u0440\u0443\u0442\u0438\u043b\u0441\u044f \u0434\u043e \u0442\u043e\u0439 \u0433\u0440\u043e\u043c\u043a\u043e\u0441\u0442\u0438 \u0431\u0435\u043b\u043e\u0433\u043e \u0448\u0443\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043b\u044e\u0431\u0438\u0442 \u0436\u0435\u043d\u0430.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/31\/8f\/fb\/318ffb731c02abce63913ada75c34dcf.jpg\" alt=\"\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u0446\u0435\u043d\u044b \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb \u0432 Apple Home\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/31\/8f\/fb\/318ffb731c02abce63913ada75c34dcf.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/31\/8f\/fb\/318ffb731c02abce63913ada75c34dcf.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u0446\u0435\u043d\u044b \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb \u0432 Apple Home<\/figcaption><\/div>\n<\/figure>\n<p>\u0423 \u0441\u0442\u0430\u0440\u043e\u0433\u043e Airmega \u043d\u0435 \u0431\u044b\u043b\u043e Wi-Fi, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u043a Apple Home \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u043e. \u041a\u043e\u0433\u0434\u0430 \u043e\u043d \u0432 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0446\u043e\u0432 \u0441\u043b\u043e\u043c\u0430\u043b\u0441\u044f, \u044f \u043a\u0443\u043f\u0438\u043b Coway Airmega IconS (\u0441\u0435\u0439\u0447\u0430\u0441 \u0435\u0433\u043e \u0443\u0436\u0435 \u0441\u043d\u044f\u043b\u0438 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430). \u042d\u0442\u043e \u0432\u0441\u0451 \u0442\u043e\u0442 \u0436\u0435 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0441 HEPA-\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u043c, \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0434\u043e\u0440\u043e\u0436\u0435, \u0441\u0442\u0438\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0434 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0441\u043a\u0443\u044e \u043c\u0435\u0431\u0435\u043b\u044c \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u044b \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u0432\u0435\u043a\u0430 \u0438, \u0433\u043b\u0430\u0432\u043d\u043e\u0435, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u043f\u043e Wi-Fi (\u0431\u043e\u043b\u0435\u0435 \u0438\u043b\u0438 \u043c\u0435\u043d\u0435\u0435).<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/41\/5b\/e4\/415be46b322694161922c89f9101b486.jpg\" alt=\"\u0411\u0435\u0436\u0435\u0432\u044b\u0439 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u044b\u0445 \u043d\u043e\u0436\u043a\u0430\u0445 \u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c Coway\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/41\/5b\/e4\/415be46b322694161922c89f9101b486.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/41\/5b\/e4\/415be46b322694161922c89f9101b486.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0411\u0435\u0436\u0435\u0432\u044b\u0439 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u044b\u0445 \u043d\u043e\u0436\u043a\u0430\u0445 \u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c Coway<\/figcaption><\/div>\n<\/figure>\n<p><em>Coway Airmega IconS<\/em><\/p>\n<h3>\u0413\u043e\u0442\u043e\u0432\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f Home Assistant<\/h3>\n<p>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 Coway \u0434\u043b\u044f iPhone \u2014 \u043a\u043b\u0430\u0441\u0441\u0438\u043a\u0430 IoT. \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0446\u0435\u043b\u0443\u044e \u0432\u0435\u0447\u043d\u043e\u0441\u0442\u044c \u0438 \u043f\u043e\u0447\u0442\u0438 \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u0440\u043e\u0441\u0438\u0442 \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u043e\u0434\u0438\u043d \u0441\u043c\u0435\u043b\u044c\u0447\u0430\u043a \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b \u044d\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b <a href=\"https:\/\/github.com\/RobertD502\/home-assistant-iocare\" rel=\"noopener nofollow\">\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f Home Assistant<\/a>. \u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f, \u043f\u043e \u0441\u0443\u0442\u0438, \u043f\u0440\u0438\u0442\u0432\u043e\u0440\u044f\u0435\u0442\u0441\u044f \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c: \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u043b\u0430\u043a\u043e Coway, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043e\u0442\u0442\u0443\u0434\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0443. Home Assistant \u043f\u0440\u043e\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0451 \u044d\u0442\u043e \u0432 Apple Home, \u0438 \u0433\u043e\u0442\u043e\u0432\u043e.<\/p>\n<pre><code>\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0441\u0435\u0440\u0432\u0435\u0440\u044b Coway \u0433\u0434\u0435-\u0442\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)        \u2191 \u043a\u043e\u043c\u0430\u043d\u0434\u044b  \u2193 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435          \u2191 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435  \u2193 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u041c\u043e\u0439 \u0434\u043e\u043c: Home Assistant (\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f IoCare)    \u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS, Wi-Fi)        \u2193Apple Home (\u0442\u0430 \u0441\u0430\u043c\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper\"><\/span><\/a><\/div><\/pre>\n<h3>\u0417\u0430\u0447\u0435\u043c \u0443\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0437 \u043e\u0431\u043b\u0430\u043a\u0430<\/h3>\n<p>\u041c\u0438\u043d\u0443\u0441 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0442\u044b \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0437\u0430\u0432\u0438\u0441\u0438\u0448\u044c \u043e\u0442 \u043c\u0438\u043b\u043e\u0441\u0442\u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430 Coway (\u0442\u043e\u0447\u043d\u0435\u0435, \u043e\u0442 \u0435\u0451 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f). \u041f\u043e\u0445\u043e\u0436\u0435, \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0440\u0430\u0437 \u0438\u043b\u0438 \u0434\u0432\u0430 \u0432 \u0433\u043e\u0434 \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u0434\u0430 \u043b\u043e\u043c\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u0412\u043e\u0442 \u0447\u0442\u043e \u043b\u043e\u043c\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u043c\u043e\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u0438:<\/p>\n<ul>\n<li>\n<p>Coway \u043d\u0435 \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0434\u043e\u043b\u0431\u0438\u0442 \u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u044b, \u0438 \u043e\u043d\u0438 \u0435\u0451 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b\u0438. \u041f\u043e\u0441\u043b\u0435 \u0434\u043e\u043b\u0433\u043e\u0433\u043e \u0441\u043f\u043e\u0440\u0430 \u0441 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e\u043c \u0432\u0441\u0451-\u0442\u0430\u043a\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u043b\u0438\u0441\u044c \u0435\u0451 \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>Coway \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043b\u0438 \u0435\u0433\u043e \u0438\u0437 IoCare \u0432 IoCare+, \u0442\u0430\u043a \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0442\u043e\u0436\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>Coway \u0441\u043b\u0435\u0433\u043a\u0430 \u043f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 \u0432\u0451\u0440\u0441\u0442\u043a\u0443 HTML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u043f\u0430\u0440\u0441\u0438\u0442, \u0438 \u043e\u043d\u0430 \u0441\u043b\u043e\u043c\u0430\u043b\u0430\u0441\u044c.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0435\u0440\u0432\u0435\u0440\u044b Coway \u0432\u0440\u0435\u043c\u044f \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043b\u0435\u0436\u0430\u043b\u0438, \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e \u0431\u044b\u043b\u043e \u043d\u0435\u043b\u044c\u0437\u044f.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0434\u043d\u0430\u0436\u0434\u044b Coway \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043c\u043e\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442 \u0437\u0430 \u0441\u0442\u0430\u0440\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438. \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0434\u0435\u043b\u044c \u044f \u043d\u0435 \u043c\u043e\u0433 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e, \u043f\u043e\u043a\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043d\u0438\u043c\u0430\u043b\u0430 \u0431\u0430\u043d.<\/p>\n<\/li>\n<\/ul>\n<p>\u041a \u0442\u043e\u043c\u0443 \u0436\u0435 \u0432\u0440\u044f\u0434 \u043b\u0438 Coway \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 \u0432\u0435\u0447\u043d\u043e. \u041f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u044e, \u0447\u0442\u043e \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e, \u043a\u0430\u043a \u0438 \u0432\u0441\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0438 IoT, \u043e\u043d\u0438 \u043b\u0438\u0431\u043e \u0441\u0434\u0435\u043b\u0430\u044e\u0442 \u0435\u0433\u043e \u043f\u043b\u0430\u0442\u043d\u044b\u043c, \u043b\u0438\u0431\u043e \u0437\u0430\u043a\u0440\u043e\u044e\u0442. \u041c\u043e\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0443\u0436\u0435 \u0441\u043d\u044f\u0442\u0430 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430 (\u0445\u043e\u0442\u044f \u0434\u0440\u0443\u0433\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441 Wi-Fi \u043f\u0440\u043e\u0434\u0430\u044e\u0442\u0441\u044f, \u0442\u0430\u043a \u0447\u0442\u043e \u043a\u0442\u043e \u0437\u043d\u0430\u0435\u0442).<\/p>\n<h3>\u041b\u0430\u0437\u0435\u0439\u043a\u0430<\/h3>\n<p>\u041f\u0440\u0438\u0437\u043d\u0430\u044e\u0441\u044c, \u044f \u043b\u0435\u043d\u0438\u043b\u0441\u044f. \u0413\u043e\u0434\u0430\u043c\u0438 \u043e\u0442\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b \u043f\u043e\u043f\u044b\u0442\u043a\u0443 \u0438\u0437\u0431\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u043e\u0442 \u043e\u0431\u043b\u0430\u043a\u0430 Coway: \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e-\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u044f\u0436\u0435\u043b\u043e. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a coway.com (\u0438\u043b\u0438 \u043a\u0443\u0434\u0430 \u0442\u0430\u043c \u0435\u0449\u0451) \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442, \u0447\u0442\u043e SSL-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0430\u043b\u0438\u0434\u0435\u043d. \u041f\u043e\u0434\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 \u0442\u0430\u043a\u0443\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u044f, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435 \u0441\u043c\u043e\u0433\u0443, \u0438 \u043a \u043c\u043e\u0435\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f.<\/p>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0442\u044c \u0441\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0430\u0442\u0430\u043a\u0438 \u00ab\u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435\u00bb (MitM) \u2014 \u0442\u0430 \u0435\u0449\u0451 \u043c\u043e\u0440\u043e\u043a\u0430. \u0412\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Wi-Fi, \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0434\u0451\u0442 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u0430 \u043a\u0443\u0447\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0444\u0430\u0439\u0440\u0432\u043e\u043b\u0430, \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0442\u0440\u0430\u0444\u0438\u043a. \u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0433\u043e (\u044f \u0442\u0430\u043a\u043e\u0435 \u0443\u0436\u0435 \u0434\u0435\u043b\u0430\u043b), \u043d\u043e \u0432\u043e\u0437\u043d\u0438 \u043c\u043d\u043e\u0433\u043e, \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u0441\u0451 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u043e. \u0410 \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0435\u043d\u0434 \u0433\u043e\u0442\u043e\u0432, \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0448\u0430\u0433.<\/p>\n<p>\u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0437\u0430 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\u0441\u044c \u0434\u0432\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u0432\u0435\u0449\u0438.<\/p>\n<p>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043d\u0435\u0434\u0430\u0432\u043d\u043e (\u0432 \u043e\u043a\u0442\u044f\u0431\u0440\u0435 2026 \u0433\u043e\u0434\u0430) \u0441\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e eMudhra, \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0445 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0445 \u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0434\u043b\u044f \u0447\u0430\u0441\u0442\u0438 \u0441\u0432\u043e\u0438\u0445 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u0430\u0431\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440.<\/p>\n<blockquote>\n<p><strong>Ian Carroll<\/strong> (<a href=\"https:\/\/x.com\/iangcarroll\/status\/2112593513913463094\" rel=\"noopener nofollow\">@iangcarroll<\/a>), 20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026: \u00ab\u0411\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0435 \u0434\u043d\u0438 \u0438\u043b\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0423\u0426 \u0435\u0441\u0442\u044c \u0443 \u043b\u044e\u0431\u043e\u0433\u043e \u2014 \u0441\u043f\u0430\u0441\u0438\u0431\u043e eMudhra. \u0421\u0430\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0440\u0430\u0437\u0432\u043b\u0435\u043a\u0430\u0442\u044c\u0441\u044f \u0441 MiTM \u043d\u0435\u0441\u0433\u043e\u0432\u043e\u0440\u0447\u0438\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432!\u00bb<\/p>\n<\/blockquote>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/d4\/e7\/ec\/d4e7ecc6cfa889a906483b221ce12ca8.jpg\" alt=\"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0423\u0426 eMudhra \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 d \u0438\u0445 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439: \u043a\u0440\u043e\u0448\u0435\u0447\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0432\u0440\u043e\u0434\u0435 156, 230, 115, 56, 155 \u0438 4\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/d4\/e7\/ec\/d4e7ecc6cfa889a906483b221ce12ca8.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/d4\/e7\/ec\/d4e7ecc6cfa889a906483b221ce12ca8.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0423\u0426 eMudhra \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 d \u0438\u0445 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439: \u043a\u0440\u043e\u0448\u0435\u0447\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0432\u0440\u043e\u0434\u0435 156, 230, 115, 56, 155 \u0438 4<\/figcaption><\/div>\n<\/figure>\n<p>\u0422\u0430\u043a \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043d\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u043b\u043e\u0441\u044c, \u0418 \u0432 \u043d\u0451\u043c \u0437\u0430\u0448\u0438\u0442\u044b \u043a\u043e\u0440\u043d\u0435\u0432\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u0418 \u043e\u043d\u043e \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442 (pinning) \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u0442\u043e\u2026 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u043e \u0438 \u0435\u0441\u0442\u044c \u043b\u0430\u0437\u0435\u0439\u043a\u0430. \u041c\u043d\u043e\u0433\u043e\u0432\u0430\u0442\u043e \u00ab\u0435\u0441\u043b\u0438\u00bb, \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u043d\u0435\u0442 \u0433\u0440\u0443\u0431\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u043e\u0439 \u043e\u043f\u043e\u0440\u044b.<\/p>\n<p>\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0418\u0418. LLM \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u0441\u0451, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u043b\u044f MitM, \u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043a \u0440\u0430\u0437\u0431\u043e\u0440\u0443 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440. \u041f\u0440\u0438\u0447\u0451\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0431\u0435\u0437 \u043f\u0440\u0438\u0441\u043c\u043e\u0442\u0440\u0430 \u0438 \u0437\u0430 \u0441\u0447\u0438\u0442\u0430\u043d\u044b\u0435 \u043c\u0438\u043d\u0443\u0442\u044b.<\/p>\n<p>\u0412\u0441\u0442\u0430\u0432 \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a \u043e\u043d \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f, \u0430 \u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441 \u043d\u0430\u043c\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043b\u0430\u043a\u0430.<\/p>\n<h3>\u041d\u0430\u0448 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435<\/h3>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0441\u043e\u0431\u0440\u0430\u043b \u0442\u0430\u043a\u0443\u044e \u0441\u0445\u0435\u043c\u0443:<\/p>\n<pre><code>\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS)    \u2502 Wi-FiRaspberry Pi \u2014 \u0442\u043e\u0447\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 Wi-Fi (Pi \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 AP, \u0441\u0432\u043e\u044f \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0435\u0442\u044c),    \u2502          \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0432 mitmproxy, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u0438 \u043f\u0438\u0448\u0435\u0442 \u0435\u0433\u043e \u0432 \u043b\u043e\u0433\u041c\u043e\u0439 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 (\u043e\u0431\u044b\u0447\u043d\u0430\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0441\u0435\u0442\u044c)    \u2502\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e: \u0443 Raspberry Pi \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u0430\u043d\u0442\u0435\u043d\u043d\u0430 \u0434\u043e\u0440\u043e\u0436\u043a\u043e\u0439 \u043d\u0430 \u043f\u043b\u0430\u0442\u0435, \u0438 \u0441\u0438\u0433\u043d\u0430\u043b \u0443 \u043d\u0435\u0451 \u0441\u043b\u0430\u0431\u044b\u0439. \u041f\u043e\u043a\u0430 Pi \u0441\u0442\u043e\u044f\u043b \u0432 \u043e\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u0435 \u0441 \u0440\u043e\u0443\u0442\u0435\u0440\u043e\u043c, \u0434\u043e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u043e\u043d \u043d\u0435 \u0434\u043e\u0431\u0438\u0432\u0430\u043b. \u041c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0432 \u043a\u043e\u043c\u043d\u0430\u0442\u0443 \u0441 \u0440\u043e\u0443\u0442\u0435\u0440\u043e\u043c, \u043d\u043e \u0437\u0430\u0447\u0435\u043c, \u0435\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0443 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c?<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/1c\/64\/ed\/1c64ed4445194860fa64cee0ba28525a.jpg\" alt=\"\u041d\u043e\u0443\u0442\u0431\u0443\u043a, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u0438\u043a USB-C \u043d\u0430 Ethernet, Raspberry Pi \u0438 USB-C \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0435 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/1c\/64\/ed\/1c64ed4445194860fa64cee0ba28525a.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/1c\/64\/ed\/1c64ed4445194860fa64cee0ba28525a.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041d\u043e\u0443\u0442\u0431\u0443\u043a, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u0438\u043a USB-C \u043d\u0430 Ethernet, Raspberry Pi \u0438 USB-C \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0435 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c<\/figcaption><\/div>\n<\/figure>\n<p>Raspberry Pi \u0441\u0432\u043e\u0438\u043c \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u0435\u043c Wi-Fi \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u043e\u0447\u043a\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441 \u044d\u0442\u0438\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043f\u043e Wi-Fi \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u0435\u043c\u0443 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u0435\u0440\u0435\u043d\u0451\u0441 Pi \u0432 \u043a\u043e\u043c\u043d\u0430\u0442\u0443 \u0441 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u0432\u043e\u0442\u043a\u043d\u0443\u043b \u0435\u0433\u043e Ethernet-\u043f\u043e\u0440\u0442 \u0432 \u043d\u043e\u0443\u0442\u0431\u0443\u043a, \u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u0443\u0436\u0435 \u043f\u043e Wi-Fi \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0435\u0433\u043e \u0441 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0441\u0435\u0442\u044c\u044e:<\/p>\n<pre><code>\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS)    \u2502 Wi-Fi, \u0432 \u0442\u043e\u0439 \u0436\u0435 \u043a\u043e\u043c\u043d\u0430\u0442\u0435Raspberry Pi \u2014 \u0442\u043e\u0447\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 Wi-Fi (\u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0435\u0442\u044c),    \u2502          \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0432 mitmproxy (\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \u0438 \u043b\u043e\u0433)    \u2502 Ethernet\u041c\u043e\u0439 \u043d\u043e\u0443\u0442\u0431\u0443\u043a (\u043e\u0431\u0449\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443: \u043c\u043e\u0441\u0442 Wi-Fi \u2194 Ethernet)    \u2502 Wi-Fi\u041c\u043e\u0439 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 (\u043e\u0431\u044b\u0447\u043d\u0430\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0441\u0435\u0442\u044c)    \u2502\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Pi.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/a3\/e0\/fc\/a3e0fc0fc72b7fe535b7867830020122.jpg\" alt=\"\u0427\u0430\u0442 \u0441 Claude: \u043f\u0440\u043e\u0441\u044c\u0431\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Pi \u043a\u0430\u043a \u0442\u043e\u0447\u043a\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0441 mitmproxy \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0441 \u043f\u043e\u043c\u0435\u0442\u043a\u043e\u0439 Category: cyber\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/a3\/e0\/fc\/a3e0fc0fc72b7fe535b7867830020122.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/a3\/e0\/fc\/a3e0fc0fc72b7fe535b7867830020122.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0427\u0430\u0442 \u0441 Claude: \u043f\u0440\u043e\u0441\u044c\u0431\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Pi \u043a\u0430\u043a \u0442\u043e\u0447\u043a\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0441 mitmproxy \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0441 \u043f\u043e\u043c\u0435\u0442\u043a\u043e\u0439 Category: cyber<\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u0435 \u0431\u0435\u0440\u0443\u0441\u044c \u0441\u0443\u0434\u0438\u0442\u044c, \u0447\u0435\u0441\u0442\u043d\u043e \u043b\u0438 \u0442\u0430\u043a\u043e\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043d\u043e Claude \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043f\u0440\u043e\u0441\u044c\u0431\u0443 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0441\u044f, \u0434\u0430\u0436\u0435 \u00ab\u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u00bb.<\/p>\n<p>\u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0443 ChatGPT \u0442\u0430\u043a\u0438\u0445 \u0443\u0433\u0440\u044b\u0437\u0435\u043d\u0438\u0439 \u0441\u043e\u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u0442.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/73\/16\/78\/7316789285ba90381a1a350434d5d135.jpg\" alt=\"ChatGPT \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 Cyber\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/73\/16\/78\/7316789285ba90381a1a350434d5d135.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/73\/16\/78\/7316789285ba90381a1a350434d5d135.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>ChatGPT \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 Cyber<\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 nftables:<\/p>\n<pre><code>scottjg@pi:~ $ sudo nft -a list rulesettable inet mitmproxy_ap { # handle 8set client_interfaces { # handle 4type ifnameelements = { \"wlan0\" }}chain prerouting { # handle 1type nat hook prerouting priority dstnat; policy accept;meta nfproto ipv4 iifname @client_interfaces tcp dport { 80, 443 } counter packets 2 bytes 120 redirect to :8080 # handle 6}chain input { # handle 2type filter hook input priority filter - 10; policy accept;iifname != \"lo\" iifname != @client_interfaces tcp dport 8080 counter packets 0 bytes 0 reject with tcp reset # handle 7iifname @client_interfaces meta nfproto ipv6 counter packets 9 bytes 2397 drop # handle 8iifname @client_interfaces ct state established,related accept # handle 9iifname @client_interfaces udp dport { 53, 67 } accept # handle 11iifname @client_interfaces tcp dport { 53, 8080 } accept # handle 13iifname @client_interfaces ip protocol icmp accept # handle 14iifname @client_interfaces counter packets 23 bytes 4697 reject with icmpx admin-prohibited # handle 15}chain forward { # handle 3type filter hook forward priority filter - 10; policy accept;iifname @client_interfaces meta nfproto ipv6 counter packets 0 bytes 0 drop # handle 16oifname @client_interfaces meta nfproto ipv6 counter packets 0 bytes 0 drop # handle 17iifname @client_interfaces udp dport 443 counter packets 1 bytes 57 reject # handle 18iifname @client_interfaces oifname != \"eth0\" counter packets 0 bytes 0 reject with icmpx admin-prohibited # handle 19}}table ip nm-shared-wlan0 { # handle 12chain nat_postrouting { # handle 1type nat hook postrouting priority srcnat; policy accept;ip saddr 10.42.0.0\/24 ip daddr != 10.42.0.0\/24 masquerade # handle 2}chain filter_forward { # handle 3type filter hook forward priority filter; policy accept;ip daddr 10.42.0.0\/24 oifname \"wlan0\" ct state { established, related } accept # handle 5ip saddr 10.42.0.0\/24 iifname \"wlan0\" accept # handle 6iifname \"wlan0\" oifname \"wlan0\" accept # handle 7iifname \"wlan0\" reject # handle 8oifname \"wlan0\" reject # handle 9}}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e, \u043f\u0440\u0430\u0432\u0438\u043b\u043e <code>masquerade<\/code> \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Wi-Fi \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435, \u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u043e <code>redirect<\/code> \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 HTTP \u0438 HTTPS \u0432 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 <code>mitmproxy<\/code>.<\/p>\n<p>\u0422\u0430\u043c \u0436\u0435, \u043d\u0430 Pi, <code>mitmproxy<\/code> \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043e \u0441\u0432\u043e\u0438\u043c \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c <code>mitmweb<\/code> \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441 \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439:<\/p>\n<pre><code>mitmweb \\  --mode transparent --showhost \\  --listen-host 0.0.0.0 --listen-port 8080 \\  --web-host 127.0.0.1 --web-port 8081 \\  --set web_open_browser=false \\  --emudhra-old<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0414\u0430, \u0432 <code>mitmproxy<\/code> \u043f\u0440\u044f\u043c\u043e \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438 \u0435\u0441\u0442\u044c \u043e\u043f\u0446\u0438\u044f (<code>--emudhra-old<\/code>), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0441 \u043a\u043e\u0440\u043d\u0435\u0432\u044b\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u043c eMudhra.<\/p>\n<h3>\u041f\u043e\u0434\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u0435\u043c \u0437\u0430 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c<\/h3>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 iPhone \u0441\u0442\u0430\u043b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043a \u043d\u0430\u0448\u0435\u0439 \u0441\u0435\u0442\u0438 <code>Pi-MITM-Test<\/code>. \u041d\u0430 \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u043e, \u0447\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043d\u0435 \u0443\u0434\u0430\u043b\u0430\u0441\u044c. \u0417\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 <code>mitmproxy<\/code>:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/18\/45\/64\/1845642831d5316601b82606f1519b89.jpg\" alt=\"mitmweb \u0441 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c: \u043e\u0431\u044b\u0447\u043d\u044b\u0439 HTTP GET \u0437\u0430 AmazonRootCA1.pem\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/18\/45\/64\/1845642831d5316601b82606f1519b89.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/18\/45\/64\/1845642831d5316601b82606f1519b89.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>mitmweb \u0441 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c: \u043e\u0431\u044b\u0447\u043d\u044b\u0439 HTTP GET \u0437\u0430 AmazonRootCA1.pem<\/figcaption><\/div>\n<\/figure>\n<p>\u0418\u0442\u0430\u043a, \u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0442\u0430\u043a: \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0435 \u0441\u043c\u043e\u0433. \u041d\u043e \u0432 \u043d\u0430\u0448\u0443 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u043e\u043d \u044f\u0432\u043d\u043e \u043f\u043e\u043f\u0430\u043b, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043b <em>\u0437\u0430\u043f\u0440\u043e\u0441<\/em>.<\/p>\n<p>\u0418 \u0437\u0430\u043f\u0440\u043e\u0441 \u044d\u0442\u043e\u0442 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439. \u041f\u043e\u0445\u043e\u0436\u0435, \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0435\u0433\u043e \u0446\u0435\u043d\u0442\u0440\u0430 Amazon \u043f\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 HTTP. \u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0448\u043b\u0438 \u0434\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0433\u043e HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u0430. \u0415\u0441\u043b\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043d\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 eMudhra, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u044b \u0432\u044b\u0434\u0430\u0451\u043c \u0441\u0435\u0431\u044f \u0437\u0430 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u044b, \u0435\u0433\u043e HTTPS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0440\u0430\u043d\u044c\u0448\u0435 \u0438 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043d\u0435 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f.<\/p>\n<p><strong>\u0413\u0438\u043f\u043e\u0442\u0435\u0437\u0430:<\/strong> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e HTTP, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u0447\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 (\u043f\u043e\u043a\u0430 \u043d\u0435\u0432\u0438\u0434\u0438\u043c\u044b\u0435) HTTPS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f. \u0412\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u0435\u0432\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442 \u0432\u043e\u043e\u0431\u0449\u0435.<\/p>\n<p>\u0423 <code>mitmproxy<\/code> \u0435\u0441\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0434\u0441\u0443\u043d\u0435\u043c \u0432\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0423\u0426, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 <code>mitmproxy<\/code>. \u0415\u0441\u043b\u0438 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u0430 \u0432\u0435\u0440\u043d\u0430, \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u044d\u0442\u043e\u043c\u0443 \u0423\u0426, \u0438 \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a.<\/p>\n<pre><code>\"\"\"Serve this lab's public RSA CA only to the authorized Coway test device.\"\"\"from pathlib import Pathfrom mitmproxy import ctx, httpdef response(flow: http.HTTPFlow) -&gt; None:    if (        flow.client_conn.peername[0] == \"10.42.0.93\" # device IP        and flow.request.scheme == \"http\"        and flow.request.method == \"GET\"        and flow.request.pretty_host == \"rootca-fs.iocareus.com.s3.ap-northeast-2.amazonaws.com\"        and flow.request.path.split(\"?\", 1)[0] == \"\/AmazonRootCA1.pem\"        and flow.response is not None        and flow.response.status_code == 200    ):        certificate = Path(\"\/var\/lib\/mitmproxy-ap\/mitmproxy-ca-cert.pem\").read_bytes()        flow.response = http.Response.make(            200,            certificate,            {                \"Content-Type\": \"application\/x-pem-file\",                \"Cache-Control\": \"no-store\",            },        )        flow.metadata[\"coway_test_ca_served\"] = True        ctx.log.info(\"Served lab RSA CA to the Coway's HTTP CA bootstrap request\")<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0418 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0442\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e \u043a\u043e\u043d\u0446\u0430, \u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/ee\/40\/82\/ee4082b0ed1ac0aa7fc5954e64cf730f.jpg\" alt=\"mitmweb \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 HTTPS-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 Coway, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/ee\/40\/82\/ee4082b0ed1ac0aa7fc5954e64cf730f.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/ee\/40\/82\/ee4082b0ed1ac0aa7fc5954e64cf730f.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>mitmweb \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 HTTPS-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 Coway, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430<\/figcaption><\/div>\n<\/figure>\n<p><strong>\u0413\u0438\u043f\u043e\u0442\u0435\u0437\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b\u0430\u0441\u044c.<\/strong><\/p>\n<p>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0441\u043c\u043e\u0436\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043b\u0430\u043a\u0430 Coway IoCare. \u0417\u0430\u043e\u0434\u043d\u043e \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0442\u0440\u044e\u043a \u0441 eMudhra \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043d\u0443\u0436\u0435\u043d. \u0412\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 HTTP. \u041f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u0441\u0435\u0433\u0434\u0430.<\/p>\n<p>\u041d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043e\u0434\u043d\u043e\u0433\u043e: \u043d\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u044d\u0442\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d \u043d\u0438 \u0441\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u043d\u0438 \u0441 \u0447\u0435\u043c-\u043b\u0438\u0431\u043e \u0435\u0449\u0451, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u041d\u043e \u044d\u0442\u043e \u043b\u0435\u0433\u043a\u043e \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c. \u0415\u0441\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0430 Pi <code>tcpdump<\/code> \u0438 \u043f\u043e\u0449\u0451\u043b\u043a\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0430\u043c\u0438 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0432\u0438\u0434\u043d\u043e \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u043d\u0430 \u043f\u043e\u0440\u0442\u0443 8883 \u2014 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u0442\u0443 MQTT \u043f\u043e\u0432\u0435\u0440\u0445 TLS. MQTT \u2014 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0448\u0438\u043d\u044b \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439, \u0435\u0433\u043e \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0432 IoT-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445.<\/p>\n<p>\u0412\u0435\u0440\u043d\u0451\u043c\u0441\u044f \u043a <code>POST<\/code> \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432\u044b\u0448\u0435. \u0412\u043e\u0442 \u0447\u0442\u043e \u0432\u0435\u0440\u043d\u0443\u043b \u044d\u0442\u043e\u0442 \u0432\u044b\u0437\u043e\u0432 API:<\/p>\n<pre><code>{    \"header\": {        \"success\": true,        \"result\": \"S1000\",        \"message\": \"SUCCESS\"    },    \"payload\": {        \"macAddr\": \"&lt;redacted&gt;\",        \"certToken\": \"&lt;redacted&gt;\",        \"host\": \"a29vouc2qruduj-ats.iot.ap-northeast-2.amazonaws.com\",        \"port\": 8883,        \"serial\": \"&lt;redacted&gt;\",        \"certSvrUrl\": \"https:\/\/cert.iotp.coway.com\/iot\/v1\/cert\/r0\",        \"caUrl\": \"http:\/\/rootca-fs.iocareus.com.s3.ap-northeast-2.amazonaws.com\/AmazonRootCA1.pem\",        \"privateUrl\": \"https:\/\/icert-fs.iocareus.com\/&lt;redacted&gt;\/55d66923e9-private.pem.key\",        \"certUrl\": \"https:\/\/icert-fs.iocareus.com\/&lt;redacted&gt;\/55d66923e9-certificate.pem.crt\",        \"svcCode\": \"002AIR007\",        \"countryCd\": \"US\"    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f, \u043a\u0442\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0432\u044b\u0437\u043e\u0432, \u0442\u043e\u0442 \u0440\u0435\u0448\u0430\u0435\u0442, \u0441 \u043a\u0430\u043a\u0438\u043c\u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a MQTT-\u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0438 \u0433\u0434\u0435 \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f.<\/p>\n<p>\u041f\u043e\u043a\u0430 \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0435\u0449\u0451 \u043e\u0434\u0438\u043d \u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f <code>mitmproxy<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432 \u044d\u0442\u043e\u0442 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430\u0448 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447, \u0438 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c MQTT-\u0442\u0440\u0430\u0444\u0438\u043a. \u041a\u043e\u0434 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0434\u043b\u0438\u043d\u043d\u043e\u0432\u0430\u0442\u044b\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0435\u0433\u043e \u0441\u044e\u0434\u0430 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b, \u043d\u043e \u0418\u0418 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0435\u0433\u043e \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e. MQTT <code>mitmproxy<\/code> \u043d\u0435 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u0443\u0435\u0442, \u043d\u043e \u0441\u044b\u0440\u043e\u0439 \u043f\u043e\u0442\u043e\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u043e\u0436\u0435\u0442:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/8c\/0d\/71\/8c0d71fc9f7840aada8a5687d6c92577.jpg\" alt=\"mitmweb \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u044b\u0440\u043e\u0439 \u043f\u043e\u0442\u043e\u043a MQTT \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 AWS IoT, \u0432\u0438\u0434\u043d\u044b \u0438\u043c\u0435\u043d\u0430 \u0442\u043e\u043f\u0438\u043a\u043e\u0432 \u0432\u0440\u043e\u0434\u0435 IoCare\/MControl\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/8c\/0d\/71\/8c0d71fc9f7840aada8a5687d6c92577.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/8c\/0d\/71\/8c0d71fc9f7840aada8a5687d6c92577.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>mitmweb \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u044b\u0440\u043e\u0439 \u043f\u043e\u0442\u043e\u043a MQTT \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 AWS IoT, \u0432\u0438\u0434\u043d\u044b \u0438\u043c\u0435\u043d\u0430 \u0442\u043e\u043f\u0438\u043a\u043e\u0432 \u0432\u0440\u043e\u0434\u0435 IoCare\/MControl<\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u043a\u0430\u043a \u0441\u043c\u0435\u0441\u044c \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0439 \u0438 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u0430\u0431\u0440\u0430\u043a\u0430\u0434\u0430\u0431\u0440\u044b, \u043d\u043e \u044d\u0442\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 MQTT. \u041a\u043e\u0433\u0434\u0430 \u044f \u043c\u0435\u043d\u044f\u044e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0432\u0438\u0434\u043d\u043e, \u043a\u0430\u043a \u0441\u0435\u0440\u0432\u0435\u0440 Coway \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0435\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u041e\u0431\u044b\u0447\u043d\u043e \u044f \u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b \u044d\u0442\u043e \u0432 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0442\u0430\u0431\u043b\u0438\u0446\u0443: \u043a\u0430\u043a\u0430\u044f \u0430\u0431\u0440\u0430\u043a\u0430\u0434\u0430\u0431\u0440\u0430 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u043a\u043d\u043e\u043f\u043a\u0443 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u041d\u043e \u0442\u0435\u043f\u0435\u0440\u044c\u2026<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/d9\/c1\/bd\/d9c1bd9554b880ba5267240cdb2134c2.jpg\" alt=\"\u041c\u043e\u0451 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0418\u0418: \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043a\u043d\u043e\u043f\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u043d\u0430\u0436\u0438\u043c\u0430\u043b \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 (\u0440\u0435\u0436\u0438\u043c, \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c, \u0442\u0430\u0439\u043c\u0435\u0440, \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430, \u0446\u0438\u043a\u043b \u043f\u0440\u0435\u0444\u0438\u043b\u044c\u0442\u0440\u0430), \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0445 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 MQTT\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/d9\/c1\/bd\/d9c1bd9554b880ba5267240cdb2134c2.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/d9\/c1\/bd\/d9c1bd9554b880ba5267240cdb2134c2.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041c\u043e\u0451 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0418\u0418: \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043a\u043d\u043e\u043f\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u043d\u0430\u0436\u0438\u043c\u0430\u043b \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 (\u0440\u0435\u0436\u0438\u043c, \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c, \u0442\u0430\u0439\u043c\u0435\u0440, \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430, \u0446\u0438\u043a\u043b \u043f\u0440\u0435\u0444\u0438\u043b\u044c\u0442\u0440\u0430), \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0445 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 MQTT<\/figcaption><\/div>\n<\/figure>\n<p>\u2026\u0438 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/2b\/2a\/41\/2b2a416ab6b62729cb58d2bae8ae2ab2.jpg\" alt=\"\u041e\u0442\u0432\u0435\u0442 \u0418\u0418 \u0441 \u0437\u0430\u043c\u0435\u0442\u043a\u0430\u043c\u0438 \u043e \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0445: \u0442\u0430\u0439\u043c\u0435\u0440 \u0432 \u043c\u0438\u043d\u0443\u0442\u0430\u0445, \u0446\u0438\u043a\u043b \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u2014 \u043d\u0435\u0434\u0435\u043b\u0438, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 56, \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b \u0432 coway-command-map.json\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/2b\/2a\/41\/2b2a416ab6b62729cb58d2bae8ae2ab2.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/2b\/2a\/41\/2b2a416ab6b62729cb58d2bae8ae2ab2.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041e\u0442\u0432\u0435\u0442 \u0418\u0418 \u0441 \u0437\u0430\u043c\u0435\u0442\u043a\u0430\u043c\u0438 \u043e \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0445: \u0442\u0430\u0439\u043c\u0435\u0440 \u0432 \u043c\u0438\u043d\u0443\u0442\u0430\u0445, \u0446\u0438\u043a\u043b \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u2014 \u043d\u0435\u0434\u0435\u043b\u0438, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 56, \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b \u0432 coway-command-map.json<\/figcaption><\/div>\n<\/figure>\n<p>\u042d\u0442\u043e\u0433\u043e \u0443\u0436\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0432\u044b\u0434\u0430\u0451\u0442 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e, \u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 MQTT-\u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043a\u043e\u043c\u0430\u043d\u0434. \u0412 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u043e\u0431\u043b\u0430\u043a\u043e Coway \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u043f\u0430\u0434\u0430\u0435\u0442 \u0438\u0437 \u0441\u0445\u0435\u043c\u044b, \u043d\u043e \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u044b \u0432\u0441\u0451 \u0435\u0449\u0451 \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c Coway. \u0418 \u043d\u0430\u043c \u0432\u0441\u0451 \u0435\u0449\u0451 \u043d\u0443\u0436\u0435\u043d \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043d\u0430\u0434\u043e\u0435\u0434\u043b\u0438\u0432\u044b\u0439 MitM-\u0441\u0442\u0435\u043d\u0434, \u0447\u0442\u043e\u0431\u044b \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u043a \u043d\u0430\u043c, \u0430 \u043d\u0435 \u043a Coway.<\/p>\n<h3>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e Bluetooth<\/h3>\n<p>\u041f\u0440\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 Coway \u0438\u0449\u0435\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e Bluetooth. \u042f \u043d\u0430\u0434\u0435\u044f\u043b\u0441\u044f \u043d\u0430\u0439\u0442\u0438 \u0441\u043f\u043e\u0441\u043e\u0431 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u0430\u043c\u043e\u043c\u0443, \u0431\u0435\u0437 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0410 \u0435\u0441\u043b\u0438 \u043f\u043e\u0432\u0435\u0437\u0451\u0442, \u0442\u043e \u0438 \u043d\u0430\u0442\u043a\u043d\u0443\u0442\u044c\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 \u043d\u0430 \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u0435\u0449\u0451 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0435.<\/p>\n<p><a href=\"https:\/\/github.com\/scottjg\/switchmate\" rel=\"noopener nofollow\">\u0420\u0435\u0432\u0435\u0440\u0441\u043e\u043c Bluetooth-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u044f \u0443\u0436\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0441\u044f<\/a>. \u0420\u0430\u043d\u044c\u0448\u0435 \u043c\u043e\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u0431\u044b\u043b\u0430 \u0442\u0430\u043a\u043e\u0439: \u0432\u0437\u044f\u0442\u044c Android-\u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, <a href=\"https:\/\/github.com\/skylot\/jadx\" rel=\"noopener nofollow\">\u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c<\/a> \u0435\u0451 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u0440\u043f\u0435\u0442\u044c \u043d\u0430\u0434 \u043a\u043e\u0434\u043e\u043c. \u042d\u0442\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e, \u043a\u0430\u043a \u0437\u0432\u0443\u0447\u0438\u0442. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0447\u0430\u0441\u0442\u043e \u043e\u0431\u0444\u0443\u0441\u0446\u0438\u0440\u0443\u044e\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0438 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0440\u0443\u0434\u043d\u0435\u0435. \u041a \u0442\u043e\u043c\u0443 \u0436\u0435 \u0447\u0430\u0441\u0442\u044c \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 \u043d\u0435 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a \u0447\u0438\u0441\u0442\u043e, \u0438 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0447\u0438\u0442\u0430\u0442\u044c \u0441\u044b\u0440\u043e\u0439 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434.<\/p>\n<p>\u0418 \u0432\u0441\u0451 \u0436\u0435, \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u043e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u0432\u043e\u0437\u0438\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u043b\u044f iPhone. Android-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0438\u0448\u0443\u0442 \u043d\u0430 Java (\u0438\u043b\u0438 Kotlin), \u0430 Java-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442\u044c \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0438\u0437 Swift \u0438\u043b\u0438 Objective-C.<\/p>\n<p>\u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434: \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u044b\u0435 \u043b\u043e\u0433\u0438 Bluetooth \u0432 Android.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/02\/97\/62\/02976201002a8400e0f6855d52cff163.jpg\" alt=\"\u0424\u043e\u0442\u043e \u043c\u0435\u043d\u044e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 Android-\u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 \u0441 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u043c \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u043c HCI Bluetooth\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/02\/97\/62\/02976201002a8400e0f6855d52cff163.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/02\/97\/62\/02976201002a8400e0f6855d52cff163.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0424\u043e\u0442\u043e \u043c\u0435\u043d\u044e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 Android-\u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 \u0441 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u043c \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u043c HCI Bluetooth<\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0442\u043e\u043c \u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043f\u043e USB \u0438 \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u0418\u0418 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u043c \u0447\u0435\u0440\u0435\u0437 <code>adb<\/code>, \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u043b\u043e\u0433\u0438 Bluetooth \u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b. \u0421 \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u0418\u0418 \u0432\u043e\u0437\u0438\u043b\u0441\u044f \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e. \u0412 \u0438\u0442\u043e\u0433\u0435 \u043e\u043d \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b, \u0447\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 Wi-Fi \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043e. \u0420\u0430\u0437 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0432\u044b\u044f\u0441\u043d\u044f\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0431\u0435\u0437 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u0438\u0434\u0438\u043c\u043e, \u043d\u0435 \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c. \u0418 \u0442\u043e\u0447\u043d\u043e: \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0448\u0430\u0433\u043e\u043c \u043e\u043d \u0441\u0442\u044f\u043d\u0443\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 Coway \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043b \u0435\u0433\u043e \u0438 \u043d\u0430\u0447\u0430\u043b \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0441 \u043b\u043e\u0433\u0430\u043c\u0438 Bluetooth.<\/p>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u044b\u044f\u0441\u043d\u044f\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u0442\u0430\u043a:<\/p>\n<ul>\n<li>\n<p>\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u043e Bluetooth \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0438\u0437 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 <code>FFA0<\/code> (\u00ab\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430\u00bb \u2014 \u044d\u0442\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 Bluetooth, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u043e\u0436\u043d\u043e \u0447\u0438\u0442\u0430\u0442\u044c \u0438\u043b\u0438 \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u0438\u0441\u0430\u0442\u044c). \u0422\u0430\u043c \u0435\u0441\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e\u0431 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0435\u0433\u043e MAC-\u0430\u0434\u0440\u0435\u0441.<\/p>\n<\/li>\n<li>\n<p>\u0417\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0443 <code>FFA2<\/code> \u043a\u043b\u044e\u0447 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f (20 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0445 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0445 \u0431\u0443\u043a\u0432):<\/p>\n<\/li>\n<\/ul>\n<pre><code>\"P001\" + protobuf {  command: 1,  key: Base64(random_letters)}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<ul>\n<li>\n<p>\u0421\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c AES-\u043a\u043b\u044e\u0447: \u043a\u043b\u044e\u0447 \u0438\u0437 \u0448\u0430\u0433\u0430 2, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043f\u0438\u0441\u0430\u043d\u044b 12 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 MAC-\u0430\u0434\u0440\u0435\u0441\u0430 \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 ASCII.<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0431\u0440\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<\/li>\n<\/ul>\n<pre><code>{  \"cmd\": 2,  \"ssid\": \"Example Wi-Fi\",  \"pwd\": \"example-wifi-password\",  \"bssid\": \"AABBCCDDEEFF\",  \"type\": 1,  \"macAddr\": \"112233445566\",  \"caUrl\": \"http:\/\/192.0.2.1:8080\/ca.pem\",  \"certSvrUrl\": \"https:\/\/192.0.2.1:9443\/iot\/v1\/cert\/r0\",  \"certToken\": \"example-enrollment-token\",  \"serial\": \"EXAMPLE000000000001\"}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0415\u0451 \u0437\u0430\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u044e\u0442 \u0432 protobuf, \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u043f\u043e PKCS#7 \u0438 \u0448\u0438\u0444\u0440\u0443\u044e\u0442 AES-\u043a\u043b\u044e\u0447\u043e\u043c \u0438\u0437 \u0448\u0430\u0433\u0430 3. \u0417\u0430\u0442\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043f\u0435\u0440\u0435\u0434\u0438 \u0441\u0442\u0440\u043e\u043a\u0443 \u00abP002\u00bb \u0438 \u0442\u043e\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u0432 <code>FFA2<\/code>.<\/p>\n<p>\u0421\u0430\u043c\u043e \u0441\u043e\u0431\u043e\u0439, \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0432\u0441\u0451 \u044d\u0442\u043e \u043e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u043e \u043a\u043e\u043d\u0446\u0430 \u043f\u043e \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 Android-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043e\u0447\u0435\u043d\u044c \u0434\u043e\u043b\u0433\u043e. \u042d\u0442\u043e \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0447\u0430\u0441\u044b \u0440\u0430\u0431\u043e\u0442\u044b (\u0441\u043a\u043e\u0440\u0435\u0435, \u0434\u043d\u0438). \u0422\u0443\u0442 \u0418\u0418 \u0437\u0434\u043e\u0440\u043e\u0432\u043e \u0432\u044b\u0440\u0443\u0447\u0430\u0435\u0442: \u0443 \u043d\u0435\u0433\u043e \u0443\u0448\u043b\u043e \u043e\u043a\u043e\u043b\u043e 20 \u043c\u0438\u043d\u0443\u0442.<\/p>\n<p>\u041f\u0440\u0438\u044f\u0442\u043d\u043e \u0438 \u0442\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438 \u044d\u0442\u043e\u0439 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0435\u0441\u0442\u044c \u0432 \u043b\u043e\u0433\u0430\u0445 Bluetooth, \u0441\u043d\u044f\u0442\u044b\u0445 \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0448\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u043d\u0438\u043c. \u0414\u0430\u043b\u044c\u0448\u0435 \u0418\u0418 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b \u0432\u0435\u0441\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043d\u0430 Python.<\/p>\n<p>\u042f \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043b\u0435\u0434\u0438\u043b \u0437\u0430 \u0445\u043e\u0434\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b. \u041f\u043e\u043b\u043d\u0443\u044e \u043f\u043e\u043b\u0435\u0437\u043d\u0443\u044e \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0418\u0418 \u043c\u043d\u0435 \u0442\u0430\u043a \u0438 \u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b, \u043d\u043e \u044f \u0432\u0438\u0434\u0435\u043b \u0435\u0451 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u043c \u0432\u044b\u0432\u043e\u0434\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043d \u043f\u0438\u0441\u0430\u043b. \u0418 \u0442\u0443\u0442 \u044f \u043a\u043e\u0435-\u0447\u0442\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u043b. \u0414\u0432\u0430 URL \u0438\u0437 \u043d\u0430\u0448\u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0430 \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u044f\u043c\u043e \u0432 \u044d\u0442\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0435 (<code>caUrl<\/code> \u0438 <code>certSvrUrl<\/code>). \u041f\u0435\u0440\u0432\u044b\u0439 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0443, \u043e\u0442\u043a\u0443\u0434\u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 HTTP, \u0432\u0442\u043e\u0440\u043e\u0439 \u2014 \u043a\u0443\u0434\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c POST \u043f\u043e HTTPS \u0437\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 MQTT.<\/p>\n<p>\u0420\u0430\u0437 \u044d\u0442\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0442\u0435\u043f\u0435\u0440\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043c\u044b, \u044d\u0442\u0438 URL \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u0443\u0434\u0430 \u0443\u0433\u043e\u0434\u043d\u043e. \u0410 \u0441\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435, MitM \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043d\u0443\u0436\u0435\u043d. \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u043f\u0440\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430.<\/p>\n<h3>\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 Home Assistant<\/h3>\n<p>\u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u0441\u0435\u0433\u043e \u044d\u0442\u043e\u0433\u043e \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b <a href=\"https:\/\/github.com\/scottjg\/coway-local\" rel=\"noopener nofollow\">\u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f Home Assistant<\/a>. \u0423 \u043c\u043e\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Home Assistant \u043d\u0435\u0442 Bluetooth, \u0438 \u0441\u0442\u043e\u0438\u0442 \u043e\u043d \u0434\u0430\u043b\u0435\u043a\u043e \u043e\u0442 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u044f \u0441\u0434\u0435\u043b\u0430\u043b \u0447\u0435\u0440\u0435\u0437 Web Bluetooth. \u0422\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043d\u0435\u0441\u0442\u0438 \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u043a \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0443 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u043f\u0440\u044f\u043c\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 Home Assistant.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/7d\/2c\/72\/7d2c72987162f4c6b2de5af81a541703.jpg\" alt=\"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 coway-local \u0432 Chrome, \u0432 \u043e\u043a\u043d\u0435 \u0432\u044b\u0431\u043e\u0440\u0430 Bluetooth \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043e\u0442\u043c\u0435\u0447\u0435\u043d \u043a\u0430\u043a \u0441\u043e\u043f\u0440\u044f\u0436\u0451\u043d\u043d\u044b\u0439\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/7d\/2c\/72\/7d2c72987162f4c6b2de5af81a541703.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/7d\/2c\/72\/7d2c72987162f4c6b2de5af81a541703.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 coway-local \u0432 Chrome, \u0432 \u043e\u043a\u043d\u0435 \u0432\u044b\u0431\u043e\u0440\u0430 Bluetooth \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043e\u0442\u043c\u0435\u0447\u0435\u043d \u043a\u0430\u043a \u0441\u043e\u043f\u0440\u044f\u0436\u0451\u043d\u043d\u044b\u0439<\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f \u0441 Home Assistant \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u043e Wi-Fi.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/9c\/c5\/f9\/9cc5f9eb08409d338e068dc6c8a6f75a.jpg\" alt=\"\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0435\u043c \u0432 Home Assistant: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043d\u0430 67%, \u043a\u043d\u043e\u043f\u043a\u0438 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 High, Medium, Low \u0438 Off\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/9c\/c5\/f9\/9cc5f9eb08409d338e068dc6c8a6f75a.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/9c\/c5\/f9\/9cc5f9eb08409d338e068dc6c8a6f75a.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0435\u043c \u0432 Home Assistant: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043d\u0430 67%, \u043a\u043d\u043e\u043f\u043a\u0438 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 High, Medium, Low \u0438 Off<\/figcaption><\/div>\n<\/figure>\n<p>\u0410 \u0433\u043b\u0430\u0432\u043d\u043e\u0435, Home Assistant \u043f\u0440\u043e\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442 \u0435\u0433\u043e \u0432 \u043c\u043e\u0439 Apple Home.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/37\/53\/06\/375306566c48db2358595d05b3d38951.jpg\" alt=\"\u0420\u0430\u0437\u0434\u0435\u043b \u00ab\u0421\u043f\u0430\u043b\u044c\u043d\u044f\u00bb \u0432 Apple Home: \u043f\u043b\u0438\u0442\u043a\u0430 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044f \u0440\u044f\u0434\u043e\u043c \u0441\u043e \u0441\u0432\u0435\u0442\u043e\u043c\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/37\/53\/06\/375306566c48db2358595d05b3d38951.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/37\/53\/06\/375306566c48db2358595d05b3d38951.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0430\u0437\u0434\u0435\u043b \u00ab\u0421\u043f\u0430\u043b\u044c\u043d\u044f\u00bb \u0432 Apple Home: \u043f\u043b\u0438\u0442\u043a\u0430 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044f \u0440\u044f\u0434\u043e\u043c \u0441\u043e \u0441\u0432\u0435\u0442\u043e\u043c<\/figcaption><\/div>\n<\/figure>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/9e\/5a\/cc\/9e5acc7cbe86b07aa6026c505710e054.jpg\" alt=\"\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0435\u043c \u0432 Apple Home: \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0441\u0438\u043d\u0438\u0439 \u043f\u043e\u043b\u0437\u0443\u043d\u043e\u043a \u043d\u0430 \u0440\u0443\u0447\u043d\u044b\u0445 67%\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/9e\/5a\/cc\/9e5acc7cbe86b07aa6026c505710e054.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/9e\/5a\/cc\/9e5acc7cbe86b07aa6026c505710e054.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0435\u043c \u0432 Apple Home: \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0441\u0438\u043d\u0438\u0439 \u043f\u043e\u043b\u0437\u0443\u043d\u043e\u043a \u043d\u0430 \u0440\u0443\u0447\u043d\u044b\u0445 67%<\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u043e\u0442 \u0438 \u0432\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430 \u0434\u0435\u043d\u044c. \u0422\u0435\u043f\u0435\u0440\u044c \u044f \u043d\u0430\u043a\u043e\u043d\u0435\u0446 \u043c\u043e\u0433\u0443 \u043d\u0430\u0436\u0430\u0442\u044c \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb.<\/p>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1107784\/\">https:\/\/habr.com\/ru\/articles\/1107784\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c Coway Airmega IconS\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0432\u043f\u043e\u043b\u043d\u0435 \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u044b\u0439, \u0430 \u0432\u043e\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a \u043d\u0435\u043c\u0443 \u043c\u043d\u0435 \u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f.\u041d\u0430 \u0434\u0432\u043e\u0440\u0435 2017 \u0433\u043e\u0434. \u0417\u0430\u043f\u0430\u0434\u043d\u043e\u0435 \u043f\u043e\u0431\u0435\u0440\u0435\u0436\u044c\u0435 \u0421\u0428\u0410 \u0433\u043e\u0434 \u0437\u0430 \u0433\u043e\u0434\u043e\u043c \u043d\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u043b\u0435\u0441\u043d\u044b\u0435 \u043f\u043e\u0436\u0430\u0440\u044b. \u0414\u043d\u0451\u043c \u043d\u0435\u0431\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:\u0413\u043e\u0440\u043e\u0434 \u043f\u043e\u0434 \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u043d\u0435\u0431\u043e\u043c\u041c\u043e\u0439 \u0434\u043e\u043c, \u043a\u0430\u043a \u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u0434\u043e\u043c\u0430 \u0432 \u0440\u0430\u0439\u043e\u043d\u0435 \u0437\u0430\u043b\u0438\u0432\u0430 \u0421\u0430\u043d-\u0424\u0440\u0430\u043d\u0446\u0438\u0441\u043a\u043e, \u043d\u0435 \u0443\u0442\u0435\u043f\u043b\u0451\u043d \u0438 \u0442\u043e\u043b\u043a\u043e\u043c \u043d\u0435 \u0433\u0435\u0440\u043c\u0435\u0442\u0438\u0447\u0435\u043d. \u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u0434\u044b\u0445\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u043a\u043e\u043f\u043e\u0442\u0438, \u043c\u043d\u043e\u0433\u0438\u0435 \u0442\u043e\u0433\u0434\u0430 \u0441\u0442\u0430\u043b\u0438 \u043f\u043e\u043a\u0443\u043f\u0430\u0442\u044c \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u0438 \u0432\u043e\u0437\u0434\u0443\u0445\u0430 \u0432\u0440\u043e\u0434\u0435 \u044d\u0442\u043e\u0433\u043e:\u0420\u0435\u043a\u043b\u0430\u043c\u0430 Coway: \u0447\u0451\u0440\u043d\u044b\u0439 \u0438 \u0431\u0435\u043b\u044b\u0439 Airmega\u041f\u043e\u0447\u0442\u0435\u043d\u043d\u044b\u0439 Coway Airmega\u041f\u043e \u0441\u0443\u0442\u0438 \u044d\u0442\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0432 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u043e\u043c \u043a\u043e\u0440\u043f\u0443\u0441\u0435 \u0441 HEPA-\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u043c \u0438 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u043c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u0434\u0443\u0445\u0430. \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u0430 \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u043a\u0435: \u043f\u0440\u0438 \u043f\u043b\u043e\u0445\u043e\u043c \u0432\u043e\u0437\u0434\u0443\u0445\u0435 \u043e\u043d \u0441\u0430\u043c \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442 \u043e\u0431\u043e\u0440\u043e\u0442\u044b. \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043e\u043d \u043d\u0435\u043a\u0440\u0430\u0441\u0438\u0432\u043e, \u043d\u043e \u0437\u0434\u0435\u0441\u044c \u043e\u043d \u0441\u0442\u043e\u0438\u0442 \u043f\u043e\u0447\u0442\u0438 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0434\u043e\u043c\u0435, \u0438, \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0435\u0433\u043e \u0443\u0436\u0435 \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u0435\u0442. \u0418, \u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u043e\u0441\u0442\u0438 \u0440\u0430\u0434\u0438, \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442: \u0432\u043e\u0437\u0434\u0443\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0447\u0438\u0449\u0435.\u0421\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0441\u0442\u0430\u043b \u0443 \u043d\u0430\u0441 \u0434\u043e\u043c\u0430 \u043d\u0435\u0437\u0430\u043c\u0435\u043d\u0438\u043c\u044b\u043c: \u0436\u0435\u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u043d\u043e\u0447\u044c \u043d\u0430 \u043f\u043e\u043b\u043d\u0443\u044e \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0431\u0435\u043b\u043e\u0433\u043e \u0448\u0443\u043c\u0430. \u042f \u043f\u0440\u0438\u0432\u044b\u043a, \u0438 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0430\u043c \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0435 \u0437\u0430\u0441\u044b\u043f\u0430\u044e.\u041a\u043d\u043e\u043f\u043a\u0430 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb\u041e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u0443 \u043d\u0430\u0441 \u0443\u043c\u043d\u043e\u0435 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043a Apple Home. \u041f\u0435\u0440\u0435\u0434 \u0441\u043d\u043e\u043c \u044f \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u0430\u0436\u0438\u043c\u0430\u044e \u043a\u043d\u043e\u043f\u043a\u0443 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb, \u0438 \u0432\u0435\u0441\u044c \u0441\u0432\u0435\u0442 \u0433\u0430\u0441\u043d\u0435\u0442. \u041c\u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u0442\u044c \u043a \u043d\u0435\u0439 \u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440: \u043d\u0430\u0436\u0430\u043b \u043a\u043d\u043e\u043f\u043a\u0443, \u0441\u0432\u0435\u0442 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u043b\u0441\u044f, \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0440\u0430\u0441\u043a\u0440\u0443\u0442\u0438\u043b\u0441\u044f \u0434\u043e \u0442\u043e\u0439 \u0433\u0440\u043e\u043c\u043a\u043e\u0441\u0442\u0438 \u0431\u0435\u043b\u043e\u0433\u043e \u0448\u0443\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043b\u044e\u0431\u0438\u0442 \u0436\u0435\u043d\u0430.\u041a\u043d\u043e\u043f\u043a\u0430 \u0441\u0446\u0435\u043d\u044b \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb \u0432 Apple Home\u0423 \u0441\u0442\u0430\u0440\u043e\u0433\u043e Airmega \u043d\u0435 \u0431\u044b\u043b\u043e Wi-Fi, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u043a Apple Home \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u043e. \u041a\u043e\u0433\u0434\u0430 \u043e\u043d \u0432 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0446\u043e\u0432 \u0441\u043b\u043e\u043c\u0430\u043b\u0441\u044f, \u044f \u043a\u0443\u043f\u0438\u043b Coway Airmega IconS (\u0441\u0435\u0439\u0447\u0430\u0441 \u0435\u0433\u043e \u0443\u0436\u0435 \u0441\u043d\u044f\u043b\u0438 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430). \u042d\u0442\u043e \u0432\u0441\u0451 \u0442\u043e\u0442 \u0436\u0435 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0441 HEPA-\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u043c, \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0434\u043e\u0440\u043e\u0436\u0435, \u0441\u0442\u0438\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0434 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0441\u043a\u0443\u044e \u043c\u0435\u0431\u0435\u043b\u044c \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u044b \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u0432\u0435\u043a\u0430 \u0438, \u0433\u043b\u0430\u0432\u043d\u043e\u0435, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u043f\u043e Wi-Fi (\u0431\u043e\u043b\u0435\u0435 \u0438\u043b\u0438 \u043c\u0435\u043d\u0435\u0435).\u0411\u0435\u0436\u0435\u0432\u044b\u0439 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u044b\u0445 \u043d\u043e\u0436\u043a\u0430\u0445 \u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c CowayCoway Airmega IconS\u0413\u043e\u0442\u043e\u0432\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0434\u043b\u044f Home Assistant\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 Coway \u0434\u043b\u044f iPhone \u2014 \u043a\u043b\u0430\u0441\u0441\u0438\u043a\u0430 IoT. \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0446\u0435\u043b\u0443\u044e \u0432\u0435\u0447\u043d\u043e\u0441\u0442\u044c \u0438 \u043f\u043e\u0447\u0442\u0438 \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u0440\u043e\u0441\u0438\u0442 \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u043e\u0434\u0438\u043d \u0441\u043c\u0435\u043b\u044c\u0447\u0430\u043a \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b \u044d\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f Home Assistant. \u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f, \u043f\u043e \u0441\u0443\u0442\u0438, \u043f\u0440\u0438\u0442\u0432\u043e\u0440\u044f\u0435\u0442\u0441\u044f \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c: \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u043b\u0430\u043a\u043e Coway, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043e\u0442\u0442\u0443\u0434\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0443. Home Assistant \u043f\u0440\u043e\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0451 \u044d\u0442\u043e \u0432 Apple Home, \u0438 \u0433\u043e\u0442\u043e\u0432\u043e.\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0441\u0435\u0440\u0432\u0435\u0440\u044b Coway \u0433\u0434\u0435-\u0442\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)        \u2191 \u043a\u043e\u043c\u0430\u043d\u0434\u044b  \u2193 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435          \u2191 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435  \u2193 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u041c\u043e\u0439 \u0434\u043e\u043c: Home Assistant (\u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f IoCare)    \u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS, Wi-Fi)        \u2193Apple Home (\u0442\u0430 \u0441\u0430\u043c\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u00ab\u0421\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u043d\u043e\u0447\u0438\u00bb)\u0417\u0430\u0447\u0435\u043c \u0443\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0437 \u043e\u0431\u043b\u0430\u043a\u0430\u041c\u0438\u043d\u0443\u0441 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0442\u044b \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0437\u0430\u0432\u0438\u0441\u0438\u0448\u044c \u043e\u0442 \u043c\u0438\u043b\u043e\u0441\u0442\u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430 Coway (\u0442\u043e\u0447\u043d\u0435\u0435, \u043e\u0442 \u0435\u0451 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f). \u041f\u043e\u0445\u043e\u0436\u0435, \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0440\u0430\u0437 \u0438\u043b\u0438 \u0434\u0432\u0430 \u0432 \u0433\u043e\u0434 \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u0434\u0430 \u043b\u043e\u043c\u0430\u0435\u0442\u0441\u044f.\u0412\u043e\u0442 \u0447\u0442\u043e \u043b\u043e\u043c\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u043c\u043e\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u0438:Coway \u043d\u0435 \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0434\u043e\u043b\u0431\u0438\u0442 \u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u044b, \u0438 \u043e\u043d\u0438 \u0435\u0451 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b\u0438. \u041f\u043e\u0441\u043b\u0435 \u0434\u043e\u043b\u0433\u043e\u0433\u043e \u0441\u043f\u043e\u0440\u0430 \u0441 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e\u043c \u0432\u0441\u0451-\u0442\u0430\u043a\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u043b\u0438\u0441\u044c \u0435\u0451 \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c.Coway \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043b\u0438 \u0435\u0433\u043e \u0438\u0437 IoCare \u0432 IoCare+, \u0442\u0430\u043a \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0442\u043e\u0436\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c.Coway \u0441\u043b\u0435\u0433\u043a\u0430 \u043f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 \u0432\u0451\u0440\u0441\u0442\u043a\u0443 HTML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u043f\u0430\u0440\u0441\u0438\u0442, \u0438 \u043e\u043d\u0430 \u0441\u043b\u043e\u043c\u0430\u043b\u0430\u0441\u044c.\u0421\u0435\u0440\u0432\u0435\u0440\u044b Coway \u0432\u0440\u0435\u043c\u044f \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043b\u0435\u0436\u0430\u043b\u0438, \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e \u0431\u044b\u043b\u043e \u043d\u0435\u043b\u044c\u0437\u044f.\u041e\u0434\u043d\u0430\u0436\u0434\u044b Coway \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043c\u043e\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442 \u0437\u0430 \u0441\u0442\u0430\u0440\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438. \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0434\u0435\u043b\u044c \u044f \u043d\u0435 \u043c\u043e\u0433 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e, \u043f\u043e\u043a\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043d\u0438\u043c\u0430\u043b\u0430 \u0431\u0430\u043d.\u041a \u0442\u043e\u043c\u0443 \u0436\u0435 \u0432\u0440\u044f\u0434 \u043b\u0438 Coway \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 \u0432\u0435\u0447\u043d\u043e. \u041f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u044e, \u0447\u0442\u043e \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e, \u043a\u0430\u043a \u0438 \u0432\u0441\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0438 IoT, \u043e\u043d\u0438 \u043b\u0438\u0431\u043e \u0441\u0434\u0435\u043b\u0430\u044e\u0442 \u0435\u0433\u043e \u043f\u043b\u0430\u0442\u043d\u044b\u043c, \u043b\u0438\u0431\u043e \u0437\u0430\u043a\u0440\u043e\u044e\u0442. \u041c\u043e\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0443\u0436\u0435 \u0441\u043d\u044f\u0442\u0430 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430 (\u0445\u043e\u0442\u044f \u0434\u0440\u0443\u0433\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441 Wi-Fi \u043f\u0440\u043e\u0434\u0430\u044e\u0442\u0441\u044f, \u0442\u0430\u043a \u0447\u0442\u043e \u043a\u0442\u043e \u0437\u043d\u0430\u0435\u0442).\u041b\u0430\u0437\u0435\u0439\u043a\u0430\u041f\u0440\u0438\u0437\u043d\u0430\u044e\u0441\u044c, \u044f \u043b\u0435\u043d\u0438\u043b\u0441\u044f. \u0413\u043e\u0434\u0430\u043c\u0438 \u043e\u0442\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b \u043f\u043e\u043f\u044b\u0442\u043a\u0443 \u0438\u0437\u0431\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u043e\u0442 \u043e\u0431\u043b\u0430\u043a\u0430 Coway: \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e-\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u044f\u0436\u0435\u043b\u043e. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a coway.com (\u0438\u043b\u0438 \u043a\u0443\u0434\u0430 \u0442\u0430\u043c \u0435\u0449\u0451) \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442, \u0447\u0442\u043e SSL-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0430\u043b\u0438\u0434\u0435\u043d. \u041f\u043e\u0434\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 \u0442\u0430\u043a\u0443\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u044f, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435 \u0441\u043c\u043e\u0433\u0443, \u0438 \u043a \u043c\u043e\u0435\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f.\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0442\u044c \u0441\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0430\u0442\u0430\u043a\u0438 \u00ab\u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435\u00bb (MitM) \u2014 \u0442\u0430 \u0435\u0449\u0451 \u043c\u043e\u0440\u043e\u043a\u0430. \u0412\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Wi-Fi, \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0434\u0451\u0442 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u0430 \u043a\u0443\u0447\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0444\u0430\u0439\u0440\u0432\u043e\u043b\u0430, \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0442\u0440\u0430\u0444\u0438\u043a. \u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0433\u043e (\u044f \u0442\u0430\u043a\u043e\u0435 \u0443\u0436\u0435 \u0434\u0435\u043b\u0430\u043b), \u043d\u043e \u0432\u043e\u0437\u043d\u0438 \u043c\u043d\u043e\u0433\u043e, \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u0441\u0451 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u043e. \u0410 \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0435\u043d\u0434 \u0433\u043e\u0442\u043e\u0432, \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0448\u0430\u0433.\u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0437\u0430 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\u0441\u044c \u0434\u0432\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u0432\u0435\u0449\u0438.\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043d\u0435\u0434\u0430\u0432\u043d\u043e (\u0432 \u043e\u043a\u0442\u044f\u0431\u0440\u0435 2026 \u0433\u043e\u0434\u0430) \u0441\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e eMudhra, \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0445 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0445 \u0446\u0435\u043d\u0442\u0440\u043e\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0434\u043b\u044f \u0447\u0430\u0441\u0442\u0438 \u0441\u0432\u043e\u0438\u0445 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u0430\u0431\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440.Ian Carroll (@iangcarroll), 20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026: \u00ab\u0411\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0435 \u0434\u043d\u0438 \u0438\u043b\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0423\u0426 \u0435\u0441\u0442\u044c \u0443 \u043b\u044e\u0431\u043e\u0433\u043e \u2014 \u0441\u043f\u0430\u0441\u0438\u0431\u043e eMudhra. \u0421\u0430\u043c\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0440\u0430\u0437\u0432\u043b\u0435\u043a\u0430\u0442\u044c\u0441\u044f \u0441 MiTM \u043d\u0435\u0441\u0433\u043e\u0432\u043e\u0440\u0447\u0438\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432!\u00bb\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0423\u0426 eMudhra \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 d \u0438\u0445 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439: \u043a\u0440\u043e\u0448\u0435\u0447\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0432\u0440\u043e\u0434\u0435 156, 230, 115, 56, 155 \u0438 4\u0422\u0430\u043a \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043d\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u043b\u043e\u0441\u044c, \u0418 \u0432 \u043d\u0451\u043c \u0437\u0430\u0448\u0438\u0442\u044b \u043a\u043e\u0440\u043d\u0435\u0432\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u0418 \u043e\u043d\u043e \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442 (pinning) \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u0442\u043e\u2026 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u043e \u0438 \u0435\u0441\u0442\u044c \u043b\u0430\u0437\u0435\u0439\u043a\u0430. \u041c\u043d\u043e\u0433\u043e\u0432\u0430\u0442\u043e \u00ab\u0435\u0441\u043b\u0438\u00bb, \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u043d\u0435\u0442 \u0433\u0440\u0443\u0431\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u043e\u0439 \u043e\u043f\u043e\u0440\u044b.\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0418\u0418. LLM \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u0441\u0451, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u043b\u044f MitM, \u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043a \u0440\u0430\u0437\u0431\u043e\u0440\u0443 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440. \u041f\u0440\u0438\u0447\u0451\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0431\u0435\u0437 \u043f\u0440\u0438\u0441\u043c\u043e\u0442\u0440\u0430 \u0438 \u0437\u0430 \u0441\u0447\u0438\u0442\u0430\u043d\u044b\u0435 \u043c\u0438\u043d\u0443\u0442\u044b.\u0412\u0441\u0442\u0430\u0432 \u043c\u0435\u0436\u0434\u0443 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a \u043e\u043d \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f, \u0430 \u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441 \u043d\u0430\u043c\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043b\u0430\u043a\u0430.\u041d\u0430\u0448 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0441\u043e\u0431\u0440\u0430\u043b \u0442\u0430\u043a\u0443\u044e \u0441\u0445\u0435\u043c\u0443:\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS)    \u2502 Wi-FiRaspberry Pi \u2014 \u0442\u043e\u0447\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 Wi-Fi (Pi \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 AP, \u0441\u0432\u043e\u044f \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0435\u0442\u044c),    \u2502          \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0432 mitmproxy, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u0438 \u043f\u0438\u0448\u0435\u0442 \u0435\u0433\u043e \u0432 \u043b\u043e\u0433\u041c\u043e\u0439 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 (\u043e\u0431\u044b\u0447\u043d\u0430\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0441\u0435\u0442\u044c)    \u2502\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)\u042d\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e: \u0443 Raspberry Pi \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u0430\u043d\u0442\u0435\u043d\u043d\u0430 \u0434\u043e\u0440\u043e\u0436\u043a\u043e\u0439 \u043d\u0430 \u043f\u043b\u0430\u0442\u0435, \u0438 \u0441\u0438\u0433\u043d\u0430\u043b \u0443 \u043d\u0435\u0451 \u0441\u043b\u0430\u0431\u044b\u0439. \u041f\u043e\u043a\u0430 Pi \u0441\u0442\u043e\u044f\u043b \u0432 \u043e\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u0435 \u0441 \u0440\u043e\u0443\u0442\u0435\u0440\u043e\u043c, \u0434\u043e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u043e\u043d \u043d\u0435 \u0434\u043e\u0431\u0438\u0432\u0430\u043b. \u041c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u0432 \u043a\u043e\u043c\u043d\u0430\u0442\u0443 \u0441 \u0440\u043e\u0443\u0442\u0435\u0440\u043e\u043c, \u043d\u043e \u0437\u0430\u0447\u0435\u043c, \u0435\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0443 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c?\u041d\u043e\u0443\u0442\u0431\u0443\u043a, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u0438\u043a USB-C \u043d\u0430 Ethernet, Raspberry Pi \u0438 USB-C \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0435 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043cRaspberry Pi \u0441\u0432\u043e\u0438\u043c \u0440\u0430\u0434\u0438\u043e\u043c\u043e\u0434\u0443\u043b\u0435\u043c Wi-Fi \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u043e\u0447\u043a\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441 \u044d\u0442\u0438\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043f\u043e Wi-Fi \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u0435\u043c\u0443 \u043d\u0435\u043f\u0440\u043e\u0441\u0442\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u0435\u0440\u0435\u043d\u0451\u0441 Pi \u0432 \u043a\u043e\u043c\u043d\u0430\u0442\u0443 \u0441 \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u0432\u043e\u0442\u043a\u043d\u0443\u043b \u0435\u0433\u043e Ethernet-\u043f\u043e\u0440\u0442 \u0432 \u043d\u043e\u0443\u0442\u0431\u0443\u043a, \u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u0443\u0436\u0435 \u043f\u043e Wi-Fi \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0435\u0433\u043e \u0441 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0441\u0435\u0442\u044c\u044e:\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0435\u043b\u044c (Airmega IconS)    \u2502 Wi-Fi, \u0432 \u0442\u043e\u0439 \u0436\u0435 \u043a\u043e\u043c\u043d\u0430\u0442\u0435Raspberry Pi \u2014 \u0442\u043e\u0447\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 Wi-Fi (\u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0435\u0442\u044c),    \u2502          \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0432 mitmproxy (\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \u0438 \u043b\u043e\u0433)    \u2502 Ethernet\u041c\u043e\u0439 \u043d\u043e\u0443\u0442\u0431\u0443\u043a (\u043e\u0431\u0449\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443: \u043c\u043e\u0441\u0442 Wi-Fi \u2194 Ethernet)    \u2502 Wi-Fi\u041c\u043e\u0439 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 (\u043e\u0431\u044b\u0447\u043d\u0430\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0441\u0435\u0442\u044c)    \u2502\u041e\u0431\u043b\u0430\u043a\u043e Coway IoCare (\u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435)\u0414\u0430\u043b\u044c\u0448\u0435 \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Pi.\u0427\u0430\u0442 \u0441 Claude: \u043f\u0440\u043e\u0441\u044c\u0431\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Pi \u043a\u0430\u043a \u0442\u043e\u0447\u043a\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0441 mitmproxy \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0441 \u043f\u043e\u043c\u0435\u0442\u043a\u043e\u0439 Category: cyber\u041d\u0435 \u0431\u0435\u0440\u0443\u0441\u044c \u0441\u0443\u0434\u0438\u0442\u044c, \u0447\u0435\u0441\u0442\u043d\u043e \u043b\u0438 \u0442\u0430\u043a\u043e\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043d\u043e Claude \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043f\u0440\u043e\u0441\u044c\u0431\u0443 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0441\u044f, \u0434\u0430\u0436\u0435 \u00ab\u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u00bb.\u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0443 ChatGPT \u0442\u0430\u043a\u0438\u0445 \u0443\u0433\u0440\u044b\u0437\u0435\u043d\u0438\u0439 \u0441\u043e\u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u0442.ChatGPT \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 Cyber\u041f\u043e\u0441\u043b\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 nftables:scottjg@pi:~ $ sudo nft -a list rulesettable inet mitmproxy_ap { # handle 8set client_interfaces { # handle 4type ifnameelements = { &#171;wlan0&#187; }}chain prerouting { # handle 1type nat hook prerouting priority dstnat; policy accept;meta nfproto ipv4 iifname @client_interfaces tcp dport { 80, 443 } counter packets 2 bytes 120 redirect to :8080 # handle 6}chain input { # handle 2type filter hook input priority filter &#8212; 10; policy accept;iifname != &#171;lo&#187; iifname != @client_interfaces tcp dport 8080 counter packets 0 bytes 0 reject with tcp reset # handle 7iifname @client_interfaces meta nfproto ipv6 counter packets 9 bytes 2397 drop # handle 8iifname @client_interfaces ct state established,related accept # handle 9iifname @client_interfaces udp dport { 53, 67 } accept # handle 11iifname @client_interfaces tcp dport { 53, 8080 } accept # handle 13iifname @client_interfaces ip protocol icmp accept # handle 14iifname @client_interfaces counter packets 23 bytes 4697 reject with icmpx admin-prohibited # handle 15}chain forward { # handle 3type filter hook forward priority filter &#8212; 10; policy accept;iifname @client_interfaces meta nfproto ipv6 counter packets 0 bytes 0 drop # handle 16oifname @client_interfaces meta nfproto ipv6 counter packets 0 bytes 0 drop # handle 17iifname @client_interfaces udp dport 443 counter packets 1 bytes 57 reject # handle 18iifname @client_interfaces oifname != &#171;eth0&#187; counter packets 0 bytes 0 reject with icmpx admin-prohibited # handle 19}}table ip nm-shared-wlan0 { # handle 12chain nat_postrouting { # handle 1type nat hook postrouting priority srcnat; policy accept;ip saddr 10.42.0.0\/24 ip daddr != 10.42.0.0\/24 masquerade # handle 2}chain filter_forward { # handle 3type filter hook forward priority filter; policy accept;ip daddr 10.42.0.0\/24 oifname &#171;wlan0&#187; ct state { established, related } accept # handle 5ip saddr 10.42.0.0\/24 iifname &#171;wlan0&#187; accept # handle 6iifname &#171;wlan0&#187; oifname &#171;wlan0&#187; accept # handle 7iifname &#171;wlan0&#187; reject # handle 8oifname &#171;wlan0&#187; reject # handle 9}}\u0415\u0441\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e, \u043f\u0440\u0430\u0432\u0438\u043b\u043e masquerade \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Wi-Fi \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435, \u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u043e redirect \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 HTTP \u0438 HTTPS \u0432 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 mitmproxy.\u0422\u0430\u043c \u0436\u0435, \u043d\u0430 Pi, mitmproxy \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043e \u0441\u0432\u043e\u0438\u043c \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c mitmweb \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441 \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439:mitmweb \\  &#8212;mode transparent &#8212;showhost \\  &#8212;listen-host 0.0.0.0 &#8212;listen-port 8080 \\  &#8212;web-host 127.0.0.1 &#8212;web-port 8081 \\  &#8212;set web_open_browser=false \\  &#8212;emudhra-old\u0414\u0430, \u0432 mitmproxy \u043f\u0440\u044f\u043c\u043e \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438 \u0435\u0441\u0442\u044c \u043e\u043f\u0446\u0438\u044f (&#8212;emudhra-old), \u043a\u043e\u0442\u043e\u0440\u0430\u044f&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-503196","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/503196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=503196"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/503196\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=503196"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=503196"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=503196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}