fix: add contents and fix broken links
This commit is contained in:
parent
6e1e01954e
commit
e387f93d75
@ -61,7 +61,7 @@ the repository and clone it locally. For email contributions, ensure Git is
|
||||
installed on your machine.
|
||||
|
||||
For setting up local development Environment, you can refer to [this
|
||||
section](../setup-dev-env/).
|
||||
section](/appendix/setup-dev-env).
|
||||
|
||||
### Step 2: Making Changes
|
||||
|
||||
|
@ -59,15 +59,6 @@ cd GpgFrontend
|
||||
This step ensures that line endings are consistent across different operating
|
||||
systems.
|
||||
|
||||
- **For Windows:**
|
||||
|
||||
```bash
|
||||
git config --global core.autocrlf false
|
||||
git config --global core.eol lf
|
||||
```
|
||||
|
||||
- **For macOS:**
|
||||
|
||||
```bash
|
||||
git config --global core.autocrlf false
|
||||
git config --global core.eol lf
|
||||
@ -82,7 +73,7 @@ sudo apt-get update
|
||||
sudo apt-get install -y build-essential cmake ninja-build libarchive-dev libssl-dev libgpgme-dev
|
||||
```
|
||||
|
||||
- **On macOS (11 and 12):**
|
||||
- **On macOS 12 or later:**
|
||||
|
||||
```bash
|
||||
brew install cmake openssl@3 ninja libarchive gpgme
|
||||
|
@ -9,9 +9,7 @@ contributions to achieve this goal. Fortunately, translation work does not
|
||||
require an understanding of difficult technology. Volunteers simply need to use
|
||||
their skills to get the job done and make it accessible to everyone.
|
||||
|
||||
## Work Offline
|
||||
|
||||
### What you need to know about translation work
|
||||
## What you need to know about translation work
|
||||
|
||||
From v2.1.2, GpgFrontend uses the Qt translation support library [Qt
|
||||
Linguist](https://doc.qt.io/qt-6/qtlinguist-index.html) in the Qt project.
|
||||
@ -19,7 +17,7 @@ Before starting everything, you need to know something about this library. After
|
||||
you are sure about the content of the document, you can first try to see how
|
||||
GpgFrontend uses the tools provided by this library.
|
||||
|
||||
### About translation files
|
||||
## About translation files
|
||||
|
||||
1. Download or clone source code
|
||||
[HERE](https://github.com/saturneric/GpgFrontend)
|
||||
@ -27,13 +25,13 @@ GpgFrontend uses the tools provided by this library.
|
||||
3. Add a new language: Create a new file; see [locale codes](https://saimana.com/list-of-country-locale-code/).
|
||||
4. To edit or update an existing language, navigate to the path `resource/lfs/locale/ts`.
|
||||
|
||||
### Before starting your work
|
||||
## Before starting your work
|
||||
|
||||
Before starting your work, it is no longer necessary to contact me. Please
|
||||
ensure you have a thorough understanding of Qt Linguist and its usage. You can
|
||||
directly edit the files, or use the Qt Linguist GUI Tool for editing.
|
||||
|
||||
### Updates to Translation Work Process
|
||||
## Updates to Translation Work Process
|
||||
|
||||
- **For correcting existing translations**: You can directly modify the ts files
|
||||
and then send them to me via email.
|
||||
@ -42,7 +40,7 @@ directly edit the files, or use the Qt Linguist GUI Tool for editing.
|
||||
are unsure how to use these tools, you can email me, and I will provide you
|
||||
with the appropriate ts file.
|
||||
|
||||
### Hand in your work
|
||||
## Hand in your work
|
||||
|
||||
You can submit your great work in two ways:
|
||||
|
||||
|
@ -37,33 +37,84 @@ and ECDH. Here’s a detailed comparison to help you make an informed decision:
|
||||
- **Security**: Suitable for digital signatures, but less versatile and not as
|
||||
widely supported as RSA and ECDSA.
|
||||
|
||||
## ECDSA (Elliptic Curve Digital Signature Algorithm)
|
||||
## ElGamal Encryption (ELG-E)
|
||||
|
||||
- **Key Characteristics**: ECDSA is based on elliptic curve cryptography (ECC)
|
||||
and provides equivalent security to RSA with much shorter key lengths.
|
||||
- **Key Sizes**: Commonly uses 224-bit keys for the same security level as
|
||||
2048-bit RSA keys. Higher security levels can be achieved with 256, 384, or
|
||||
521-bit keys.
|
||||
- **Use Cases**: Used for digital signatures, particularly in constrained
|
||||
environments like mobile devices and IoT due to its efficiency.
|
||||
- **Performance**: More efficient and faster than RSA for the same security
|
||||
level. Requires less computational power and bandwidth.
|
||||
- **Security**: Offers strong security with smaller key sizes, making it
|
||||
suitable for environments with limited
|
||||
resources.
|
||||
- **Key Characteristics**: ElGamal encryption (ELG-E) is an asymmetric key
|
||||
encryption algorithm used for public-key cryptography. It is based on the
|
||||
Diffie-Hellman key exchange and provides both encryption and digital
|
||||
signatures.
|
||||
- **Key Sizes**: Like DSA, ElGamal typically uses large key sizes, often 2048
|
||||
bits or more, to ensure a high level of security.
|
||||
|
||||
## ECDH (Elliptic Curve Diffie-Hellman)
|
||||
- **Use Cases**: ElGamal is used in encryption and key exchange protocols. It is
|
||||
particularly valued for its ability to generate different ciphertexts for the
|
||||
same plaintext each time it is encrypted, providing semantic security.
|
||||
However, it is less commonly used than RSA or ECC-based methods.
|
||||
|
||||
- **Key Characteristics**: ECDH is used for key exchange based on elliptic curve
|
||||
cryptography. It is commonly paired with ECDSA for secure communications.
|
||||
- **Key Sizes**: Similar to ECDSA, ECDH uses shorter keys for equivalent
|
||||
security levels (e.g., 256-bit ECDH for 128-bit security).
|
||||
- **Use Cases**: Ideal for establishing shared secrets over an insecure channel,
|
||||
often used in conjunction with ECDSA for encryption and authentication.
|
||||
- **Performance**: Efficient in terms of computational power and key size.
|
||||
Suitable for applications requiring secure key exchange.
|
||||
- **Security**: Provides robust security with smaller keys, making it efficient
|
||||
for both performance and security.
|
||||
- **Performance**: ElGamal encryption is computationally intensive, especially
|
||||
when compared to RSA or ECC algorithms. The encryption process is relatively
|
||||
slow, and the resulting ciphertexts are significantly larger than the
|
||||
plaintext.
|
||||
|
||||
- **Security**: ElGamal offers strong security, especially when large key sizes
|
||||
are used. However, its performance drawbacks and the complexity of managing
|
||||
larger ciphertexts have limited its widespread adoption.
|
||||
|
||||
## Understanding ECDH and ECDSA
|
||||
|
||||
### Overview of Elliptic Curve Cryptography (ECC)
|
||||
|
||||
Elliptic Curve Cryptography (ECC) is a powerful cryptographic method that
|
||||
provides robust security with relatively small key sizes, making it ideal for
|
||||
environments where computational power and storage are limited. ECC is commonly
|
||||
used in two main algorithms: ECDH and ECDSA.
|
||||
|
||||
### ECDH and ECDSA: Core Differences
|
||||
|
||||
- **ECDH (Elliptic Curve Diffie-Hellman)** is a key exchange algorithm that
|
||||
enables two parties to securely establish a shared secret over an insecure
|
||||
channel. This shared secret can then be used for encryption. ECDH is not
|
||||
directly used for encryption or signing; instead, it is crucial for securely
|
||||
setting up encryption keys.
|
||||
|
||||
- **ECDSA (Elliptic Curve Digital Signature Algorithm)** is used for creating
|
||||
digital signatures, allowing one party to sign a message and another to verify
|
||||
its authenticity. ECDSA ensures that the message has not been tampered with
|
||||
and that it originates from the claimed sender.
|
||||
|
||||
### Common ECC Algorithms and Their Use Cases
|
||||
|
||||
- **NIST Curves (P-256, P-384, P-521)**: These curves, standardized by the
|
||||
National Institute of Standards and Technology (NIST), are widely used in
|
||||
secure communication protocols. For example, **ECDH NIST P-256** provides
|
||||
approximately 128-bit security, making it suitable for most encryption needs,
|
||||
while **ECDSA NIST P-256** is often used for digital signatures. As the key
|
||||
size increases (e.g., P-384, P-521), so does the security level, with P-521
|
||||
offering approximately 256-bit security, ideal for applications requiring the
|
||||
highest level of protection.
|
||||
|
||||
- **ED25519 and ED448**: **ED25519** is favored for its speed and security,
|
||||
providing 128-bit security and commonly used in modern applications like
|
||||
secure messaging (e.g., Signal) and blockchain technologies. **ECDSA ED25519**
|
||||
is excellent for generating fast and secure digital signatures. **ED448**, on
|
||||
the other hand, offers higher security (224-bit) and is suitable for
|
||||
environments that require even stronger protection, although at a slight
|
||||
performance cost.
|
||||
|
||||
- **BrainPool Curves (P-256, P-384, P-512)**: These curves are alternatives to
|
||||
the NIST standards, offering similar security levels but with different
|
||||
parameters. **ECDH BrainPool P-256** and **ECDSA BrainPool P-256** are used
|
||||
when there is a preference for non-NIST curves, especially in regions or
|
||||
industries where alternative cryptographic standards are required. The
|
||||
BrainPool curves maintain the balance between security and performance across
|
||||
different key sizes.
|
||||
|
||||
- **CV25519 and X448**: **ECDH CV25519** is a counterpart to ED25519 but is used
|
||||
specifically for key exchange. It provides approximately 128-bit security and
|
||||
is widely used for its efficiency in secure communications. **ECDH X448** is
|
||||
the higher-security variant (224-bit security) and is appropriate for
|
||||
scenarios demanding more robust encryption, albeit with higher computational
|
||||
costs.
|
||||
|
||||
## Algorithm Flexibility in Primary Keys and Subkeys
|
||||
|
||||
|
@ -202,6 +202,8 @@ primary keys may be restricted to certain secure algorithms for signing, subkeys
|
||||
can employ diverse algorithms optimized for encryption, like ECDH, ensuring
|
||||
efficient and secure operations tailored to the user's needs.
|
||||
|
||||
For more Details: [Comparison of Cryptographic Algorithms](/extra/algorithms-comparison)
|
||||
|
||||
**Primary Key Supported Algorithms:**
|
||||
|
||||
- RSA
|
||||
|
@ -132,7 +132,7 @@ this document to learn how to set the default key server.
|
||||
|
||||
This is an advanced function provided by GpgFrontend, it can synchronize all
|
||||
your local public key information at one time, if you want to know, please read
|
||||
[this document](../features/sync-all-public-keys.md).
|
||||
[this document](/advanced/sync-all-public-keys).
|
||||
|
||||
## Key Server Related Settings
|
||||
|
||||
|
@ -40,8 +40,8 @@ This part is the information of the primary key of the key pair. The primary key
|
||||
is very crucial because without it, you cannot perform related management
|
||||
operations like adding and revoking sub-keys (similar to not being able to open
|
||||
the key ring). Let's introduce the information of the primary key separately
|
||||
below. If you want to learn more, see the [Basic Concepts](../basic-concepts.md)
|
||||
section.
|
||||
below. If you want to learn more, see the [Fundamental
|
||||
Concepts](/guides/fundamental-concepts) section.
|
||||
|
||||
The absence of the master key means that the private key of the master key does
|
||||
not exist, but this doesn't mean that neither the public key nor the private key
|
||||
|
@ -6,7 +6,7 @@ sidebar:
|
||||
|
||||
GpgFrontend is available for download through multiple channels. For more
|
||||
detailed instructions on installation and getting started, please refer to the
|
||||
[Getting Started Guide](../getting-started/).
|
||||
[Getting Started Guide](/overview/getting-started/).
|
||||
|
||||
---
|
||||
|
||||
|
@ -17,7 +17,7 @@ messages. Users can manage and generate key pairs, encrypt files and emails, and
|
||||
sign their communications for added security.
|
||||
|
||||
**How can I obtain and start using GpgFrontend?** You can download the latest
|
||||
version of GpgFrontend from [GpgFrontend's Downloads Page](../downloads/) and
|
||||
version of GpgFrontend from [GpgFrontend's Downloads Page](/overview/downloads) and
|
||||
choose the installation method for your platform.
|
||||
|
||||
## OpenPGP and GnuPG Explained
|
||||
@ -63,13 +63,13 @@ this based on your operating system:
|
||||
### Additional Assistance
|
||||
|
||||
- For more detailed guidance, refer to the quick start manual available at
|
||||
[Getting Started Guide](../getting-started/).
|
||||
[Getting Started Guide](/overview/getting-started).
|
||||
|
||||
## Reporting Bugs and Contributing
|
||||
|
||||
**Found a bug?** If you encounter any issues with GpgFrontend, please report
|
||||
them via the GitHub repository. You can also contact me directly if you're not
|
||||
on GitHub; see the [Contact](../contact/) section for details.
|
||||
on GitHub; see the [Contact](/overview/contact) section for details.
|
||||
|
||||
**Interested in contributing?** Feel free to modify GpgFrontend's code and
|
||||
submit a Pull Request with your enhancements. You can also send patches via
|
||||
|
Loading…
Reference in New Issue
Block a user