Я просматриваю историю биткойнов на github. Я пытаюсь найти коммит, в котором OP_RETURN стал стандартным tx. Это было включено в журнал изменений для Bitcoin Core 0.90. Любая помощь будет оценена по достоинству.
Я просматриваю Script Solver и вижу, где OP_RETURN включен как тип в шаблон, но не вижу, где он возвращает true для любого случая нулевых данных.
Спасибо.
Это PR, который сделал стандартными выходные данные OP_RETURN:
Коммит:
https://github.com/jgarzik/bitcoin/commit/a79342479f577013f2fd2573fb32585d6f4981b3
Текущий код:
https://github.com/bitcoin/bitcoin/blob/v0.11.0/src/script/standard.cpp#L56-L58
if (GetBoolArg("-datacarrier", true))
mTemplates.insert(make_pair(TX_NULL_DATA, CScript() << OP_RETURN << OP_SMALLDATA));
mTemplates.insert(make_pair(TX_NULL_DATA, CScript() << OP_RETURN));
Здесь:
bool Solver(const CScript& scriptPubKey, txnouttype& typeRet, vector<vector<unsigned char> >& vSolutionsRet)
[...]
// Empty, provably prunable, data-carrying output
if (GetBoolArg("-datacarrier", true))
mTemplates.insert(make_pair(TX_NULL_DATA, CScript() << OP_RETURN << OP_SMALLDATA));
mTemplates.insert(make_pair(TX_NULL_DATA, CScript() << OP_RETURN));