Bs0Dd 206 Опубликовано: 30 декабря, 2020 (изменено) Наверняка многие помнят программку CodeDoors, некогда входящую в состав MineOS. И пару месяцев назад я с удивлением обнаружил, что ее нет ни в репозитории ГитХаба, ни в самой ОС. Ну и недолго думая, я решил написать свою версию, причем с одним небольшим НО. Кодовый замок должен работать без какой-либо ОС. Вот так и появился этот графический кодовый замок. Система отпечатков работает аналогично таковой в CodeDoors. Репозиторий на GitHub Естественно, выйти из программы не получится, поскольку выходить просто некуда, и в этом большой плюс. Установка довольно проста: Скрытый текст 1. Подготавливаем ПК: Для Mono версии (Видеосистема 1 уровня) Для Color версии (Видеосистема 2 или 3 уровня) или 2. Загружаем на основной ПК программу-прошивальщик: pastebin run cHENmYbV 3. Указываем нужную версию и прошиваем EEPROM 4. Процессор компьютера-замка необходимо ОБЯЗАТЕЛЬНО перевести в режим Lua 5.3 (ПКМ по процессору в руке) 5. Вставляем EEPROM и запускаем компьютер 6. Производим настройку (пароль, стороны подачи сигнала в числах по Sides API, показывать ли пароль, нажатия клавиш) 7. PROFIT!!! При необходимости можно перенастроить программу, нажав на "(c)" в строке копирайта (а вы думали он тут просто так?) и введя старый пароль. Скриншоты: Цветная версия Скрытый текст Монохромная Скрытый текст Перед публикацией постарался отловить баги, но не исключено, что что-то могло быть упущено из виду. Изменено 28 марта, 2021 пользователем Bs0Dd Новая версия 2 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hohserg 197 Опубликовано: 30 декабря, 2020 36 минут назад, Bs0Dd сказал: При необходимости можно перенастроить программу, нажав на "(c)" в строке копирайта (а вы думали он тут просто так?) В режиме перенастройки также можно очистить список "отпечатков" доверенных пользователей (система отпечатков работает аналогично таковой в CodeDoors). А можно эту фичу заблокировать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 31 декабря, 2020 (изменено) 4 часа назад, hohserg сказал: А можно эту фичу заблокировать? А нужно ли? Перед перенастройкой сначала спрашивается старый пароль (отпечаток в таком случае отключен) и если введеный пароль верен, можно задать новые настройки ------ Дописал в шапку про пароль Изменено 31 декабря, 2020 пользователем Bs0Dd 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Taruu 30 Опубликовано: 31 декабря, 2020 А сие программу есть шансы ужать до биоса? Или уже сада-маза получается? 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 31 декабря, 2020 (изменено) 10 минут назад, Taruu сказал: А сие программу есть шансы ужать до биоса? Или уже сада-маза получается? Я пытался это сделать еще на этапе написания кода, но увы, ужать все нужные функции (библиотек то у нас нету без OpenOS) + код самого замка до 4Кб не вышло. Может конкретный садо-мазо и смог бы Да и в любом случае, где-то нужно хранить настройки и список доверенных пользователей (которые могут войти по отпечатку), а области в 256 байт у биоса для этого будет маловато Вообще, если туго с жесткими дисками, никто не мешает записать кодовый замок на дискету и грузиться с нее. Но тогда при доступе к диску, дисковод, конечно же, будет жужжать. Изменено 31 декабря, 2020 пользователем Bs0Dd Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Taruu 30 Опубликовано: 31 декабря, 2020 (изменено) 3 минуты назад, Bs0Dd сказал: Я пытался это сделать еще на этапе написания кода, но увы, ужать все нужные функции (библиотек то у нас нету без OpenOS) + код самого замка до 4Кб не вышло. Может конкретный садо-мазо и смог бы Да и в любом случае, где-то нужно хранить настройки и список доверенных пользователей (которые могут войти по отпечатку), а области в 256 байт у биоса для этого будет маловато Вообще, если туго с жесткими дисками, никто не мешает записать кодовый замок на дискету и грузиться с нее. Но тогда при доступе к диску, дисковод, конечно же, будет жужжать. Если проблема с дисками, то можно вообще твою шнягу с сетевыми дисками взять. И будет прям едина сеть терминалов доступа. Не пробовал так? И еще наверно можно написать порогу инициализатор которая работает тупо с дискеты или же хранить на дискете список пользователей(тогда не будет проблем с местом и можно ставить только биос). Ну фич можно много сделать при желании... Хотя в итоге дешевле жесткий диск сделать :/ Изменено 31 декабря, 2020 пользователем Taruu Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 31 декабря, 2020 11 минуту назад, Taruu сказал: Не пробовал так? Не получится , программа-клиент требует библиотеки из OpenOS Вообще я собирался сделать NetBIOS, в который прописываются данные сетевого диска и он грузится с него, но нужно переделывать моменты с этими проклятыми библиотеками и ужимать саму клиентскую систему (в удобном для чтении формате занимает 8кб) + нужно создать виртуальный компонент этого диска (в самой ОС этого то можно и не делать, но при загрузке будет необходимо) + загрузчик Lua и на все это 4Кб((( Если кто из "садо-мазо" может такое провернуть и хочет мне помочь, буду только рад. 21 минуту назад, Taruu сказал: Хотя в итоге дешевле жесткий диск сделать :/ Вот то то и оно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 31 декабря, 2020 Ну как вариант можно заранее в еепром вшивать белый список пользователей. Если сделать оптимизацию, даже без прогона через минификатор можно легко ужать эту программу, уж больно много в ней странностей и костылей особенно если учесть что у нас есть доступ ко ВСЕМ библиотекам. Ну и коль программа поддерживает 2 типа мониторов, не проще соединить все в 1 программку, которая будет сама решать какой тип рисунка выводить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 31 декабря, 2020 (изменено) 47 минут назад, Asior сказал: у нас есть доступ ко ВСЕМ библиотекам. Из, непосредственно, системы то доступны только нативные библиотеки Lua, computer и component, или я что-то не так понял? 47 минут назад, Asior сказал: Ну как вариант можно заранее в еепром вшивать белый список пользователей. А куда девать все остальное? Опять же, нужен какой-то носитель с емкостью хотя бы в килобайт 47 минут назад, Asior сказал: Ну и коль программа поддерживает 2 типа мониторов, не проще соединить все в 1 программку, которая будет сама решать какой тип рисунка выводить? У них разные рабочие разрешения, оттого рисуются разные версии кнопок, не используется "градиент" на плашке с паролем, другие координаты нажатий и т.д. Имхо, слишком много получается отличий, что совсем нехило раздует программу 47 минут назад, Asior сказал: уж больно много в ней странностей и костылей Не исключаю, это первая попытка написать что-то масштабное вне OpenOS, поэтому... если есть на что конкретно указать, подумаю-переработаю Изменено 31 декабря, 2020 пользователем Bs0Dd Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hohserg 197 Опубликовано: 31 декабря, 2020 (изменено) Можно использовать HoverHelm в качестве платформы. Там и библиотеки можно будет подключать и физический жесткий диск один на всю систему и при этом не будет ограничение на объем программы и хранимых данных Изменено 31 декабря, 2020 пользователем hohserg Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 31 декабря, 2020 8 минут назад, hohserg сказал: Можно использовать HoverHelm в качестве платформы. Хм, система интересная, но... не хотелось бы прибегать к использованию дополнительных компьютеров, да и в любом случае нужен жесткий диск, просто будет ли он стоять на компьютере-замке или компьютере-сервере, по моему разница невеликая + нужна сетевая карта и комплектующие на компьютер-сервер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 1 января, 2021 (изменено) В 31.12.2020 в 09:33, Bs0Dd сказал: Да и в любом случае, где-то нужно хранить настройки и список доверенных пользователей (которые могут войти по отпечатку), а области в 256 байт у биоса для этого будет маловато В 256 байт умещается ~20 ников средней длины. Вполне себе адекватное количество ников, обычно, в доме не живет больше 4-5-6 человек. Говорю как человек, который делал это: Изменено 1 января, 2021 пользователем BrightYC 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hohserg 197 Опубликовано: 1 января, 2021 (изменено) 16 часов назад, Bs0Dd сказал: Хм, система интересная, но... не хотелось бы прибегать к использованию дополнительных компьютеров, да и в любом случае нужен жесткий диск, просто будет ли он стоять на компьютере-замке или компьютере-сервере, по моему разница невеликая + нужна сетевая карта и комплектующие на компьютер-сервер. Компьютеров-замков может быть сколько угодно. И любых других компов, выполняющих другие функции тоже может быть сколько угодно на один жесткий диск ~~~ Ох, а программа замка в текущем состоянии для eeprom, верно? Тогда она уже совместима с HoverHelm и конечные пользователи могут запускать ее, не выделяя отдельный жесткий диск для компа-замка Изменено 1 января, 2021 пользователем hohserg Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 1 января, 2021 3 часа назад, hohserg сказал: Ох, а программа замка в текущем состоянии для eeprom, верно? Не совсем. Да, ее можно в теории загрузить с еепром, но вес в 15кб этого не позволит, поэтому она загружается обычным Lua BIOS с носителя, как будто OpenOS Ужатием наверное, как уже говорил, все же стоит заняться, но я в минимизации кода не мастер, все же человек начинающий. 8 часов назад, BrightYC сказал: В 256 байт умещается ~20 ников средней длины. Вполне себе адекватное количество ников, обычно, в доме не живет больше 4-5-6 человек. Говорю как человек, который делал это: Хорошо, приму к сведению, но такой способ будет иметь смысл только, если замок получится ужать до 4Кб Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
hohserg 197 Опубликовано: 2 января, 2021 10 часов назад, Bs0Dd сказал: Не совсем. Да, ее можно в теории загрузить с еепром, но вес в 15кб этого не позволит, поэтому она загружается обычным Lua BIOS Ну т.е. программа не требует какой-то оси, работает с голым железом. Поэтому она уже совместима с HoverHelm Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 2 января, 2021 5 часов назад, hohserg сказал: Ну т.е. программа не требует какой-то оси, работает с голым железом. Да, именно так. На работу вне оси и делался упор. 1 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 10 января, 2021 Впринципе, раз уж Doob сделал упаковщик для программ, я могу сделать упакованную версию с хранением данных в спец. области EEPROM. Но в таком случае для работы вместо жесткого диска потребуется карта данных Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Taruu 30 Опубликовано: 11 января, 2021 10 часов назад, Bs0Dd сказал: Впринципе, раз уж Doob сделал упаковщик для программ, я могу сделать упакованную версию с хранением данных в спец. области EEPROM. Но в таком случае для работы вместо жесткого диска потребуется карта данных Ну зато система будет монолитом. И хакнуть не получится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 12 января, 2021 (изменено) В 11.01.2021 в 08:04, Taruu сказал: Ну зато система будет монолитом. И хакнуть не получится. Итак, добавил EEPROM версию, упакованную bpacker-ом (с base64 модификацией, дабы можно было выгрузить на пастебин) Настройки хранятся в deflated виде (раз уж все равно нужна карта данных, да и считать пароль напрямую так будет сложнее) в секторе данных самой EEPROM. Так что жесткий диск теперь не нужен Изменено 12 января, 2021 пользователем Bs0Dd 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Bs0Dd Автор темы 206 Опубликовано: 12 января, 2021 (изменено) Приношу извинения за #403 по ссылкам Похоже пастебину не понравилась base64 строка, и он за "спам" прикрыл сам паст Попробовал перевыложить, пост даже не показывается в списке общих пастов Видимо придется кидать ссылку на биосы с гитхаба и качать wget-ом((( -------- Выложил ссылки на GitHub ----------- Пастебин, видимо, после ручной модерации, все же сделал пасты пуличными. Ссылки добавил. Изменено 14 января, 2021 пользователем Bs0Dd Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах