ElementsProject / ElementsProject/elements
Implement fast merkleroot computations in Python
- Lenguaje dominante
- C++
- Estrellas
- 1.2k
- Forks
- 416
- Merge medio
- 1 d 23 h
- PR fusionados (30 d)
- 15
Descripción
Currently our functional tests require setting the global `util.node_fastmerkle` with an Elements node, and to compute merkle roots in blocktools.py we call an RPC on this node. This is ugly and crazy and causes mysterious failures when adding new tests. We should just implement sha2 midstates in Python (there is plenty of MIT-licensed code floating around which does this, for example https://github.com/slush0/stratum-mining-proxy/blob/master/mining_libs/midstate.py ).
Guía de contribución
Línea de trabajo
Empieza leyendo blocktools.py y las pruebas funcionales que establecen util.node_fastmerkle; después, compara la implementación de midstate referenciada con la ruta actual de cálculo de la raíz de Merkle basada en RPC. La tarea estará terminada cuando las raíces de Merkle se calculen en Python sin requerir un nodo de Elements ni la dependencia global node_fastmerkle, y las pruebas afectadas ya no dependan de esa configuración.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- blockchain
- Tipo de issue
- Refactorización
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100