| ▲ | rice7th 8 months ago | |
Tests do not account for all possible executions of the code, rather only a subset of it. Rust is indeed a safe language, in terms of memory safety. Vulnerabilities are still very possible within a rust program, they just need to not rely on memory exploits, and the borrow checker won't catch them. That is why formal verification exists. If you have a really critical, high security application then you should ensure the maximum amount of safety and reliability. Formal verification enables the developer to write a mathematical proof that the program behaves correctly in all situations, something that the borrow checker cannot do. | ||
| ▲ | 8 months ago | parent [-] | |
| [deleted] | ||