搜尋套件、儲存庫與 APP 分類

GitHub 儲存庫bennyboer/diary

日記

採用尖端加密技術的數位日記

日記 專案封面
星標
8
分支
2
最近推送(UTC)
2023年1月8日
專案狀態
未封存

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

Diary

A digital diary with state-of-the-art encryption.

Calendar

Editor

Background

I feel like the days of traditional diaries are over. Not only are they inconvenient to carry around, but they are also not very secure. Thus, I decided to create a digital diary that is secure and easy to use.

Technology

The project is a local Desktop application that stores all data on the local file system. All files in the repository are encrypted using the ChaCha20-Poly1305 cipher which uses a 256-Bit key. That is plenty to protect your diary for the next years. The key is derived from a password using the Argon2 algorithm, which is currently the recommended algorithm. You can only decrypt the diary again using the same password. In the future we might add support for a second factor like a FIDO2 key that offers a higher level of security.

If you want to save your data in the cloud you can bind a directory to a cloud storage service like Dropbox or Google Drive. Since your data is encrypted and the cloud service private your diary should be safe from prying eyes.

Installation

Build it yourself
cd client
flutter build windows

You'll find the executable in client/build/windows/runner/Release/.

Build Installer
flutter pub run msix:create

Usage

The app currently consists of a simple calendar that just shows whether a day has an entry or not. When clicking on the day in the calendar you'll be able to either create a new entry or edit an existing one (if you know the password for decryption at least).

The encrypted diary entries are stored under your home directory in a folder named .diary.

Getting started

Prerequisites
  • Install Rust
  • Install Flutter
  • Install LLVM (https://pub.dev/packages/ffigen#installing-llvm)
Rebuilding Flutter <> Rust bridge

Run ./tools/build_bridge.sh or ./tools/build_bridge.bat depending on your OS

Benjamin Michel GitHub avatar
GitHub 作者

Benjamin Michel ↗

Working as a full-stack developer at Yolawo.

Yolawo GmbHMunich官方網站 ↗
語言DartC++CMakeRustCShellBatchfile

分類

依賴 Flutter 元件

App 分類

如何選擇適合專案的儲存庫?

先依使用情境篩選,再比較專案活躍情況,最後到原始儲存庫確認使用要求。

  1. 透過儲存庫名稱、作者或描述搜尋,再依技術分類縮小範圍。
  2. 綜合星標、分支與最近推送比較專案;星標反映社群關注,不保證品質。
  3. 使用前在 GitHub 確認 README、授權條款與 Issues。

來源與維護

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗