Bitcoin Forum

Local => Кодеры => Topic started by: rodigy on April 14, 2017, 06:38:35 PM



Title: Время создания тракзакции
Post by: rodigy on April 14, 2017, 06:38:35 PM
У каждой транзакции есть параметр time , по какому стандарту времени или  поясу он привязан??


Title: Re: Время создания тракзакции
Post by: ThisNameIsAlreadyInUse on April 14, 2017, 07:07:41 PM
У каждой транзакции есть параметр time , по какому стандарту времени или  поясу он привязан??

Если вопрос о транзакции биткоина - нет там времени:

Code:
class CTransaction
{
public:
    ...
    IMPLEMENT_SERIALIZE
    (
        READWRITE(this->nVersion);
        nVersion = this->nVersion;
        READWRITE(vin);
        READWRITE(vout);
        READWRITE(nLockTime);
    )

nLockTime не имеет отношения к времени создания транзакции.

Во всех нормальных системах, к коим относится и биткоин, время хранится в зоне UTC (GMT, что то же самое)


Title: Re: Время создания тракзакции
Post by: rodigy on April 14, 2017, 07:15:11 PM
Я наверно неправильно выразился, например используя разные сервисы например blockexplorer.com В каждой tx есть time
 - что он значит? И я не только о bitcoin транзакциях

 https://blockexplorer.com/api/tx/5756ff16e2b9f881cd15b8a7e478b4899965f87f553b6210d0f8e5bf5be7df1d


Title: Re: Время создания тракзакции
Post by: ThisNameIsAlreadyInUse on April 14, 2017, 07:23:03 PM
Я наверно неправильно выразился, например используя разные сервисы например blockexplorer.com В каждой tx есть time
 - что он значит?
 https://blockexplorer.com/api/tx/5756ff16e2b9f881cd15b8a7e478b4899965f87f553b6210d0f8e5bf5be7df1d

Для bitcoin сети время транзакции - это время блока, в который транзакция включена. Несмотря на то, что стандартный клиент запоминает время создания им транзакции, в блокчейне это время не содержится. Таким образом, если ваш клиент был выключен в момент публикации транзакции в сети и до момента, как она была включена в какой либо блок, у него нет никакой возможности указать более точное время, чем время блока, в который эта транзакция включена.

И я не только о bitcoin транзакциях

Наверное, это зависит от дизайна базы данных, о которой идет речь.


Title: Re: Время создания тракзакции
Post by: rodigy on April 14, 2017, 07:34:01 PM
Для bitcoin сети время транзакции - это время блока, в который транзакция включена. Несмотря на то, что стандартный клиент запоминает время создания им транзакции, в блокчейне это время не содержится. Таким образом, если ваш клиент был выключен в момент публикации транзакции в сети и до момента, как она была включена в какой либо блок, у него нет никакой возможности указать более точное время, чем время блока, в который эта транзакция включена.
Если транзакция еще не была включена в блок , что будет показывать time?


Наверное, это зависит от дизайна базы данных, о которой идет речь.
речь о  LTC,DASH,DOGE


Title: Re: Время создания тракзакции
Post by: ThisNameIsAlreadyInUse on April 14, 2017, 07:54:16 PM
Если транзакция еще не была включена в блок , что будет показывать time?
Это зависит от системы/сервиса, о которой иде речь. В случае blockexplorer.com можно только предполагать, или спросить у их разработчиков. Я бы отображал время, когда мой узел получил транзакцию по сети.




речь о  LTC,DASH,DOGE

ltc и doge - копии биткоина в этом вопросе. Относительно dash я точно не помню, но, если не ошибаюсь, это PoS-монета. В известных мне реализациях PoS, время транзакции присутсвует в самой транзакции. Курите исходники.


Title: Re: Время создания тракзакции
Post by: ON on April 16, 2017, 01:44:25 AM
У каждой транзакции есть параметр time , по какому стандарту времени или  поясу он привязан??
Это unix timestamp - он не привязан к часовому поясу
https://ru.wikipedia.org/wiki/UNIX-%D0%B2%D1%80%D0%B5%D0%BC%D1%8F