Skip to content

Commit 130473e

Browse files
committed
chore: update js-lint to 0.2.11 and delete .prettierrc since its no longer needed
1 parent c360d70 commit 130473e

File tree

4 files changed

+37
-26
lines changed

4 files changed

+37
-26
lines changed

.prettierrc

Lines changed: 0 additions & 7 deletions
This file was deleted.

README.md

Lines changed: 29 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22

33
Encrypted filesystem library for TypeScript/JavaScript applications
44

5-
- Virtualised - files, directories, permissions are all virtual constructs, they do not correspond to real filesystems
5+
- Virtualised - files, directories, permissions are all virtual constructs, they
6+
do not correspond to real filesystems
67
- Orthogonally Persistent - all writes automatically persisted
78
- Encrypted-At-Rest - all persistence is encrypted
8-
- Random Read & Write - encryption and decryption operates over fixed-block sizes
9+
- Random Read & Write - encryption and decryption operates over fixed-block
10+
sizes
911
- Streamable - files do not need to loaded fully in-memory
1012
- Comprehensive continuous benchmarks in CI/CD
1113

@@ -58,9 +60,11 @@ await efs.destroy();
5860

5961
### Encryption & Decryption Protocol
6062

61-
Encryption & Decryption implemented using the `node-forge` library. However it is possible to plug in your own `encrypt` and `decrypt` functions.
63+
Encryption & Decryption implemented using the `node-forge` library. However it
64+
is possible to plug in your own `encrypt` and `decrypt` functions.
6265

63-
Internally we use the AES-GCM symmetric encryption using a master `dbKey` that can be 128, 192 or 256 bits long.
66+
Internally we use the AES-GCM symmetric encryption using a master `dbKey` that
67+
can be 128, 192 or 256 bits long.
6468

6569
The `dbKey` can be generated from several methods:
6670

@@ -75,15 +79,20 @@ For example:
7579
const [key, salt] = await generateKeyFromPass('secure password');
7680
```
7781

78-
This uses PBKDF2 to derive a symmetric key. The default key length will be 256 bits. For deterministic key generation, make sure to specify the `salt` parameter.
82+
This uses PBKDF2 to derive a symmetric key. The default key length will be 256
83+
bits. For deterministic key generation, make sure to specify the `salt`
84+
parameter.
7985

8086
```ts
8187
const [key, salt] = await generateKeyFromPass('secure password', 'salt');
8288
```
8389

84-
Construction of `EncryptedFS` relies on an optional `blockSize` parameter. This is by default set to 4 KiB. All files are broken up into 4 KiB plaintext blocks. When encrypted, they are persisted as ciphertext blocks.
90+
Construction of `EncryptedFS` relies on an optional `blockSize` parameter. This
91+
is by default set to 4 KiB. All files are broken up into 4 KiB plaintext blocks.
92+
When encrypted, they are persisted as ciphertext blocks.
8593

86-
The ciphertext blocks contain an initialization vector plus an authorisation tag. Here is an example of the structure:
94+
The ciphertext blocks contain an initialization vector plus an authorisation
95+
tag. Here is an example of the structure:
8796

8897
```
8998
| iv (16 bytes) | authTag (16 bytes) | ciphertext data (x bytes) |
@@ -95,9 +104,16 @@ The ciphertext data length is equal to the plaintext block length.
95104

96105
There are some differences between EFS and Node FS:
97106

98-
- User, Group and Other permissions: In EFS User, Group and Other permissions are strictly confined to their permission class. For example, a User in EFS does not have the permissions that a Group or Other has while in Node FS a User also has permissions that Group and Other have.
99-
- Sticky Files: In Node FS, a sticky bit is a permission bit that is set on a file or a directory that lets only the owner of the file/directory or the root user to delete or rename the file. EFS does not support the use of sticky bits.
100-
- Character Devices: Node FS contains Character Devices which can be written to and read from. However, in EFS Character Devices are not supported yet.
107+
- User, Group and Other permissions: In EFS User, Group and Other permissions
108+
are strictly confined to their permission class. For example, a User in EFS
109+
does not have the permissions that a Group or Other has while in Node FS a
110+
User also has permissions that Group and Other have.
111+
- Sticky Files: In Node FS, a sticky bit is a permission bit that is set on a
112+
file or a directory that lets only the owner of the file/directory or the root
113+
user to delete or rename the file. EFS does not support the use of sticky
114+
bits.
115+
- Character Devices: Node FS contains Character Devices which can be written to
116+
and read from. However, in EFS Character Devices are not supported yet.
101117

102118
## Development
103119

@@ -124,7 +140,9 @@ npm run lintfix
124140
npm run bench
125141
```
126142

127-
View benchmarks here: https://github.com/MatrixAI/js-encryptedfs/blob/master/benches/results with https://raw.githack.com/
143+
View benchmarks here:
144+
https://github.com/MatrixAI/js-encryptedfs/blob/master/benches/results with
145+
https://raw.githack.com/
128146

129147
### Docs Generation
130148

package-lock.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
"util-callbackify": "^1.0.0"
7474
},
7575
"devDependencies": {
76-
"@matrixai/lint": "^0.2.6",
76+
"@matrixai/lint": "^0.2.11",
7777
"@fast-check/jest": "^2.1.0",
7878
"@swc/core": "1.3.82",
7979
"@swc/jest": "^0.2.29",

0 commit comments

Comments
 (0)