Miranda NG — мультипротокольний клієнт обміну миттєвими повідомленнями для Microsoft Windows.
Популярна завдяки безкоштовному розповсюдженню, економному використанню системних ресурсів та великій кількості плагінів, що розширюють можливості програми, жупанів (скінів), смайликів. Miranda NG є вільним програмним забезпеченням, тобто програмою з відкритим кодом, яка розповсюджується відповідно до умов громадської ліцензії GNU.
Історія Miranda було створено Роландом Раб'єном () 2 лютого 2000 року. Спочатку програма офіційно називалась Miranda ICQ, оскільки була мінімалістським клоном клієнта ICQ. Перша версія, що вийшла 6 лютого 2000 року, мала розмір менше 100 Кбайт. У ній використовувалась бібліотека LibICQ, не було підтримки історії повідомлень, бази даних і плагінів.
Особливістю версії 0.0.4 став бот MegaHAL, який забезпечував можливість ведення автоматичного чату між клієнтом Miranda та іншими користувачами. У версії 0.0.6 з'явилася підтримка плагінів, першим з яких став плагін історії Logger.
Версія 0.1.x Випустивши 26 грудня 2000 року версію 0.0.6.1, автори припинили підтримку програми. Нова версія (0.1.0.0) вийшла 8 квітня 2001 року, після того, як керівником проєкту став Річард Х'юз (). Код Miranda було значно вдосконалено, вікно діалогу повідомлень вперше виділили в окремий плагін. Починаючи з версії 0.1.1.0, до якої було додано протокол MSN Messenger і підтримку мовних пакетів, Miranda — мультипротокольний та багатомовний IM-клієнт.
Після випуску версії 0.1.0.0 почалася активна розробка плагінів для Miranda. Коли 28 лютого 2002 року вийшла версія 0.1.2.1, їх було вже близько 50. У цей час було випущено плагін Lizard, що забезпечував використання різних стилів оформлення, однак розробка плагіна невдовзі припинилась, оскільки він спричиняв нестабільність у роботі програми.
Версія 0.2.x Після того, як у червні 2002 року Річард Х'юз покинув проєктOSDir.com :: Open Source, Linux News & Software , роботу продовжили Мартін Оберг (Martin Öberg), Роберт Рейнвотер (Robert Rainwater), Сем К (Sam K) та Лайон Лім (Lyon Lim). Розробку протоколу MSN продовжив Рако Шизука (Rako Shizuka), який розробив також першу версію протоколу Yahoo! Messenger, що став третім протоколом у Miranda. Сирцевий код плагіна Yahoo! був закритим, тому він втратив актуальність у зв'язку із змінами в офіційному протоколі Yahoo!. Пізніше плагін Yahoo! для Miranda переписав Геннадій Фельдман (Gennady Feldman).
З'явилися перші плагіни, які не відносилися безпосередньо до миттєвого обміну повідомленнями, такі як RSS News і Weather. Вперше контакти у списку контактів почали використовувати для відображення певної інформації, а не для спілкування.
У цей час розпочалися дискусії щодо назви програми і виокремлення підтримки ICQ з коду ядра. У зв'язку зі збільшенням кількості протоколів у програмі, 17 грудня 2002 року проєкт було офіційно перейменовано на Miranda IM. Першу версію під назвою Miranda IM випустили 1 лютого 2003 року, через 3 роки після заснування проєкту.
Версія 0.3.x Найвизначнішою особливістю версії 0.3, що вийшла 23 червня 2003 року, було переміщення підтримки ICQ з ядра в окремий плагін. Відтоді Miranda може працювати без підтримки ICQ . До дистрибутиву версії 0.3 увійшли плагіни протоколів ICQ, MSN, AIM і Jabber. У версію 0.3.1, яка вийшла 8 серпня 2003 року, додали також протокол IRC , підтримку якого забезпечив шведський програміст Йорген Перссон (Jörgen Persson).
Ще однією важливою зміною в цій версії Miranda було виділення з ядра в окремий плагін модуля відправки-отримання повідомлень (Send-Receive Messaging Module або SRMM). Це відчутно зменшило розмір виконуваного файлу та дало поштовх для створення нових плагінів вікна повідомлень. У цей період з'явилося багато варіацій SRMM (SRAMM, SRMM_mod та ін.), які пропонували безліч можливостей і вдосконалень стандартного плагіна.
Сайт проєкту отримав нову адресу: www.miranda-im.org, за якою було відкрито новий форум для обговорення і файловий архів.
Версія 0.4.x Вийшла 7 квітня 2005 року. Перша версія Miranda, до стандартного дистрибутиву якої увійшов модуль підтримки протоколу Yahoo!. Ще однією значною зміною було переміщення модуля списку контактів і модуля бази даних із ядра в окремі плагіни . В результаті з'явилося чотири варіації модуля списку контактів: класичний (clist_classic), мультивіконний (clist_mw), сучасний (clist_modern) та вдосконалений із розширеними змінами інтерфейсу (clist_nicer).
У цей період було також створено й інші популярні плагіни, серед яких модулі вікна повідомлень із вкладками (TabSRMM і Scriver), модуль підтримки HTML-журналу повідомлень (IEView), скриптовий плагін mBot та плагін метаконтактів.
Версія 0.5.x Miranda IM версії 0.5 вийшла 28 липня 2006 року. Це була перша версія з підтримкою Юнікоду для повноцінного використання на системах Windows NT, 2000 та XP.
Таким чином, надалі Miranda IM випускалася у двох версіях: Unicode — для сімейства ОС Windows NT (NT, 2000, XP, Vista, 7, 8); ANSI — для сімейства ОС Windows 9x (95, 98, ME).
Ще однією особливістю версії 0.5 було запровадження протоколу AIM OSCAR, що був уперше представлений на початку 2006 року, який давав можливість передавати файли і використовувати статусні повідомлення. Ця версія забезпечувала також розширену підтримку аватарів за різними протоколами .
Версія 0.6.x Версію 0.6 було випущено 29 грудня 2006 року. Серед нововведень цієї версії була підтримка UPnP для вдосконалення передачі файлів і прямих з'єднань через маршрутизатори . Також у цій версії з'явилася підтримка збереження даних у базі даних в UTF-8, що, однак, не було обов'язковим. В API для плагінів додали роботу з пам'яттю.
Версія 0.7.x З'явилася на світ 1 жовтня 2007 року. Ядро Miranda зазнало значних змін: було переписано систему меню, модулі роботи зі шрифтами (FontService) і піктограмами (IcoLib) було включено в ядро. В стандартному дистрибутиві з'явилися плагіни для роботи із зображеннями (Miranda Image services) і аватарами (Avatar service). Збереження даних у базі даних було переведено в UTF-8, що зумовило проблеми сумісності зі старими плагінами і пошкодженими базами даних . Змінено модульний інтерфейс — тепер плагіни ідентифікують себе і свої функції за допомогою унікальних ідентифікаторів (UUID).
Версія 0.8.x Вийшла 17 червня 2009 року. У ній реалізовано роботу з кількома обліковими записами одного протоколу без необхідності дублювання DLL-файлів плагінів , вдосконалено сумісність із Windows Vista, у вікні налаштувань з'явилася можливість пошуку по налаштуваннях. У версії 0.8.23 (17 травня 2010 року) оновлено більшість значків, а для Windows 7 додано підтримку значків більшого розміру .
Версія 0.9.x Версія 0.9.0 вийшла 24 серпня 2010 року. Основні вдосконалення сконцентровано навколо підтримки Юнікоду та протоколів. Реалізовано також підтримку можливостей нової панелі задач Windows 7. З'явилася перша офіційна 64-бітна версія програми .
Miranda NG На початку 2012 року частина розробників Miranda IM відокремилася і заснувала альтернативний проєкт — Miranda NG (Next Generation)Сайт проєкту Miranda NG . Проєкт активно розвивається, найпопулярніші плагіни з відкритим кодом зібрано в єдиному репозиторії, тому необхідні зміни вносяться до кожного з них. Miranda NG випускається лише в Unicode-версії.
Версія 0.10.x Версія 0.10.0 вийшла 18 липня 2012 року. В ній не з'явилося жодних нових функцій, лише виправляються помилки. Починаючи з версії 0.10.25, використовується новий компілятор.
Плагіни Miranda — це компактний програмний інтерфейс до набору модулів-плагінів, за допомогою яких реалізовано безліч різноманітних функцій.
Плагіни можна відключати чи заміняти на інші, написані сторонніми авторами або самостійно. Встановити плагін досить легко — достатньо завантажити архів з ним та розпакувати його до підкаталогу Plugins у каталозі Miranda (в окремих випадках — безпосередньо в каталог програми).
Встановлюючи додаткові плагіни, важливо пам'ятати, що 64-бітна версія програми підтримує лише 64-бітні плагіни.
Протоколи До стандартного дистрибутиву Miranda NG входять плагіни, що забезпечують підтримку таких протоколів: IRC, XMPP (у тому числі Google Talk і чати Facebook ), MSN, OSCAR (AIM та ICQ), Yahoo! і Gadu-Gadu.
Додатково можна завантажитиПлагіни протоколів на addons.miranda-im.org і встановити плагіни для підтримки Battle.net Messenger, MRA, MS Exchange IM protocol (RVP), MySpaceIMОбговорення плагіна протоколу MySpaceIM на офіційному форумі , SIP, Skype (для роботи плагіна необхідно, щоб на комп'ютері було встановлено клієнт Skype), Spinchat, Tlen, QQ, WallaChat, ВКонтактіПлагін VKontakte Protocol на addons.miranda-im.org , Xfire та інші, а також альтернативні реалізації деяких протоколів, включених до стандартного комплекту.
Для обміну повідомленнями в локальній мережі є плагіни протоколів EmLanProto, Novell NetWare NCP, Vypress Chat, WinPopup, QuickChat.
Протокол OSCAR Функції протоколу OSCAR у стандартному комплекті Miranda NG виконує плагін IcqOscarJ Protocol, який підтримує аватари та розширені статуси, а також налаштування видимості (частково). Privacy menu не підтримується.
Протокол XMPP (Jabber) Стандартний плагін Jabber Protocol забезпечує роботу клієнта з XMPP- та GTalk-серверами. Підтримуються конференції, можливість передачі файлів (як через сервер, так і за допомогою прямого з'єднання), робота зі списками видимості, безпечна автентифікація і робота за протоколом SSL, а також стиснення інформації, що передається (залежить від сервера).
Захист Завдяки відкритості вихідного коду клієнта і основних модулів (у тому числі й тих, що забезпечують захист) можна, маючи певний досвід, перевірити програму на наявність помилок і відсутність «закладок» та, в разі необхідності, змінити окремі модулі або ж замінити їх на будь-які інші, що відповідають певним вимогам.
Обмін повідомленнями і даними Miranda NG підтримує безпечну автентифікацію ICQ (MD5) та Jabber SASL і захист з'єднань за допомогою SSL/TLS із сервісами, що їх підтримують. Плагін SecureIMПлагін SecureIM на addons.miranda-im.org із вбудованим алгоритмом шифрування AES-192 або зовнішніми програмами GPG/PGP забезпечує захист повідомлень, що передаються за будь-яким протоколом. При цьому необхідно, щоб обидва кореспонденти користувалися Мірандою з SecureIM.
Для шифрування повідомлень за допомогою GPG/PGP є й інші плагіни, наприклад, GnuPGПлагін GnuPG на addons.miranda-im.org . За допомогою плагіна OTRПлагін OTR на addons.miranda-im.org можна безпечно обмінюватися повідомленнями, захищеними AES, з іншими клієнтами, які підтримують той самий протокол.
Захист профілю та бази даних Для захисту паролів та бази даних повідомлень у Miranda NG використовується не «секретний» формат збереження цих даних, а плагіни, які забезпечують захист паролів або всієї бази даних за допомогою шифрування відомими криптографічними алгоритмами. Для захисту паролів у стандартній базі даних існує плагін mSecureПлагін mSecure на addons.miranda-im.org , який зберігає паролі в зашифрованому вигляді, використовуючи 190-бітний алгоритм Blowfish. Цей плагін також захищає програму від несанкціонованого запуску; встановлення пароля на запуск Miranda NG позбавляє необхідності пам'ятати паролі до облікових записів (їх може бути кілька).
Замінивши стандартний плагін бази даних на SecureDB, можна повністю захистити від несанкціонованого доступу весь свій профіль (паролі, історію повідомлень, локальні списки контактів і т. д.), що досить зручно як при роботі з комп'ютером «загального користування», так і для захисту від викрадення паролів. Використання SecureDB + AutobackupПлагін SecureDB + Autobackup на addons.miranda-im.org полегшує резервне копіювання бази даних налаштувань і повідомлень; створювати копії можна автоматично за розкладом або вручну.