<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Статьи]]></title>
    <link>https://habr.com/ru/users/interactivetechnology/publications/articles/</link>
    <description><![CDATA[Хабр: статьи пользователя interactivetechnology]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Wed, 29 Apr 2026 17:50:58 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      
        
    
    <item>
      <title><![CDATA[Заметки о безопасности. Восстановление пароля]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/167013/</guid>
      <link>https://habr.com/ru/articles/167013/?utm_campaign=167013&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[Хотелось бы немного рассказать о подходе повествования в данном посте. Всё описанное имеет реальные случаи произошедшие из моей личной практики, в большинстве своём это популярные проекты, поэтому в тексте буду их упоминать. <b>Главное на что я хотел бы обратить внимание — эта статья может показаться не интересной специалистам ИБ, т.к. она не содержит никаких новых векторов атаки и супер крутых подходов. Вся информация ориентирована на разработчиков и проект-менеджеров.</b><br/>
Проводя заказы на аудит целью ставится аналитика максимального ущерба при минимальных действиях и знаниях злоумышленника. Как показывает практика в суровых условиях производства ПО такие нюансы продумывают единицы проектов.<br/>
<br/>
<img src="https://habrastorage.org/storage2/443/c12/570/443c1257097f364bba3edde7e4c5a3c8.jpg"/><br/>
<br/>
Одной из популярных проблем является восстановление пароля и получение доступа к учётным записям пользователей. Сейчас наверное не существует ни одного сайта где бы не была функция восстановления пароля. Я их поделил на несколько типов, чтобы рассмотреть каждый из них:<br/>
<ul>
<li><a href="#qa">Контрольный вопрос — ответ</a></li>
<li><a href="#uniq">Уникальная ссылка на email</a></li>
<li><a href="#pass">Отсылка нового/действующего пароля на email</a></li>
<li><a href="#smsotp">SMS OTP (One-time password)</a></li>
</ul><br/>
Конечно это только часть большого айсберга. Существуют проблемы и в других подходах, например OAuth, но об этом уже много писали и там всё же технические нюансы, а меня больше интересует бизнес-логика.<br/>
<br/>
И так, рассмотрим слабые места каждого из пунктов выше. <br/>
 <a href="https://habr.com/ru/articles/167013/?utm_campaign=167013&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Fri, 25 Jan 2013 01:56:14 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Информационная безопасность]]></category><category><![CDATA[Программирование]]></category><category><![CDATA[Тестирование IT-систем]]></category>
      <category><![CDATA[информационная безопасность]]></category><category><![CDATA[восстановление пароля]]></category><category><![CDATA[ошибки бизнес-логики]]></category><category><![CDATA[заметки на полях]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[В России запущена государственная электронная почта]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/164641/</guid>
      <link>https://habr.com/ru/articles/164641/?utm_campaign=164641&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[По информации <a href="http://www.cnews.ru/top/2013/01/03/v_rossii_zapushhena_gosudarstvennaya_elektronnaya_pochta_514534">cnews</a> на сайте gosuslugi.ru появился раздел для получения информации от госорганов и ведения переписки с чиновниками. В «боевом» режиме госпочту «Ростелеком» обещает запустить весной 2013 г. после принятия нескольких нормативных актов.<br/>
<br/>
В личных кабинетах пользователей на портале госуслуг gosuslugi.ru появился интерфейс государственной «электронной почты». Как говорится в описании, пока раздел «Госпочта» предназначен для получения информационных сообщений от органов власти и организаций, а также для ведения переписки по обжалованию начислений.<br/>
<img src="https://habrastorage.org/storage2/a68/18c/9cb/a6818c9cb30dddfc4371c39b209c232e.png"/><br/>
 <a href="https://habr.com/ru/articles/164641/?utm_campaign=164641&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Thu, 03 Jan 2013 12:09:57 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Законодательство в IT]]></category>
      <category><![CDATA[госпочта]]></category><category><![CDATA[госуслуги.ру]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[codestre.am — потоковая запись терминала]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/142206/</guid>
      <link>https://habr.com/ru/articles/142206/?utm_campaign=142206&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/storage2/f19/378/b26/f19378b2605b1257caccc991bcc9448c.png"/><br/>
<br/>
Сегодня наткнулся на очень интересный сервис <a href="http://codestre.am">codestre.am</a>, разработанный <a href="https://www.learnboost.com/">LearnBoost</a>.<br/>
Идея подобного сервиса наверняка возникала у многих.<br/>
<br/>
Смысл проекта создание обучающих видео, только в формате командной строки, причём с возможностью всё воспроизвести не перепечатывая слова и буквы, а просто копируя их из самого видео.<br/>
 <a href="https://habr.com/ru/articles/142206/?utm_campaign=142206&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Tue, 17 Apr 2012 00:17:30 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Node.JS]]></category><category><![CDATA[Программирование]]></category>
      <category><![CDATA[node.js]]></category><category><![CDATA[обучающее видео]]></category><category><![CDATA[запись терминала]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Connect 2 — Новые дополнения, улучшения и документация!]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/139203/</guid>
      <link>https://habr.com/ru/articles/139203/?utm_campaign=139203&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/storage2/d87/01e/3a1/d8701e3a1e6ac93b457b18b9049f2a09.png"/><br/>
<br/>
Не так давно, а именно 2011-10-05 вышла новая версия фреймворка connect 2.0. На хабре был замечен пробел, а тут выдалось пару свободных часов. Буду писать сразу про версию 2.0.1 вышедшую 29 февраля. Во второй версии сделали много очень нужных и долгожданных изменений.<br/>
<br/>
 <a href="https://habr.com/ru/articles/139203/?utm_campaign=139203&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Thu, 01 Mar 2012 12:10:09 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Node.JS]]></category>
      <category><![CDATA[connect 2]]></category><category><![CDATA[nodejs]]></category><category><![CDATA[express 3]]></category>
    </item>
  

  

  

	
  

  

  

    

  

  

	
  

  
    <item>
      <title><![CDATA[[Перевод] Шпаргалка по пакетному менеджеру NPM]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/133363/</guid>
      <link>https://habr.com/ru/articles/133363/?utm_campaign=133363&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<img src="https://habrastorage.org/storage1/e317d1be/fbfaff3c/26f87d7f/60974064.png"/><br/>
<a href="http://npmjs.org/">npm</a> — это пакетный менеджер <a href="http://nodejs.org/">node.js</a>. С его помощью можно управлять модулями и зависимостями.<br/>
Небольшая шпаргалка всех моих любимых команд npm:<br/>
<ul>
<li><a href="#npm_install">Установка npm</a></li>
<li><a href="#npm_update">Обновление npm</a></li>
<li><a href="#npm_search">Поиск пакетов в npm</a></li>
<li><a href="#npm_view">Просмотр информации о пакете</a></li>
<li><a href="#npm_install_locally">Локальная установка пакетов</a></li>
<li><a href="#npm_application">Установка пакета в наше приложение</a></li>
<li><a href="#npm_understand">Понимание разницы между глобальной и локальной установкой</a></li>
<li><a href="#npm_install_global">Глобальная установка пакетов</a></li>
<li><a href="#npm_uninstall_locally">Удаление локально установленного пакета</a></li>
<li><a href="#npm_uninstall_global">Удаление глобально установленного пакета</a></li>
<li><a href="#npm_install_version">Установка определённой версии пакета</a></li>
<li><a href="#npm_install_github">Установка модуля с Github</a></li>
<li><a href="#npm_link_locally">Связи любых пакетов локально</a></li>
<li><a href="#npm_link_applications">Связи локальных пакетов для нескольких приложений</a></li>
<li><a href="#npm_unlink_application">Отмена связи между пакетами приложения</a></li>
<li><a href="#npm_unlink_package">Отмена связи пакета в системе</a></li>
<li><a href="#npm_init">Создание нового пакета</a></li>
<li><a href="#npm_adduser">Добавление нового пользователя</a></li>
<li><a href="#npm_publish">Публикация пакета в репозиторий npm</a></li>
<li><a href="#npm_unpublish">Удаление пакета из репозитория npm</a></li>
<li><a href="#npm_owner">Управление правами доступа к пакетам в репозитории npm</a></li>
</ul><br/>
 <a href="https://habr.com/ru/articles/133363/?utm_campaign=133363&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Fri, 25 Nov 2011 09:53:11 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Node.JS]]></category>
      <category>nodejs</category><category>npm</category><category>cheatsheet</category><category>пятница</category>
    </item>
  

  

    
    <item>
      <title><![CDATA[Пишем онлайн игру часть 2 или работа над ошибками]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/132676/</guid>
      <link>https://habr.com/ru/articles/132676/?utm_campaign=132676&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<h4>Приветствую %habrname%!</h4><br/>
<img src="https://habrastorage.org/storage1/fc1e2973/8d25e638/6aaf4234/59aaf5ca.png"/><br/>
<br/>
Во <a href="http://habrahabr.ru/blogs/nodejs/132544/">вчерашней статье</a> для меня в общем-то было ожидаемо, что большинству не будет интереса к nodejs, многие посмотрят только демо. Но к сожалению я не учёл, что и оценивать в статье будут именно игру! Хоть мне было и обидно потратив столько времени на написание статьи (а что самое главное игра писалась именно для статьи, а не наоборот), я сегодня решил написать продолжение.<br/>
<br/>
Ну что же! Проведём работу над ошибками и сделаем работающую игру со всем о чём просили, но при этом не будем отклонятся от темы блога и рассмотрим все технические моменты с которыми столкнулись при тесте игры.<br/>
 <a href="https://habr.com/ru/articles/132676/?utm_campaign=132676&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Tue, 15 Nov 2011 16:35:27 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Node.JS]]></category>
      <category><![CDATA[nodejs]]></category><category><![CDATA[express]]></category><category><![CDATA[socket.io]]></category><category><![CDATA[online игра]]></category>
    </item>
  

  

  

	
  

  

  

    
    <item>
      <title><![CDATA[Пишем онлайн игру на NodeJS, Express и Socket.IO]]></title>
      <guid isPermaLink="true">https://habr.com/ru/articles/132544/</guid>
      <link>https://habr.com/ru/articles/132544/?utm_campaign=132544&amp;utm_source=habrahabr&amp;utm_medium=rss</link>
      <description><![CDATA[<h4>Привет %habraname%!</h4><br/>
<br/>
<img src="https://habrastorage.org/storage1/b7ff2e39/1f20fdde/2e01c662/c30c3eaf.png"/><br/>
<br/>
<h6>*** Данный материал содержит логические ошибки в самой игре, но это никак не сказывается на техническом содержании статьи, цель которой не поиграть, а разобраться как работать с указанными в заголовке инструментами. <a href="http://habrahabr.ru/blogs/nodejs/132676/">Продолжение. Доводим игру до рабочего состояния с учётом всех ошибок описанных в комментариях</a></h6><br/>
<br/>
Мало кто сегодня может сказать что не знает о NodeJS, последнее время о нём много говорят и пишут.<br/>
Я свой путь ознакомления с NodeJS начал полгода назад, тогда для меня это была просто интересное и новое, я и подумать не мог что уже через полгода это станет моим основным инструментом для разработки.<br/>
<br/>
Поскольку весь обучающий материал это либо статьи об асинхронности, либо как написать свой сервер или чат, то ничего интересного для себя в обучающем материале не нашёл. Писал потихоньку разные мелкие приложения, которые подменяли частично в разных проектах фоновые работы php.<br/>
<br/>
Но сейчас я чувствую в себе силы чтобы уже написать полноценный обучающий и не унылый материал от новичка до реального работающего приложения. Это будет не просто приложение, а онлайн игра с использованием самых популярных инструментов Express и Socket.IO, да-да, мультиплеер, который сможет сделать любой средне-статистический js разработчик.<br/>
<br/>
О том, что такое Express и Socket.IO уже писали много где, поэтому описывать ещё раз я не буду, уделив больше внимания процессу разработки.<br/>
<br/>
Для начало я хотел выбрать старые добрые танчики и хорошо что не выбрал, было бы грустно написать её вторым на хабре :)<br/>
Я решил не усложнять процесс разработки графикой и взять простую игру, так мой выбор пал на крестики-нолики, но чтобы усложнить себе задачу, было решено сделать универсально, с возможностью задать любой размер игрового поля и любое кол-во ходов для победы.<br/>
<br/>
И так, решено! Начинаю делать крестики-нолики.<br/>
 <a href="https://habr.com/ru/articles/132544/?utm_campaign=132544&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut">Читать дальше &rarr;</a>]]></description>
      
      <pubDate>Mon, 14 Nov 2011 10:24:41 GMT</pubDate>
      <dc:creator><![CDATA[InteractiveTechnology]]></dc:creator>
      <category><![CDATA[Node.JS]]></category>
      <category><![CDATA[nodejs]]></category><category><![CDATA[express]]></category><category><![CDATA[socket.io]]></category><category><![CDATA[онлайн игра]]></category><category><![CDATA[крестики нолики]]></category>
    </item>
  

  

  

	
  

  

  

      

      

      

    
  </channel>
</rss>
