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.
|
installed on your machine.
|
||||||
|
|
||||||
For setting up local development Environment, you can refer to [this
|
For setting up local development Environment, you can refer to [this
|
||||||
section](../setup-dev-env/).
|
section](/appendix/setup-dev-env).
|
||||||
|
|
||||||
### Step 2: Making Changes
|
### Step 2: Making Changes
|
||||||
|
|
||||||
@ -87,4 +87,4 @@ description of your changes and the reasons for them in your email.
|
|||||||
|
|
||||||
If you have any technical questions or need assistance, refer to the Contact
|
If you have any technical questions or need assistance, refer to the Contact
|
||||||
document for the maintainer's email address. We are here to help and encourage a
|
document for the maintainer's email address. We are here to help and encourage a
|
||||||
collaborative development process.
|
collaborative development process.
|
||||||
|
@ -59,15 +59,6 @@ cd GpgFrontend
|
|||||||
This step ensures that line endings are consistent across different operating
|
This step ensures that line endings are consistent across different operating
|
||||||
systems.
|
systems.
|
||||||
|
|
||||||
- **For Windows:**
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git config --global core.autocrlf false
|
|
||||||
git config --global core.eol lf
|
|
||||||
```
|
|
||||||
|
|
||||||
- **For macOS:**
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git config --global core.autocrlf false
|
git config --global core.autocrlf false
|
||||||
git config --global core.eol lf
|
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
|
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
|
```bash
|
||||||
brew install cmake openssl@3 ninja libarchive gpgme
|
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
|
require an understanding of difficult technology. Volunteers simply need to use
|
||||||
their skills to get the job done and make it accessible to everyone.
|
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
|
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.
|
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
|
you are sure about the content of the document, you can first try to see how
|
||||||
GpgFrontend uses the tools provided by this library.
|
GpgFrontend uses the tools provided by this library.
|
||||||
|
|
||||||
### About translation files
|
## About translation files
|
||||||
|
|
||||||
1. Download or clone source code
|
1. Download or clone source code
|
||||||
[HERE](https://github.com/saturneric/GpgFrontend)
|
[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/).
|
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`.
|
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
|
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
|
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.
|
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
|
- **For correcting existing translations**: You can directly modify the ts files
|
||||||
and then send them to me via email.
|
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
|
are unsure how to use these tools, you can email me, and I will provide you
|
||||||
with the appropriate ts file.
|
with the appropriate ts file.
|
||||||
|
|
||||||
### Hand in your work
|
## Hand in your work
|
||||||
|
|
||||||
You can submit your great work in two ways:
|
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
|
- **Security**: Suitable for digital signatures, but less versatile and not as
|
||||||
widely supported as RSA and ECDSA.
|
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)
|
- **Key Characteristics**: ElGamal encryption (ELG-E) is an asymmetric key
|
||||||
and provides equivalent security to RSA with much shorter key lengths.
|
encryption algorithm used for public-key cryptography. It is based on the
|
||||||
- **Key Sizes**: Commonly uses 224-bit keys for the same security level as
|
Diffie-Hellman key exchange and provides both encryption and digital
|
||||||
2048-bit RSA keys. Higher security levels can be achieved with 256, 384, or
|
signatures.
|
||||||
521-bit keys.
|
- **Key Sizes**: Like DSA, ElGamal typically uses large key sizes, often 2048
|
||||||
- **Use Cases**: Used for digital signatures, particularly in constrained
|
bits or more, to ensure a high level of security.
|
||||||
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.
|
|
||||||
|
|
||||||
## 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
|
- **Performance**: ElGamal encryption is computationally intensive, especially
|
||||||
cryptography. It is commonly paired with ECDSA for secure communications.
|
when compared to RSA or ECC algorithms. The encryption process is relatively
|
||||||
- **Key Sizes**: Similar to ECDSA, ECDH uses shorter keys for equivalent
|
slow, and the resulting ciphertexts are significantly larger than the
|
||||||
security levels (e.g., 256-bit ECDH for 128-bit security).
|
plaintext.
|
||||||
- **Use Cases**: Ideal for establishing shared secrets over an insecure channel,
|
|
||||||
often used in conjunction with ECDSA for encryption and authentication.
|
- **Security**: ElGamal offers strong security, especially when large key sizes
|
||||||
- **Performance**: Efficient in terms of computational power and key size.
|
are used. However, its performance drawbacks and the complexity of managing
|
||||||
Suitable for applications requiring secure key exchange.
|
larger ciphertexts have limited its widespread adoption.
|
||||||
- **Security**: Provides robust security with smaller keys, making it efficient
|
|
||||||
for both performance and security.
|
## 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
|
## 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
|
can employ diverse algorithms optimized for encryption, like ECDH, ensuring
|
||||||
efficient and secure operations tailored to the user's needs.
|
efficient and secure operations tailored to the user's needs.
|
||||||
|
|
||||||
|
For more Details: [Comparison of Cryptographic Algorithms](/extra/algorithms-comparison)
|
||||||
|
|
||||||
**Primary Key Supported Algorithms:**
|
**Primary Key Supported Algorithms:**
|
||||||
|
|
||||||
- RSA
|
- 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
|
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
|
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
|
## 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
|
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
|
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
|
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)
|
below. If you want to learn more, see the [Fundamental
|
||||||
section.
|
Concepts](/guides/fundamental-concepts) section.
|
||||||
|
|
||||||
The absence of the master key means that the private key of the master key does
|
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
|
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
|
GpgFrontend is available for download through multiple channels. For more
|
||||||
detailed instructions on installation and getting started, please refer to the
|
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.
|
sign their communications for added security.
|
||||||
|
|
||||||
**How can I obtain and start using GpgFrontend?** You can download the latest
|
**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.
|
choose the installation method for your platform.
|
||||||
|
|
||||||
## OpenPGP and GnuPG Explained
|
## OpenPGP and GnuPG Explained
|
||||||
@ -63,13 +63,13 @@ this based on your operating system:
|
|||||||
### Additional Assistance
|
### Additional Assistance
|
||||||
|
|
||||||
- For more detailed guidance, refer to the quick start manual available at
|
- 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
|
## Reporting Bugs and Contributing
|
||||||
|
|
||||||
**Found a bug?** If you encounter any issues with GpgFrontend, please report
|
**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
|
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
|
**Interested in contributing?** Feel free to modify GpgFrontend's code and
|
||||||
submit a Pull Request with your enhancements. You can also send patches via
|
submit a Pull Request with your enhancements. You can also send patches via
|
||||||
|
Loading…
Reference in New Issue
Block a user