An open API service indexing awesome lists of open source software.

https://github.com/lexxn0x3/sw_sec_presentation

๐Ÿ” Dive into Rust's security features with example codes from a university presentation at Technische Hochschule Georg Simon Ohm, covering topics like safe concurrency, error handling, and zero-cost abstractions.
https://github.com/lexxn0x3/sw_sec_presentation

coding-demonstration concurrency education error-handling memory-safety rust rust-lang software-security type-safety university

Last synced: 6 months ago
JSON representation

๐Ÿ” Dive into Rust's security features with example codes from a university presentation at Technische Hochschule Georg Simon Ohm, covering topics like safe concurrency, error handling, and zero-cost abstractions.

Awesome Lists containing this project

README

          

# Rust Software Security Features Demo ๐Ÿ›ก๏ธ๐Ÿฆ€

Welcome to the GitHub repository for the Rust Software Security Features demonstration, presented at Technische Hochschule Georg Simon Ohm! This repo contains all the example code shown during the presentation, allowing you to dive deep into the features that make Rust a uniquely secure language for software development.

## ๐Ÿ“– Overview

This repository is structured to reflect the flow of the presentation, showcasing various security features in Rust through dedicated modules. Explore the code to see Rust's approach to memory safety, concurrency, and more in action!

## ๐Ÿ“š Contents

### 1. **Static Types** ๐Ÿ”’
- **Enforcing Safety**: Dive into how Rust handles type safety and enforces explicit management of types with examples from the `static_types` module.

### 2. **Integer Overflow** ๐Ÿ“‰
- **Preventing Overflows**: Explore how Rust prevents common security vulnerabilities related to integer overflow through the `integer_overflow` module.

### 3. **Zero-Cost Abstractions** ๐Ÿš€
- **Efficient Patterns**: See how Rust's zero-cost abstractions like iterators and message passing help write efficient code that's also secure with the `zero_cost_abstraction` module.

### 4. **Error Handling** ๐Ÿ› ๏ธ
- **Graceful Failures**: Discover Rust's approach to robust error handling without exceptions by using the `error_handling` module.

### 5. **Ownership and Borrowing** ๐Ÿคฒ
- **Memory Safety**: Learn about Rust's innovative ownership model that guarantees memory safety without a garbage collector in the `borrowing` module.

### 6. **Lifetime Tracking** โณ
- **Managing Lifetimes**: Understand how Rust uses lifetimes to prevent dangling references and ensure safe memory access with the `lifetime_tracking` module.

### 7. **Safe Concurrency** ๐Ÿงต
- **Concurrency without Data Races**: Check out how Rust handles concurrency safely, making data races a thing of the past, in the `safe_concurrency` module.

## ๐Ÿš€ Getting Started

To get started with exploring these examples:
```bash
git clone https://github.com/Lexxn0x3/sw_sec_presentation.git
cd rust-security-features-demo
cargo run
```

## ๐Ÿค Contributing

Contributions are welcome! If you have improvements or corrections to the demos, please feel free to fork the repository and submit a pull request.

## ๐Ÿ“„ License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.