# SqPad
A encrypted pastebin. Gives a webui where you can post text with a title, which can then be shared via a link. The server stores the text encrypted thanks to MagicCrypt using AES-256. 

## Install
Juste compile and launch it in the same folder as "Files".

## Docker
Start by ![installing docker](https://docs.docker.com/engine/install/) if need be, then: 
```
docker compose up -f docker-compose.yml -d
```

## Usage
Simply enter a note on the form on the main page. Once submitted, the note is encrypted using DES-256. 

The note can be accessed via its individual link. Please keep in mind that the server does not store links; it only saves the name of the note (in cleartext) and its content (encrypted). 

The link can be used via a browser normally; it can also be used with curl or wget. In that case, the note is stripped of all html (only the text of the note is displayed) to be used in scripts, etc.

For now, notes are kept forever until some admin manually removes them.

## Warnings
The size of a post is limited to 1MB. This value can be changed in the source code, see the end of the main function, at the bottom of src/main.rs : 
```rust
#[actix_web::main]
async fn main() -> std::io::Result<()> {

    HttpServer::new(move || {
        App::new()
            //Limit is configured here
            .app_data(web::FormConfig::default().limit(1024 * 1000))
            .service(get_index)
            .service(post_index)
            .service(show_post)
    })
    .bind(("0.0.0.0", 8080))?
    .run()
    .await
}
```
