Skip to content

bitvec soundness #157

@tarcieri

Description

@tarcieri

bitvec has known soundness issues under Miri and does not seem to pass with either Stacked Borrows or Tree Borrows. It also seems there are some miscompliation issues as well. I brought up its usage in cryptographic contexts in some opsem discussions around some of these issues and it made people seem worried.

FWIW I wrote a crate implementing some bitvec-like reference types which passes Miri under Tree Borrows (but not Stacked Borrows, where it has one of the same problems as bitvec) and has 100% code coverage. However even passing TB but not SB was still concerning to some for use in cryptographic contexts which I understand and sympathize with.

Anyway, I bring this up regarding #155, mostly to note that while I like the general direction of using types that can work at the bit-level for implementing scalar multiplication, I hope that doesn't necessitate requiring bitvec as a dependency to make wnaf work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions