Skip to content

Commit 2b4e2f9

Browse files
authored
Consistency review for README.md
1 parent dd97eab commit 2b4e2f9

File tree

1 file changed

+39
-39
lines changed

1 file changed

+39
-39
lines changed

README.md

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
[![CipherStash Proxy](https://img.shields.io/badge/guide-CipherStash%20Proxy-A48CF3)](https://github.com/cipherstash/encrypt-query-language/blob/main/PROXY.md)
66
[![CipherStash Migrator](https://img.shields.io/badge/guide-CipherStash%20Migrator-A48CF3)](https://github.com/cipherstash/encrypt-query-language/blob/main/MIGRATOR.md)
77

8-
Encrypt Query Language (EQL) is a set of abstractions for transmitting, storing & interacting with encrypted data and indexes in PostgreSQL.
8+
Encrypt Query Language (EQL) is a set of abstractions for transmitting, storing, and interacting with encrypted data and indexes in PostgreSQL.
99

10-
EQL provides a data format for transmitting and storing encrypted data & indexes, and database types & functions to interact with the encrypted material.
10+
EQL provides a data format for transmitting and storing encrypted data and indexes, as well as database types and functions to interact with the encrypted material.
1111

1212
## Table of Contents
1313

@@ -27,9 +27,9 @@ EQL provides a data format for transmitting and storing encrypted data & indexes
2727

2828
## Installation
2929

30-
The simplest and fastest way to get up and running with EQL from scratch is to execute the install SQL file directly in your database.
30+
The simplest and fastest way to get up and running with EQL is to execute the install SQL file directly in your database.
3131

32-
1. Download the [cipherstash-encrypt-dsl.sql](./release/cipherstash-encrypt-dsl.sql) file
32+
1. Download [cipherstash-encrypt-dsl.sql](./release/cipherstash-encrypt-dsl.sql).
3333
2. Run the following command to install the custom types and functions:
3434

3535
```bash
@@ -42,17 +42,17 @@ Once the custom types and functions are installed, you can start using EQL in yo
4242

4343
1. Create a table with a column of type `cs_encrypted_v1` which will store your encrypted data.
4444
1. Use EQL functions to add indexes for the columns you want to encrypt.
45-
- Indexes are used by Cipherstash Proxy to understand what cryptography schemes are required for your use case.
46-
1. Initialize Cipherstash Proxy for cryptographic operations.
47-
- The Proxy will dynamically encrypt data on the way in and decrypt data on the way out based on the indexes you have defined.
45+
- Indexes are used by CipherStash Proxy to understand what cryptography schemes are required for your use case.
46+
1. Initialize CipherStash Proxy for cryptographic operations.
47+
- Proxy will dynamically encrypt data on the way in and decrypt data on the way out, based on the indexes you've defined.
4848
1. Insert data into the defined columns using a specific payload format.
49-
- The payload format is defined in the [data format](#data-format) section.
50-
1. Query the data using the EQL functions defined in the [querying data with EQL](#querying-data-with-eql) section.
49+
- See [data format](#data-format) for the payload format.
50+
1. Query the data using the EQL functions defined in [querying data with EQL](#querying-data-with-eql).
5151
- No modifications are required to simply `SELECT` data from your encrypted columns.
52-
- In order to perform `WHERE` and `ORDER BY` queries, you must wrap the queries in the EQL functions defined in the [querying data with EQL](#querying-data-with-eql) section.
52+
- To perform `WHERE` and `ORDER BY` queries, wrap the queries in the EQL functions defined in [querying data with EQL](#querying-data-with-eql).
5353
1. Integrate with your application via the [helper packages](#helper-packages) to interact with the encrypted data.
5454

55-
You can find a full getting started guide in the [GETTINGSTARTED.md](GETTINGSTARTED.md) file.
55+
Read [GETTINGSTARTED.md](GETTINGSTARTED.md) for more detail.
5656

5757
## Encrypted columns
5858

@@ -73,11 +73,11 @@ In some instances, especially when using langugage specific ORMs, EQL also suppo
7373

7474
### Configuring the column
7575

76-
In order for CipherStash Proxy to encrypt and decrypt the data, you can initialize the column in the database using the `cs_add_column_v1` function.
76+
So that CipherStash Proxy can encrypt and decrypt the data, initialize the column in the database using the `cs_add_column_v1` function.
7777
This function takes the following parameters:
7878

79-
- `table_name`: The name of the table containing the encrypted column.
80-
- `column_name`: The name of the encrypted column.
79+
- `table_name`: the name of the table containing the encrypted column.
80+
- `column_name`: the name of the encrypted column.
8181

8282
This function will **not** enable searchable encryption, but will allow you to encrypt and decrypt data.
8383
See [querying data with EQL](#querying-data-with-eql) for more information on how to enable searchable encryption.
@@ -109,7 +109,7 @@ SELECT cs_refresh_encrypt_config();
109109

110110
### Inserting data
111111

112-
When inserting data into the encrypted column, you must wrap the plaintext in the appropriate EQL payload.
112+
When inserting data into the encrypted column, wrap the plaintext in the appropriate EQL payload.
113113
These statements must be run through the CipherStash Proxy in order to **encrypt** the data.
114114

115115
**Example:**
@@ -137,7 +137,7 @@ All the data stored in the database is fully encrypted and secure.
137137

138138
### Reading data
139139

140-
When querying data, you must wrap the encrypted column in the appropriate EQL payload.
140+
When querying data, wrap the encrypted column in the appropriate EQL payload.
141141
These statements must be run through the CipherStash Proxy in order to **decrypt** the data.
142142

143143
**Example:**
@@ -346,7 +346,7 @@ Extract a field from a JSONB object in a `SELECT` statement:
346346
SELECT cs_ste_value_v1(attrs, 'DQ1rbhWJXmmqi/+niUG6qw') FROM users;
347347
```
348348
349-
The above is the equivalent to this SQL query:
349+
Which is the equivalent to the following SQL query:
350350
351351
```sql
352352
SELECT attrs->'login_count' FROM users;
@@ -361,7 +361,7 @@ Select rows that match a field in a JSONB object:
361361
SELECT * FROM users WHERE cs_ste_term_v1(attrs, 'DQ1rbhWJXmmqi/+niUG6qw') > 'QAJ3HezijfTHaKrhdKxUEg';
362362
```
363363
364-
The above is the equivalent to this SQL query:
364+
Which is the equivalent to the following SQL query:
365365
366366
```sql
367367
SELECT * FROM users WHERE attrs->'login_count' > 10;
@@ -418,20 +418,20 @@ The default Match index options are:
418418
}
419419
```
420420
421-
- `tokenFilters`: a list of filters to apply to normalise tokens before indexing.
421+
- `tokenFilters`: a list of filters to apply to normalize tokens before indexing.
422422
- `tokenizer`: determines how input text is split into tokens.
423423
- `m`: The size of the backing [bloom filter](https://en.wikipedia.org/wiki/Bloom_filter) in bits. Defaults to `2048`.
424424
- `k`: The maximum number of bits set in the bloom filter per term. Defaults to `6`.
425425
426-
**Token Filters**
426+
**Token filters**
427427
428-
There are currently only two token filters available `downcase` and `upcase`. These are used to normalise the text before indexing and are also applied to query terms. An empty array can also be passed to `tokenFilters` if no normalisation of terms is required.
428+
There are currently only two token filters available: `downcase` and `upcase`. These are used to normalise the text before indexing and are also applied to query terms. An empty array can also be passed to `tokenFilters` if no normalisation of terms is required.
429429
430430
**Tokenizer**
431431
432432
There are two `tokenizer`s provided: `standard` and `ngram`.
433-
The `standard` simply splits text into tokens using this regular expression: `/[ ,;:!]/`.
434-
The `ngram` tokenizer splits the text into n-grams and accepts a configuration object that allows you to specify the `tokenLength`.
433+
`standard` simply splits text into tokens using this regular expression: `/[ ,;:!]/`.
434+
`ngram` splits the text into n-grams and accepts a configuration object that allows you to specify the `tokenLength`.
435435
436436
**m** and **k**
437437
@@ -582,11 +582,11 @@ cs_remove_index_v1(table_name text, column_name text, index_name text)
582582
583583
Removes an index configuration from the column.
584584
585-
## Data Format
585+
## Data format
586586
587587
Encrypted data is stored as `jsonb` with a specific schema:
588588
589-
- **Plaintext Payload (Client Side):**
589+
- **Plaintext payload (client side):**
590590
591591
```json
592592
{
@@ -600,7 +600,7 @@ Encrypted data is stored as `jsonb` with a specific schema:
600600
}
601601
```
602602
603-
- **Encrypted Payload (Database Side):**
603+
- **Encrypted payload (database side):**
604604
605605
```json
606606
{
@@ -617,7 +617,7 @@ Encrypted data is stored as `jsonb` with a specific schema:
617617
The format is defined as a [JSON Schema](./cs_encrypted_v1.schema.json).
618618
619619
It should never be necessary to directly interact with the stored `jsonb`.
620-
Cipherstash proxy handles the encoding, and EQL provides the functions.
620+
CipherStash Proxy handles the encoding, and EQL provides the functions.
621621
622622
| Field | Name | Description |
623623
| ----- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@@ -628,15 +628,15 @@ Cipherstash proxy handles the encoding, and EQL provides the functions.
628628
| i.c | Column identifier | Name of the encrypted column. |
629629
| p | Plaintext | Plaintext value sent by database client. Required if kind is plaintext/pt or encrypting/et. |
630630
| q | For query | Specifies that the plaintext should be encrypted for a specific query operation. If `null`, source encryption and encryption for all indexes will be performed. Valid values are `"match"`, `"ore"`, `"unique"`, `"ste_vec"`, `"ejson_path"`, and `"websearch_to_match"`. |
631-
| c | Ciphertext | Ciphertext value. Encrypted by proxy. Required if kind is plaintext/pt or encrypting/et. |
632-
| m | Match index | Ciphertext index value. Encrypted by proxy. |
633-
| o | ORE index | Ciphertext index value. Encrypted by proxy. |
634-
| u | Unique index | Ciphertext index value. Encrypted by proxy. |
635-
| sv | STE vector index | Ciphertext index value. Encrypted by proxy. |
631+
| c | Ciphertext | Ciphertext value. Encrypted by Proxy. Required if kind is plaintext/pt or encrypting/et. |
632+
| m | Match index | Ciphertext index value. Encrypted by Proxy. |
633+
| o | ORE index | Ciphertext index value. Encrypted by Proxy. |
634+
| u | Unique index | Ciphertext index value. Encrypted by Proxy. |
635+
| sv | STE vector index | Ciphertext index value. Encrypted by Proxy. |
636636
637637
## Helper packages
638638
639-
We have created a few langague specific packages to help you interact with the payloads:
639+
We've created a few langague specific packages to help you interact with the payloads:
640640

641641
- [@cipherstash/eql](https://github.com/cipherstash/encrypt-query-language/tree/main/languages/javascript/packages/eql): This is a TypeScript implementation of EQL.
642642
- [github.com/cipherstash/goeql](https://github.com/cipherstash/goeql): This is a Go implementation of EQL
@@ -645,10 +645,10 @@ We have created a few langague specific packages to help you interact with the p
645645

646646
To cut a [release](https://github.com/cipherstash/encrypt-query-language/releases) of EQL:
647647

648-
1. Draft a [new release](https://github.com/cipherstash/encrypt-query-language/releases/new) on GitHub
649-
1. Choose a tag, and create a new one with the prefix `eql-` followed by a [semver](https://semver.org/) (for example, `eql-1.2.3`)
650-
1. Generate the release notes
651-
1. Optionally set the release to be the latest (you can set a release to be latest later on if you are testing out a release first)
652-
1. Click the `Publish release` button
648+
1. Draft a [new release](https://github.com/cipherstash/encrypt-query-language/releases/new) on GitHub.
649+
1. Choose a tag, and create a new one with the prefix `eql-` followed by a [semver](https://semver.org/) (for example, `eql-1.2.3`).
650+
1. Generate the release notes.
651+
1. Optionally set the release to be the latest (you can set a release to be latest later on if you are testing out a release first).
652+
1. Click `Publish release`.
653653

654-
This will trigger a run of the [Release EQL](https://github.com/cipherstash/encrypt-query-language/actions/workflows/release-eql.yml) workflow, which will build and attach artifacts to the release.
654+
This will trigger the [Release EQL](https://github.com/cipherstash/encrypt-query-language/actions/workflows/release-eql.yml) workflow, which will build and attach artifacts to the release.

0 commit comments

Comments
 (0)