User Tag List

Страница 2 из 5 ПерваяПервая 12345 ПоследняяПоследняя
Показано с 11 по 20 из 48

Тема: Есть ли способ программе определить на z80 она выполняется или на его эмуляторе?

  1. #11

    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,082
    Записей в дневнике
    11
    Спасибо Благодарностей отдано 
    173
    Спасибо Благодарностей получено 
    493
    Поблагодарили
    343 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andrews Посмотреть сообщение
    А если дополнительно установить на плату чип, который невозможно сэмулировать? Есть идея майнить на спектрумах специальную криптовалют
    Вот прямо этим чипом и надо майнить, тогда сработает. И прошивку никому не давать.
    Вот только это будет не криптовалюта, а ерунда. Создатель будет знать алгоритм и иметь теоретическую возможность сделать себе в 1000 раз более быстрый майнер, чем у остальных.
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI YTINK 9 Channel

  2. #12

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    вычислить будет очень сложно
    Вопрос востребованности конкретного ПО и степени заинтересованности хакеров.


    Цитата Сообщение от goodboy Посмотреть сообщение
    попробуй обойти запрос на рег.данные
    Мои интересы только в плоскости ПРК "Орион", причём сугубо реалов. Ради спора изучать другую платформу и среду отладки для неё не готов.
    Запутывание кода сам практикую, но прекрасно понимаю, что все эти защиты - на тему разнообразия инструментария и порога терпения взломщика, ничего невозможного там нет в принципе.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  3. #13

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eltaron Посмотреть сообщение
    сделать себе в 1000 раз более быстрый майнер, чем у остальных.
    а почему просто нельзя приравнять майнеров к фальшивомонетчикам
    и не жечь их на костре?

    и проблемы нет
    Последний раз редактировалось NEO SPECTRUMAN; 12.01.2021 в 15:09.

  4. #14

    Регистрация
    20.04.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,870
    Спасибо Благодарностей отдано 
    521
    Спасибо Благодарностей получено 
    250
    Поблагодарили
    224 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сравниться по производительности с видеокартами и процессорами PC на Спектруме невозможно. Следовательно нужен какой-то другой подход. Сбор каких-то характеристик реального железа и маловероятные события при его функционировании. Программа же должна вносить нечто, чтобы требуемое для регистрации новой монеты случалось все же с ненулевой вероятностью после N<100 часов работы "реального железа"(при этом если на компьютере не происходило нечто осмысленное и он был просто включен, время возрастало непропорционально) Центральный сервер же должен, проанализировав блок данных, присланных регистрирующим, выносить вердикт и подтверждать регистрацию.

    Цели такой "валюты" не инвестиционные и не анонимайзерские, а иные:
    1) усилить интерес к реальному железу на z80;
    2) к работе на этом реальном железе( следовательно и в новом софте);
    3) дать людям средство для расчетов в своей среде, минуя деньги( хотя, если сделать это товаром<-> обмен на обычные деньги или обычную крипту, то первые два пункта уже не работают в полной мере.

    А алгоритм и подход должен быть всем понятен в общих чертах. Внешний чип, если и нужен, то только чтобы сильно не отвлекать все остальное от их функций. Симитировать столь полно реальное железо в эмуляторах должно быть весьма трудозатратно.

    - - - Добавлено - - -

    Цитата Сообщение от Denn Посмотреть сообщение
    Мои интересы только в плоскости ПРК "Орион", причём сугубо реалов.
    видимо и эмуляторы там пока не столь изощренные как на Спектрумах, но при замене проца на z80 появляются и точки соприкосновения. Правда не в курсе, есть ли такая замена на ПРК "Орион"

    - - - Добавлено - - -

    Цитата Сообщение от Eltaron Посмотреть сообщение
    Вот прямо этим чипом и надо майнить, тогда сработает
    уже объяснился. Чтобы только не грузить основную систему не свойственными ей до этого задачами. Потом это по желанию владельца, как необязательная опция.
    Последний раз редактировалось andrews; 12.01.2021 в 15:44.

  5. #15

    Регистрация
    28.02.2005
    Адрес
    Москва
    Сообщений
    2,242
    Спасибо Благодарностей отдано 
    993
    Спасибо Благодарностей получено 
    615
    Поблагодарили
    333 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Evgeny Muchkin Посмотреть сообщение
    Где можно про такую порчу поподробнее почитать?
    На оригинальном спектруме с раздельными полями памяти можно легко затестить:
    Код:
            ORG 32768
            DI
            LD B,0
        L1: XOR A
            LD R,A
            DEC HL
            LD A,H
            OR L
            JR NZ,L1
            DJNZ L1
            EI
            RET
    Ждем минуты три. Проверяем верхние 32 Кб памяти, например, графику UDG. Заряд из ячеек будет утекать и байты превращаться в $ff. Только первые несколько байтов для каждого блока в 256 байт остануться в нуле, потому, что рефреш для них выполнялся во время выполнения цикла. А нижние 16 Кб будут штатно зарефрешены ULA. Опыт не будет работать на эмуляторе.
    Последний раз редактировалось SoftLight; 12.01.2021 в 16:34.

    Эти 3 пользователя(ей) поблагодарили SoftLight за это полезное сообщение:

    andrews(12.01.2021), Denn(12.01.2021), Evgeny Muchkin(12.01.2021)

  6. #16

    Регистрация
    20.04.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,870
    Спасибо Благодарностей отдано 
    521
    Спасибо Благодарностей получено 
    250
    Поблагодарили
    224 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andrews Посмотреть сообщение
    Сбор каких-то характеристик реального железа
    самое простое, что приходит в голову, это фиксировать время между запросом на прерывание и выходом из него

  7. #16
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #17

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andrews Посмотреть сообщение
    самое простое, что приходит в голову, это фиксировать время между запросом на прерывание и выходом из него
    А как фиксировать время? Нужна временнάя "точка опоры".
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  9. #18

    Регистрация
    07.10.2006
    Сообщений
    1,730
    Спасибо Благодарностей отдано 
    257
    Спасибо Благодарностей получено 
    275
    Поблагодарили
    167 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SoftLight Посмотреть сообщение
    На оригинальном спектруме с раздельными полями памяти можно легко затестить:
    Только на 48к, на 128х вся память рефрешится юлой.
    Ну и нет проблем заэмулить это. Только временные и качественные параметры порчи содержимого ячеек снять нужно тестовой программой, чтобы точнее было. Эмуль ZEsarUX даже эмулит, опция такая есть, но, судя по моим тестам, вообще от фонаря. Портится одна ячейка в начале верхней памяти)

    Вообще - нет проблем заэмулить любые такие фичи, главное знать о них, ну и тесты провести, чтобы эмулировать поточнее. Так что любая такая защита - до первого пытливого эмуляторщика.

  10. #19

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,213
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,639
    Поблагодарили
    572 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Лет 20 назад тема определения эмуляторов была весьма популярна. Находили всё новые и новые особенности Z80, которые в мирной жизни были не нужны, а для отлова эмуляторов хорошо подходили. Проверки такого поведения некоторые программисты включали в свои игры и журналы, чтобы они могли запускаться только на реалах. Но со временем все эти штучки благополучно добавлялись в эмуляторы. Сейчас таких неописанных особенностей скорее всего и не осталось уже - всё давно копано-перекопано вдоль и поперёк. А даже если кто-то что-то подобное и найдёт, то, зная правильное поведение, добавить его в эмулятор большого труда не составит.
    С уважением, Станислав.

    Этот пользователь поблагодарил CityAceE за это полезное сообщение:

    Barmaley_m(31.01.2021)

  11. #20

    Регистрация
    20.04.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,870
    Спасибо Благодарностей отдано 
    521
    Спасибо Благодарностей получено 
    250
    Поблагодарили
    224 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    А как фиксировать время? Нужна временнάя "точка опоры"
    внешняя схема может быть высокоточным таймером, где вывод прерывания zx заведен на старт или еще куда-то. Но просто четко выдерживать в секундах, минутах или еще чем-то наверное не совсем правильно(это надо моделировать). Пользователя можно попросить ввести датакод ряда его компонентов, обычно это номер недели в году и год.
    На процессоре он точно стоит, на памяти вроде тоже. Для fpga наверное придется вводить ее датакод и еще у jtag микросхем вроде есть уникальный идентификатор чипа( но может я путаю, тогда придется просить их заводить регистр для идентификации изделия, чтобы быть участниками программы "zx012021-майнинга"). И идентификатор запрашивать у сервера регистрации.

    Вероятность того, что на разных платах это совпадет довольно низкая. Эта инфа может быть передана программой в чип и на основе этой последовательности чип выберет свое локальное время. А редкое событие, которое будет равно 1 монете можно построить, пропуская n-ное кол-во прерываний, а далее зафиксировав время обработки очередного прерывания и соотнося его с текущим локальным временем этого чипа. Только формулу надо так построить, чтобы за 100 часов нажатия на клавиши клавиатуры, джойстика или кликанья мышью вероятность этого не была нулевой.
    Этим мы зададим и масштаб валюты, поощряя реальную работу на реальном железе. Ну а курс с рублем может быть плавающим и отображаемым на этом же сервере( если все сделки этой крипты с рублем будут только на нем).

    - - - Добавлено - - -

    Цитата Сообщение от CityAceE Посмотреть сообщение
    зная правильное поведение, добавить его в эмулятор большого труда не составит
    но тогда придется моделировать случайные процессы. Ведь не все в z80 регламентировано с точностью до микросекунды( единицы микросекунды). На совсем уж худой конец и при подозрении на мошенничество, придется запрашивать фото платы( вернее определенных чипов, вводить датакоды и проверять, правда пока неясно как, прогоняя на большой скорости). Правда это ПО придется держать в большом-большом секрете тому, кто возьмется заниматься сервером регистрации. Интересы эмуляторщиков этой технологией ущемлены не будут. Так как это не защита программ, а приятный бонус( если конечно 1 монета не станет когда-нибудь стоить 10 000 руб )
    Последний раз редактировалось andrews; 12.01.2021 в 18:31.

Страница 2 из 5 ПерваяПервая 12345 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Мертвый Z80 как определить
    от NEO SPECTRUMAN в разделе Для начинающих
    Ответов: 73
    Последнее: 11.05.2019, 22:56
  2. Ответов: 8
    Последнее: 26.12.2014, 02:32
  3. Ответов: 27
    Последнее: 23.05.2013, 00:06
  4. Куплю Atari 2600 или его клон. Или поменяю на Синтез
    от Mifody в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 20.08.2011, 11:59
  5. Купили бы вы Z80 20MHz , если будет куда его установить ?
    от fan в разделе Несортированное железо
    Ответов: 61
    Последнее: 06.12.2006, 15:06

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •