Add a way to pad transactions' size if needed by Simplicity cost metric
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- blockchain
Línea de trabajo
El issue menciona rust-elements, pero no indica ningún archivo ni prueba. Empieza localizando los puntos de entrada del peso de las transacciones y la serialización, así como la gestión existente del coste de Simplicity; después determina la base del padding y la cobertura necesaria. Se considera terminado cuando se haya implementado un mecanismo estandarizado y probado para aplicar padding a las transacciones hasta alcanzar el peso requerido.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Simplicity transactions have an additional "cost" associated with the computational resources consumed by verification of the results of executing the contract.
This cost is paid for by ensuring that the transaction has a sufficiently high weight (using conventional weight calculations) to cause the associated fee to be adequate according to the cost formula. Currently, most typical Simplicity programs inherently produce large enough transactions to satisfy this requirement, so there hasn't been a need to artificially increase the size of their transactions in order to get them accepted by Liquid nodes. However, this might not always be the case for more computationally-intensive contracts in the future, e.g. those that use loops or that call expensive jets repeatedly for some reason.
So, we could use a standardized way to pad transactions to make them deliberately larger when this turns out to be required by the cost formula.
@apoelstra suggested that the appropriate place to specify and implement the basis for this is here in rust-elements.
- Lenguaje dominante
- Rust
- Estrellas
- 57
- Forks
- 40
- Merge medio
- 2 d 2 h
- PR fusionados (30 d)
- 1
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ElementsProject/rust-elements
-
The Fuzz workflow is failing Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
ElementsProject/rust-elements#290 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
ElementsProject/rust-elements#277 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
ElementsProject/rust-elements#273 · 3 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
ElementsProject/rust-elements#268 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
ElementsProject/rust-elements#262 · 2 comentarios · 1 reacción ·
Todos los issues de ElementsProject/rust-elements
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
ontola/atomic-server#1625 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
VirusTotal/yara-x#777 ·
-
has_tail_capacity wraps and get_writable_raw_unchecked commits raw_len before the bounds check Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
stratum-mining/stratum#2404 ·
-
bug ci good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100