zeroize: do not rely on volatile operations?
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece revisando a implementação de zeroize e o black_box reforçado em zeroize/src/barrier.rs, juntamente com a alteração optimization_barrier de #1252. Determine se escritas simples podem substituir escritas voláteis em todos os targets compatíveis e, em seguida, atualize a implementação e a documentação de forma consistente.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
write_volatile docs explicitly state that:
Volatile operations are intended to act on I/O memory.
Using it on a non-volatile memory does not cause soundness issues, but it still can be considered a misuse of the function. It also can result in a very suboptimal codegen as noted in #743.
#1252 has introduced optimization_barrier which allows us to use simple writes optimizable by the compiler which are then "observed" by the barrier to prevent removal of the writes.
Unless we discover some practical issues with optimization_barrier, I think we can replace the volatile writes with simple writes. It would require changing promises made in the docs, but it should not matter in practice for downstream users.
As a potential compromise we could keep using volatile writes only on targets which do not have stable asm! macro and where optimization_barrier has to use the "hardened" black_box.
- Linguagem predominante
- Rust
- Estrelas
- 682
- Forks
- 169
- Merge médio
- 1d 9h
- PRs com merge (30d)
- 13
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de RustCrypto/utils
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
RustCrypto/utils#1546 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
RustCrypto/utils#1537 · 7 comentários ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
RustCrypto/utils#1534 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
cpufeatures: `cfg_select!`-like macroTalvez já em andamento @nazar-pc assumiu há 21 dias. Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 45/100
RustCrypto/utils#1529 · 5 comentários ·
Mantenedores costumam responder em até 1 dia
-
x86: guard CPUID leaf 7 by the maximum basic leaf; AVX detection may need XMM+YMM XCR0 stateTalvez já em andamento @eslerm assumiu há 38 dias. Aberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
RustCrypto/utils#1510 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de RustCrypto/utils
Issues semelhantes
-
docs(openclaw): RTK_REWRITE_HOST relaxes every default ask, not only commands no rule matchedAbertaarea:docs documentation good first issue priority:low
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
rtk-ai/rtk#4500 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
triage:accepted
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
open-telemetry/otel-arrow#4343 ·
Mantenedores costumam responder em até 2 dias
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
mishraprafful/multihull#150 ·
Mantenedores costumam responder em até 1 dia
-
`npx --package=vite-plus vp create` fails with exit 127 when npm is the chosen package managerAbertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
voidzero-dev/vite-plus#2970 ·
Mantenedores costumam responder em até 1 dia
-
ai_p2 comp-parquet-reader-v3
Dificuldade 2/5 Meio dia Facilidade para iniciantes 66/100
ClickHouse/ClickHouse#124986 ·
Mantenedores costumam responder em até 1 dia