finally fixed all indents in SSH ref
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
|
||||
===== Legacy
|
||||
|
||||
[NOTE]
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
==== Private
|
||||
|
||||
include::legacy/main.adoc[]
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
===== v1 (Encrypted)
|
||||
|
||||
[TIP]
|
||||
@@ -42,21 +41,21 @@ The author recommends using `aes256-ctr`. It is currently the upstream default.
|
||||
----
|
||||
0.0 "openssh-key-v1" string plus terminating nullbyte (15 bytes)
|
||||
1.0 uint32 allocator for 1.0.0 (4 bytes)
|
||||
1.0.0 cipher name string (ASCII bytes)
|
||||
1.0.0 cipher name string (ASCII bytes)
|
||||
2.0 uint32 allocator for 2.0.0 (4 bytes)
|
||||
2.0.0 KDF name string (ASCII bytes)
|
||||
2.0.0 KDF name string (ASCII bytes)
|
||||
3.0 uint32 allocator for KDF options (3.0.0 to 3.0.1) (4 bytes)
|
||||
3.0.0 uint32 allocator for 3.0.0.0 (4 bytes)
|
||||
3.0.0.0 Salt/IV (bytes)
|
||||
3.0.1 uint32 for number of rounds/"work factor" (4 bytes)
|
||||
3.0.0 uint32 allocator for 3.0.0.0 (4 bytes)
|
||||
3.0.0.0 Salt/IV (bytes)
|
||||
3.0.1 uint32 for number of rounds/"work factor" (4 bytes)
|
||||
4.0 uint32 counter for # of keys (4 bytes)
|
||||
4.0.0 uint32 allocator for public key #n (4.0.0.0 to 4.0.0.1) (4 bytes)
|
||||
4.0.0.0 uint32 allocator for 4.0.0.0.0 (4 bytes)
|
||||
4.0.0.0.0 public key #n keytype string (ASCII bytes)
|
||||
4.0.0.1 uint32 allocator for 4.0.0.1.0 (4 bytes)
|
||||
4.0.0.1.0 public key #n payload (bytes)
|
||||
4.0.1 uint32 allocator for encrypted private key structure blob #n (4.0.1.0) (4 bytes)
|
||||
4.0.1.0 <ENCRYPTED BLOB>
|
||||
4.0.0 uint32 allocator for public key #n (4.0.0.0 to 4.0.0.1) (4 bytes)
|
||||
4.0.0.0 uint32 allocator for 4.0.0.0.0 (4 bytes)
|
||||
4.0.0.0.0 public key #n keytype string (ASCII bytes)
|
||||
4.0.0.1 uint32 allocator for 4.0.0.1.0 (4 bytes)
|
||||
4.0.0.1.0 public key #n payload (bytes)
|
||||
4.0.1 uint32 allocator for encrypted private key structure blob #n (4.0.1.0) (4 bytes)
|
||||
4.0.1.0 <ENCRYPTED BLOB>
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
@@ -89,31 +88,31 @@ dCXGDaRlL924VVCYUytRvu7ilZ+dtc9aCQUFJyDF3iXyxN2H68x7teo9e8vqzGtzLkw5KV
|
||||
----
|
||||
0.0 6f70656e7373682d6b65792d763100 ("openssh-key-v1" + 0x00)
|
||||
1.0 0000000a (10)
|
||||
1.0.0 6165733235362d637472 ("aes256-ctr")
|
||||
1.0.0 6165733235362d637472 ("aes256-ctr")
|
||||
2.0 00000006 (6)
|
||||
2.0.0 626372797074 ("bcrypt")
|
||||
2.0.0 626372797074 ("bcrypt")
|
||||
3.0 00000018 (24)
|
||||
3.0.0 00000010 (16)
|
||||
3.0.0.0 50132f72900d68e0a31f9d75b6f0a5bc (bytes)
|
||||
3.0.1 00000064 (100)
|
||||
3.0.0 00000010 (16)
|
||||
3.0.0.0 50132f72900d68e0a31f9d75b6f0a5bc (bytes)
|
||||
3.0.1 00000064 (100)
|
||||
4.0 00000001 (1)
|
||||
4.0.0 00000033 (51)
|
||||
4.0.0.0 0000000b (11)
|
||||
4.0.0.0.0 7373682d65643235353139 ("ssh-ed25519")
|
||||
4.0.0.1 00000020 (32)
|
||||
4.0.0.1.0 bfa2031aa5463113e40e16896af503c5
|
||||
299ead76b09cb63846f41cc4de1740f6 (bytes)
|
||||
4.0.1 000000a0 (160)
|
||||
4.0.1.0 c49777cd0d1a7d37db77a1814991278f
|
||||
8ce99d572e2c666b93b99867425c60da
|
||||
4652fddb8555098532b51beeee2959f9
|
||||
db5cf5a0905052720c5de25f2c4dd87e
|
||||
bcc7bb5ea3d7bcbeacc6b732e4c39295
|
||||
d9991a97ef3f0838f8a9bfd43edb3403
|
||||
189649088f6cfb78946fb914e358ac6a
|
||||
bc64691072f5f2788534d9d42d7f406b
|
||||
c5090b30df23cb7dd8c5cb938e41facd
|
||||
6e38e8845b8160bff840598118d447c2 (AES256-CTR encrypted block) (bytes)
|
||||
4.0.0 00000033 (51)
|
||||
4.0.0.0 0000000b (11)
|
||||
4.0.0.0.0 7373682d65643235353139 ("ssh-ed25519")
|
||||
4.0.0.1 00000020 (32)
|
||||
4.0.0.1.0 bfa2031aa5463113e40e16896af503c5
|
||||
299ead76b09cb63846f41cc4de1740f6 (bytes)
|
||||
4.0.1 000000a0 (160)
|
||||
4.0.1.0 c49777cd0d1a7d37db77a1814991278f
|
||||
8ce99d572e2c666b93b99867425c60da
|
||||
4652fddb8555098532b51beeee2959f9
|
||||
db5cf5a0905052720c5de25f2c4dd87e
|
||||
bcc7bb5ea3d7bcbeacc6b732e4c39295
|
||||
d9991a97ef3f0838f8a9bfd43edb3403
|
||||
189649088f6cfb78946fb914e358ac6a
|
||||
bc64691072f5f2788534d9d42d7f406b
|
||||
c5090b30df23cb7dd8c5cb938e41facd
|
||||
6e38e8845b8160bff840598118d447c2 (AES256-CTR encrypted block) (bytes)
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
|
||||
include::plain.adoc[]
|
||||
include::encrypted.adoc[]
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
===== v1 (Plain)
|
||||
|
||||
[TIP]
|
||||
@@ -13,17 +12,17 @@ Since plaintext/unencrypted keys do not have a cipher or KDF (as there's no encr
|
||||
----
|
||||
0.0 "openssh-key-v1" string plus terminating nullbyte (15 bytes)
|
||||
1.0 uint32 allocator for 1.0.0 (4 bytes)
|
||||
1.0.0 cipher name string (ASCII bytes)
|
||||
1.0.0 cipher name string (ASCII bytes)
|
||||
2.0 uint32 allocator for 2.0.0 (4 bytes)
|
||||
2.0.0 KDF name string (ASCII bytes)
|
||||
2.0.0 KDF name string (ASCII bytes)
|
||||
3.0 uint32 allocator for KDF options (3.0.0 to 3.0.1) (4 bytes) (ALWAYS 0 for unencrypted keys, so no following substructure)
|
||||
4.0 uint32 counter for # of keys (4 bytes)
|
||||
4.0.0 uint32 allocator for public key #n (4.0.0.0 to 4.0.0.1) (4 bytes)
|
||||
4.0.0.0 uint32 allocator for 4.0.0.0.0 (4 bytes)
|
||||
4.0.0.0.0 public key #n keytype string (ASCII bytes)
|
||||
4.0.0.1 uint32 allocator for 4.0.0.1.0 (4 bytes)
|
||||
4.0.0.1.0 public key #n payload (bytes)
|
||||
4.0.1 uint32 allocator for private key structure #n (4.0.1.0 to 4.0.1.5) (4 bytes)
|
||||
4.0.0 uint32 allocator for public key #n (4.0.0.0 to 4.0.0.1) (4 bytes)
|
||||
4.0.0.0 uint32 allocator for 4.0.0.0.0 (4 bytes)
|
||||
4.0.0.0.0 public key #n keytype string (ASCII bytes)
|
||||
4.0.0.1 uint32 allocator for 4.0.0.1.0 (4 bytes)
|
||||
4.0.0.1.0 public key #n payload (bytes)
|
||||
4.0.1 uint32 allocator for private key structure #n (4.0.1.0 to 4.0.1.5) (4 bytes)
|
||||
4.0.1.0 uint32 decryption "checksum" #1 (should match 4.0.1.1) (4 bytes)
|
||||
4.0.1.1 uint32 decryption "checksum" #2 (should match 4.0.1.0) (4 bytes)
|
||||
4.0.1.2 Copy of 4.0.0.0; allocator for 4.0.1.2.0 (4 bytes)
|
||||
|
||||
Reference in New Issue
Block a user