Bitcoin Forum
July 06, 2024, 08:20:34 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: ГСЧ и немного про смарт-контракты  (Read 116 times)
DoThisBet (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 25, 2021, 03:06:56 PM
Last edit: May 25, 2021, 04:37:17 PM by Xal0lex
 #1

Привет, интересует насколько подходит курс BTC к USDT в центах на том же бинансе (как наиболее волатильный) для использования в качестве основы генератора случайных чисел при необходимости выбора между двумя числами (например, когда курс в центах четный - это 0, когда курс в центах нечетный - это 1)? А если нужно выбирать из 5-10-100-1000 значений?

Механизм с четные-нечетные для двух возможных значений как работает понятно, а вот иные значения (допустим, генерация из 365 возможных значений) уже не так понятны. Вариант тут самый простой (который мне в голову пришел) - делить цену биткоина в центах на нужное число, а остаток после деления и будет сгенерированным числом. То есть берем курс 3791962 цента за биткоин, делим на 365, получаем 10388 целых (целые числа нас не интересуют) и 342 в остатке. Вот эти 342 из остатка и будут сгенерированным числом (о проблеме этого метода ниже).

Насколько я понимаю, ограничений тут несколько:
1. Технические ограничения биржи на получение курса чаще определенного количества раз в секунду (на практике при анализе биржевого стакана цена менялась порядка 50-80 раз в секунду, иногда чаще). Генерирование больших ключей займет много времени при такой скорости генерирования.
2. При значениях более 100+, на мой взгляд, цент уже может быть недостаточно часто изменяемой единицей на краткосрочные перспективы и определенный диапазон значений может быть предугадан исходя из текущей стоимости биткоина с определенной точностью.
3. В момент технического сбоя (или обновления) информация с биржи может перестать поступать, тем самым остановив генерацию чисел.


Для "поиска специалистов" создайте новую тему в подразделе Работа.
Модератор.
johhnyUA
Legendary
*
Offline Offline

Activity: 2422
Merit: 1845


Crypto for the Crypto Throne!


View Profile
June 08, 2021, 09:44:21 PM
 #2

Плохая идея.

Курс БТЦ к ЮСД обратим. Тоесть посмотрев историю и зная алгоритм ГСЧ можно восстановить все "случайные" числа на нужном промежутке времени.

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


.freebitcoin.       ▄▄▄█▀▀██▄▄▄
   ▄▄██████▄▄█  █▀▀█▄▄
  ███  █▀▀███████▄▄██▀
   ▀▀▀██▄▄█  ████▀▀  ▄██
▄███▄▄  ▀▀▀▀▀▀▀  ▄▄██████
██▀▀█████▄     ▄██▀█ ▀▀██
██▄▄███▀▀██   ███▀ ▄▄  ▀█
███████▄▄███ ███▄▄ ▀▀▄  █
██▀▀████████ █████  █▀▄██
 █▄▄████████ █████   ███
  ▀████  ███ ████▄▄███▀
     ▀▀████   ████▀▀
BITCOIN
DICE
EVENT
BETTING
WIN A LAMBO !

.
            ▄▄▄▄▄▄▄▄▄▄███████████▄▄▄▄▄
▄▄▄▄▄██████████████████████████████████▄▄▄▄
▀██████████████████████████████████████████████▄▄▄
▄▄████▄█████▄████████████████████████████▄█████▄████▄▄
▀████████▀▀▀████████████████████████████████▀▀▀██████████▄
  ▀▀▀████▄▄▄███████████████████████████████▄▄▄██████████
       ▀█████▀  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀  ▀█████▀▀▀▀▀▀▀▀▀▀
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.PLAY NOW.
~DefaultTrust
Copper Member
Sr. Member
****
Offline Offline

Activity: 1554
Merit: 489

Stop the war!


View Profile
June 09, 2021, 03:17:55 AM
 #3

Плохая идея.

Курс БТЦ к ЮСД обратим. Тоесть посмотрев историю и зная алгоритм ГСЧ можно восстановить все "случайные" числа на нужном промежутке времени.
Может ему это не важно?
Из названия топика ясно, что хочет сделать смартконтракт, то есть некий договор, который будет исполняться при определенных условиях в будущем. Провернуть фарш транзакцию смартконтракта назад уже все равно нельзя, поэтому в принципе фиолетово, что там было раньше.

Но я бы лучше для генератора брал тупо хэш или нонс последнего блока битка или эфира или любой другой сложной, в смысле POW, монеты.


Do not trust bitcointalk fascists: leonello; Snork1979; ivan1975
johhnyUA
Legendary
*
Offline Offline

Activity: 2422
Merit: 1845


Crypto for the Crypto Throne!


View Profile
June 10, 2021, 06:42:53 PM
 #4

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

Ну может. Если это не генерация криптографических элементов какой нибудь системы, а так, игрульки (например рандомно отправлять награду одному из участников лотореии) то тогда и вправду сойдет. Но он явно правда не сказал зачем ему.

Но я бы лучше для генератора брал тупо хэш или нонс последнего блока битка или эфира или любой другой сложной, в смысле POW, монеты.

Именно. Например последние три цифры от хэша (как делают здесь на форуме при всяких розыгрышах).

.freebitcoin.       ▄▄▄█▀▀██▄▄▄
   ▄▄██████▄▄█  █▀▀█▄▄
  ███  █▀▀███████▄▄██▀
   ▀▀▀██▄▄█  ████▀▀  ▄██
▄███▄▄  ▀▀▀▀▀▀▀  ▄▄██████
██▀▀█████▄     ▄██▀█ ▀▀██
██▄▄███▀▀██   ███▀ ▄▄  ▀█
███████▄▄███ ███▄▄ ▀▀▄  █
██▀▀████████ █████  █▀▄██
 █▄▄████████ █████   ███
  ▀████  ███ ████▄▄███▀
     ▀▀████   ████▀▀
BITCOIN
DICE
EVENT
BETTING
WIN A LAMBO !

.
            ▄▄▄▄▄▄▄▄▄▄███████████▄▄▄▄▄
▄▄▄▄▄██████████████████████████████████▄▄▄▄
▀██████████████████████████████████████████████▄▄▄
▄▄████▄█████▄████████████████████████████▄█████▄████▄▄
▀████████▀▀▀████████████████████████████████▀▀▀██████████▄
  ▀▀▀████▄▄▄███████████████████████████████▄▄▄██████████
       ▀█████▀  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀  ▀█████▀▀▀▀▀▀▀▀▀▀
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.PLAY NOW.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!