пʼятниця, грудня 03, 2021

Як торгувати криптовалютою за допомогою Twitter

Гортаючи сторінки з репозиторіями на GitHub наткнувся на одну дуже цікаву ідею, яка належить Джеймсу Бачіні. Він запропонував слухати стрімом акаунти в Twitter і якщо в твітах цих акаунтів з'явиться згадка про тікери криптовалюти то в цьому випадку це можна розглядати як заклик до дії і купувати попередньо згаданий тікер.

Джеймс розробив приклад цього бота ти виклав його на GitHub. Мені це здалося дуже несподівано і цікаво, через те я записав відео огляд цього бота, попередньо отримавши ключі до елевейтед аксес до Twitter. 

Що з цього вийшло запрошую переглянути на відео: 


Приємного перегляду і дякую за ваш час!


середа, грудня 01, 2021

Як створити Dino Game на kaboom.js

Витратив цілий місяць на те, щоб створити Dino Game на kaboomJS.

Що таке KaboomJS? Це Javascript framework, а що таке Dino Game? Це офлайн гра захована в браузер Chrome. Вихідний код гри можна знайти в репозиторії браузера Chromium. Доречі я також створив сторінку у Вікіпедії про цю гру, аж дивно, що гра була випущена в 2014 році, а сторінки у вікі ще не було. Ось посилання на сторінку: Dinosaur game.

Допоки писав статтю на вікі побачив багато цікавих фактів про цю гру. Наприклад, що в неї можна грати 17 млн років, щоб отримати максимальний скор, або що гра спочатку називалася «Project Bolan» у зв’язку з вокалістом Марком Боланом із групи T. Rex 1970-х років.

Заради чого це все? Заради того, щоб отримати досвід в Game Dev та попрактикуватися з новим JS фреймворком, яких вже так багато на світі.

Але трігером цього всього стала моя участь в контесті Kajam від Replit. Ми зробили свою гру за 1 тиждень та задеплоїли її на контест, але нажаль нічого не виграли, але так хотілося виграти 10 000 доларів.



Після оголошення переможців, цікаво було передивитися всіх їх та зрозуміти, в чому сіль перемоги? Або кому насамперед журі віддає перевагу.

Ось невеличкий огляд самих переможців Kajam 2021.


Але не суть. Сенс всього цього полягала в тому, щоб розробити гру з нуля і до релізу. Гра зарелізілась, задеплоїлася на Firebase і вже доступна до перегляду на цьому сайті: https://dino-game.xyz/

Там жеш є посилання на гітхаб, а також великий огляд того, як гра створювалася, та яких пітфолів краще не допускати, коли ви самі будете розробляти цю гру.

Саме огляд знаходиться ось тут:

 


Я отримав велике задоволення від написання цієї гри і можу сказати, що гра достатньо складна і я б оцінив її рівень як medium.

Пишіть свої враження від гри, цікаво буде послухати.

четвер, лютого 28, 2013

Аналіз надійності захисту веб-сайтів від автоматичного сканування і розпізнавання символів CAPTCHA


РЕФЕРАТ
магістерської атестаційної роботи на тему
Аналіз надійності захисту веб-сайтів від автоматичного сканування і розпізнавання символів CAPTCHA”

Актуальність
Захист інформації в веб-просторі з кожним роком набуває все більшої актуальності. Зокрема, оберігання веб-сайтів від проникнення в них роботів, спамерів та інших автоматичних засобів відіграє важливу роль в цьому процесі. Підвищення надійності захисту веб-сайтів завдяки тесту CAPTCHA покликане створити межу між вводом даних людиною та комп'ютером. CAPTCHA зазвичай використовується в Інтернеті для захисту форм реєстрації та коментування від спаму. Для того, щоб зрозуміти потребу в CAPTCHA, потрібно зрозуміти мету, яка спонукає користувачів до створення і використання автоматичних систем введення даних. До цього переліку входять: реклама, маніпулювання онлайн-системами опитування, вандалізм чи знищення цілісності, чистоти сайту тощо. Актуальність цієї роботи полягає в отриманні рекомендацій, які дозволять підвищити надійність CAPTCHA та запобігти автоматизації вводу даних.

Ціль роботи
Метою даної роботи є формулювання рекомендацій по підвищенню рівня захисту веб-сайтів від автоматичного сканування при використанні різних типів символьної CAPTCHA.

Задачі, що розв'язуються в роботі:
  1. аналіз сучасних засобів захисту веб-сайтів;
  2. дослідження CAPTCHA як засобу захисту веб-сайтів;
  3. аналіз принципів побудови декодерів CAPTCHA та їх можливостей;
  4. розробка декодера для розпізнавання символьної CAPTCHA;
  5. отримання практичних висновків щодо підвищення рівня захисту веб-сайтів від автоматичного сканування при використанні різних типів символьної CAPTCHA.

Досягнуті результати
Вирішивши завдання, поставлені в роботі, автор захищає:
  1. рекомендацій по підвищенню рівня захисту веб-сайтів від автоматичного сканування при використанні різних типів символьної CAPTCHA;
  2. напрямки удосконалення систем захисту веб-сайтів

Наукова новизна роботи
Наукова новизна визначається отриманням рекомендацій по підвищенню рівня захисту веб-сайтів від автоматичного сканування.

Практична цінність роботи
Запропоновані рекомендації по підвищенню рівня захисту веб-сайтів від автоматичного сканування можуть бути застосовані при розробці нових CAPTCHA або при вдосконаленні вже існуючих для виходу на вищий рівень безпеки.

Висновки
  1. розглянуто існуючі засоби захисту веб-сайтів;
  2. визначені та класифіковані CAPTCHA як засіб захисту веб-сайтів;
  3. проаналізовано сучасні декодери CAPTCHA;
  4. визначені основні проблеми автоматичного розпізнавання CAPTCHA;
  5. проведене ретельне тестування більше 40 CAPTCHA, включаючи CAPTCHA відомих компаній, таких як Google та Yahoo.
  6. сформульовані практичні висновки щодо підвищення рівня захисту веб-сайтів від автоматичного сканування при використанні різних типів символьної CAPTCHA.



Загальний обсяг роботи 127 сторінок, з них основна частина — 70 сторінок, 16 таблиць, 53 рисунки.
Ключові слова: CAPTCHA, OCR, OpenCV, юзабіліті, PWNtcha.

Закачати можна тут: http://www.ex.ua/view/20608321

четвер, серпня 16, 2012

Задача про 1000 пляшок та 10 стаканів

Сьогодні на співбесіді в 1 айтішну компанію, мене запитали, чи зможу я вирішити задачу на логіку? Я звісно відповів що зможу, тому що в мене майже 2 вищі освіти (ХАІ та КПІ). Але коли мене спитали я розгубився. Це для мене нормальна річ, я завжди вирішую такі задачі коли я можу спокійно зосередитися над рішенням. Та задача виявилася досить простою.

Ось її опис: Є 1000 пляшок та 10 стаканів, в 1 пляшці є отрута. 10 людей одночасно ковтають з цих стаканів, тобто є лище 1 спроба. Одна людина ковтає лише з 1 стакану. Після того, як хтось  загинув (1 чи декілька людей, чи всі відразу), треба визначити де саме отрута (в якій пляшці).

Ось рішення цієї задачі:

Якщо в нас є 1 стакан, то ми можемо визначити 2 пляшки, тобто або людина загине, або ні. Це ми можемо представити як 0,1 (0 - живе, 1 - загинув). Якщо в нас є 2 стакана ми можемо визначити 4 пляшки, це ми можемо представити як таку собі схемку:


1 стакан (2 комбінації (пляшки), або живе, або загинув)

0
1

2 стакана (4 комбінації (пляшки), або всі живі, або лівий загинув, або правий, або всі вмерли)

00
10
01
11

3 стакана (8 комбінацій (пляшок))

000
100
010
001
110
011
101
111

І так далі. Це може представити як 2 в ступені n. Тобто 2 в 0 ступені це 1. 2 в 1 ступені це 2, 2 в 3 ступені це 8, 2 в 4 ступені це 16 ... Тобто щоб визначити вірно де саме отрута нам треба 10 стаканів, тому що 2 в 10 ступені, це 1024.


Ще приведу приклад як можна наглядно продемонструвати як наливається отрута в чашки:
Уявімо, що кружки це пляшки, а квадрати це стакани, з яких п"ють люди. Одна пляшка вважається виключеною (відокремлена квадратом), вона буде з отрутою, якщо всі вип"ють, та залишаться живими. Якщо скажімо ми беремо комбінацію 101, тобчто 1 чашка з отрутою та остання з отрутою, то в якій пляшці отрута? Вірно, в тій яка наливає тільки в 2 крайні стакани. Якщо ми візьмемо комбінацію 100, то в якій пляшці отрута? Вірно в тій, яка наливає тільки в перший стакан, тобто сама ліва крайня.

Маю, надію все виклав зрозуміло :)






понеділок, серпня 13, 2012

Готуюсь до написання магістерської роботи у КПІ на тему "Аналіз відмовостійкості CAPTCHA"

Тут я буду викладати усі матеріали і те що мені стає відомо в процесі написання моєї магістерської роботи у КПІ. А саме інформацію про OpenCV2. Коди програм, приклади, тощо... Має бути цікаво.

Що таке база данних?

База данних — це спеціальна система зберігання, організації та пошуку інформації. Вона містить дані у вигляді таблиць, записів та інших стру...