keybase / keybase/keybase-issues
error: no valid primary key self-signature
- Dominant language
- No language data
- Stars
- 899
- Forks
- 40
- PR merge metrics
- No merged PRs in 30d
Description
Similar issue to: #1270
I'm trying to push a updated key to keybase and keep getting this error from both the CLI and the web interface. I thought for a while that keybase might have been caching an old copy of my key, but after getting that resolved I'm still seeing the error.
Am I doing something wrong on my end? It's an ECC NIST512, non expired, self-signed key. I would appreciate any help on getting keybase to work with this key.
Please let me know if you need any additional info from me - Thanks!
---
Public Key details:
```
http://pgp.mit.edu/pks/lookup?op=vindex&search=0x2875D7C7398ECFC4
http://pgp.mit.edu/pks/lookup?op=get&search=0x2875D7C7398ECFC4
```
Packets:
```
gpg --export -a 398ECFC4 | gpg --list-packets
```
```
# off=0 ctb=98 tag=6 hlen=2 plen=147
:public key packet:
version 4, algo 19, created 1433446098, expires 0
pkey[0]: [48 bits] nistp521 (1.3.132.0.35)
pkey[1]: [1059 bits]
keyid: 2875D7C7398ECFC4
# off=149 ctb=b4 tag=13 hlen=2 plen=54
:user ID packet: "Charles R. Portwood II "
# off=205 ctb=88 tag=2 hlen=2 plen=195
:signature packet: algo 19, keyid 2875D7C7398ECFC4
version 4, created 1437405916, md5len 0, sigclass 0x13
digest algo 10, begin of digest a1 b5
hashed subpkt 27 len 1 (key flags: 03)
hashed subpkt 9 len 4 (key expires after 10y0d0h0m)
hashed subpkt 30 len 1 (features: 01)
hashed subpkt 23 len 1 (key server preferences: 80)
hashed subpkt 2 len 4 (sig created 2015-07-20)
hashed subpkt 11 len 4 (pref-sym-algos: 9 8 7 3)
hashed subpkt 21 len 4 (pref-hash-algos: 10 9 8 11)
hashed subpkt 22 len 4 (pref-zip-algos: 2 3 1 0)
subpkt 16 len 8 (issuer key ID 2875D7C7398ECFC4)
data: [521 bits]
data: [521 bits]
# off=402 ctb=b4 tag=13 hlen=2 plen=54
:user ID packet: "Charles R. Portwood II "
# off=458 ctb=88 tag=2 hlen=2 plen=194
:signature packet: algo 19, keyid 2875D7C7398ECFC4
version 4, created 1437405916, md5len 0, sigclass 0x13
digest algo 10, begin of digest af 8d
hashed subpkt 27 len 1 (key flags: 03)
hashed subpkt 9 len 4 (key expires after 10y0d0h0m)
hashed subpkt 30 len 1 (features: 01)
hashed subpkt 23 len 1 (key server preferences: 80)
hashed subpkt 2 len 4 (sig created 2015-07-20)
hashed subpkt 11 len 4 (pref-sym-algos: 9 8 7 3)
hashed subpkt 21 len 4 (pref-hash-algos: 10 9 8 11)
hashed subpkt 22 len 4 (pref-zip-algos: 2 3 1 0)
subpkt 16 len 8 (issuer key ID 2875D7C7398ECFC4)
data: [520 bits]
data: [521 bits]
# off=654 ctb=88 tag=2 hlen=2 plen=193
:signature packet: algo 19, keyid 2875D7C7398ECFC4
version 4, created 1433446098, md5len 0, sigclass 0x13
digest algo 10, begin of digest 9e 5b
hashed subpkt 2 len 4 (sig created 2015-06-04)
hashed subpkt 27 len 1 (key flags: 03)
hashed subpkt 9 len 4 (key expires after 10y0d0h0m)
hashed subpkt 11 len 4 (pref-sym-algos: 9 8 7 2)
hashed subpkt 21 len 5 (pref-hash-algos: 8 9 10 11 2)
hashed subpkt 22 len 2 (pref-zip-algos: 2 1)
hashed subpkt 30 len 1 (features: 01)
hashed subpkt 23 len 1 (key server preferences: 80)
subpkt 16 len 8 (issuer key ID 2875D7C7398ECFC4)
data: [518 bits]
data: [521 bits]
# off=849 ctb=b8 tag=14 hlen=2 plen=151
:public sub key packet:
version 4, algo 18, created 1433446098, expires 0
pkey[0]: [48 bits] nistp521 (1.3.132.0.35)
pkey[1]: [1059 bits]
pkey[2]: [32 bits]
keyid: 5DDAE4D4676294C4
# off=1002 ctb=88 tag=2 hlen=2 plen=171
:signature packet: algo 19, keyid 2875D7C7398ECFC4
version 4, created 1433446098, md5len 0, sigclass 0x18
digest algo 10, begin of digest 69 94
hashed subpkt 2 len 4 (sig created 2015-06-04)
hashed subpkt 27 len 1 (key flags: 0C)
hashed subpkt 9 len 4 (key expires after 10y0d0h0m)
subpkt 16 len 8 (issuer key ID 2875D7C7398ECFC4)
data: [521 bits]
data: [521 bits]
# off=1175 ctb=b9 tag=14 hlen=3 plen=525
:public sub key packet:
version 4, algo 1, created 1437405765, expires 0
pkey[0]: [4096 bits]
pkey[1]: [17 bits]
keyid: C3D841D57C80A3E0
# off=1703 ctb=89 tag=2 hlen=3 plen=712
:signature packet: algo 19, keyid 2875D7C7398ECFC4
version 4, created 1437405765, md5len 0, sigclass 0x18
digest algo 10, begin of digest 6f c5
hashed subpkt 2 len 4 (sig created 2015-07-20)
hashed subpkt 27 len 1 (key flags: 02)
hashed subpkt 9 len 4 (key expires after 9y319d0h0m)
subpkt 16 len 8 (issuer key ID 2875D7C7398ECFC4)
subpkt 32 len 540 (signature: v4, class 0x19, algo 1, digest algo 8)
data: [518 bits]
data: [517 bits]
```
```
keybase -d push
```
```
debug: + opening config file: /home/charlesportwoodii/.config/keybase/config.json
debug: ++ loading config file /home/charlesportwoodii/.config/keybase/config.json
debug: -- loaded config file -> {"user":{"email":"charlesportwoodii@********.net","salt":"3debd4ccc09a5076655db80ab41bf19d","id":"c3abe592dc6eabcaebca452b614a3900","name":"charlesportwood"}}
debug: - opened config file; found=true
debug: + testing GPG command-line client
debug: | using GPG command: gpg2
debug: - tested GPG command-line client -> null
debug: Setting GPG_TTY=/dev/pts/0
debug: + Load proxy CAs
debug: - Loaded proxy CAs
debug: + startup message
debug: | CLI version: 0.8.12
debug: | Platform info: {"versions":{"http_parser":"1.0","node":"0.10.39","v8":"3.14.5.9","ares":"1.9.0-DEV","uv":"0.10.36","zlib":"1.2.8","modules":"11","openssl":"1.0.1o"},"arch":"x64","platform":"linux","features":{"debug":false,"uv":true,"ipv6":true,"tls_npn":true,"tls_sni":true,"tls":true}}
debug: | Version info: ["keybase (keybase.io CLI) v0.8.12","- node.js v0.10.39","- gpg (GnuPG) 2.1.6","- libgcrypt 1.6.3","Identifies as: 'keybase.io node.js client v0.8.12 linux'"]
debug: - startup message
debug: + opening database file: /home/charlesportwoodii/.local/share/keybase/keybase.idb
debug: ++ DB::_init_db
debug: -- DB::_init_db -> 0
debug: - DB opened
debug: + session::load
debug: ++ opening config file: /home/charlesportwoodii/.cache/keybase/session.json
debug: +++ loading config file /home/charlesportwoodii/.cache/keybase/session.json
debug: --- loaded config file ->
debug: -- opened config file; found=true
debug: - session::load
debug: + charlesportwood: load user
debug: ++ charlesportwood: load user from local storage
debug: +++ load sig chain from local storage
debug: ||| loading sig chain w/ payload hash 40f3d8bb21851adf277450636d0703c275bf1649b11532cf3f6ce03d55541264
debug: ++++ c3abe592dc6eabcaebca452b614a3900: load signature chain
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 40f3d8bb21851adf277450636d0703c275bf1649b11532cf3f6ce03d55541264
debug: |||| -> found link and previous; prev=f4a9cfcc8b76de7d85148df9c1e6a1840bc74df7d74701ded8380c5d4df770e4
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link f4a9cfcc8b76de7d85148df9c1e6a1840bc74df7d74701ded8380c5d4df770e4
debug: |||| -> found link and previous; prev=50ee32bbeb1bbf738009553c94163104d12c823a464829ecae2b845a6efbdafa
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 50ee32bbeb1bbf738009553c94163104d12c823a464829ecae2b845a6efbdafa
debug: |||| -> found link and previous; prev=bfecb91a3fe3c038952f897340ac858798ae06c9966cac03887b1b18efb96906
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link bfecb91a3fe3c038952f897340ac858798ae06c9966cac03887b1b18efb96906
debug: |||| -> found link and previous; prev=ffc33ba73fce925435d54792a83d157db68af14c32e16135e82b477acbfc0fa9
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link ffc33ba73fce925435d54792a83d157db68af14c32e16135e82b477acbfc0fa9
debug: |||| -> found link and previous; prev=118e55e6108e4e7e3829cd8d097f3a42bdf1cada5b572b3e46e2802a4ee0afea
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 118e55e6108e4e7e3829cd8d097f3a42bdf1cada5b572b3e46e2802a4ee0afea
debug: |||| -> found link and previous; prev=ad41408340c02cbb1c9604b9bbc242a98991a07da1406be44e6accacf755414f
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link ad41408340c02cbb1c9604b9bbc242a98991a07da1406be44e6accacf755414f
debug: |||| -> found link and previous; prev=3c91d713fc955f0820c03b82dc7ff79b23e1d2d9bf726f407d235bcb4be00699
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 3c91d713fc955f0820c03b82dc7ff79b23e1d2d9bf726f407d235bcb4be00699
debug: |||| -> found link and previous; prev=19162fa367c88b903f798c2082594cf04464bab24c21d8dbbd73814c06d2a83f
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 19162fa367c88b903f798c2082594cf04464bab24c21d8dbbd73814c06d2a83f
debug: |||| -> found link and previous; prev=789ffe27b539bb5a8473c68282b443a91b234a8e28a94b73ed9ffe277d1c0b6d
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 789ffe27b539bb5a8473c68282b443a91b234a8e28a94b73ed9ffe277d1c0b6d
debug: |||| -> found link and previous; prev=024cb35d33b812d02284e965de9f83897f0fcac70dd0fdc1411f238e6c79a652
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 024cb35d33b812d02284e965de9f83897f0fcac70dd0fdc1411f238e6c79a652
debug: |||| -> found link and previous; prev=b6b062a1232046405cae0b139b052bbc19dd5594e88f7b8aecac618874696595
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link b6b062a1232046405cae0b139b052bbc19dd5594e88f7b8aecac618874696595
debug: |||| -> found link and previous; prev=28af481f7d9ac0c2cf69ba61aef1700c956c6826d4cec473505773c4b4b67462
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 28af481f7d9ac0c2cf69ba61aef1700c956c6826d4cec473505773c4b4b67462
debug: |||| -> found link and previous; prev=7edf197e3e4a31da07d0a4553846fe06100ca87d1e1475ccc6b68682f6c3ba86
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 7edf197e3e4a31da07d0a4553846fe06100ca87d1e1475ccc6b68682f6c3ba86
debug: |||| -> found link and previous; prev=568cf93afe210246b8fc900bd2b09e593a3463b49acc246ad6c28c9ad06191cf
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 568cf93afe210246b8fc900bd2b09e593a3463b49acc246ad6c28c9ad06191cf
debug: |||| -> found link and previous; prev=0a5f9957fe4dcf2f39780867f3cd7c9681438c45040bb449423a97b1b373edfe
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 0a5f9957fe4dcf2f39780867f3cd7c9681438c45040bb449423a97b1b373edfe
debug: |||| -> found link and previous; prev=2dbcc3b53dc06e0095ba58865d224a2ea1fe66c14daeac0db262b0162f43e299
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 2dbcc3b53dc06e0095ba58865d224a2ea1fe66c14daeac0db262b0162f43e299
debug: |||| -> found link and previous; prev=de729be570a8dd78df1816615ae04b5049f4c9655c999ed786e0197b6487c63b
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link de729be570a8dd78df1816615ae04b5049f4c9655c999ed786e0197b6487c63b
debug: |||| -> found link and previous; prev=4d2d0d701dd00d6298b309100e15f6437c9e25aa0b0bd90625c08f755966265b
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 4d2d0d701dd00d6298b309100e15f6437c9e25aa0b0bd90625c08f755966265b
debug: |||| -> found link and previous; prev=d672fd622dfe61129e9e1863fa9f8564ed6d38e6e07eaaafc103bf58cff9031a
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link d672fd622dfe61129e9e1863fa9f8564ed6d38e6e07eaaafc103bf58cff9031a
debug: |||| -> found link and previous; prev=19402bb103d472ae55d1fdacc0598f85ba7bf77a526e8b9602082c834bdb7b5b
debug: |||| c3abe592dc6eabcaebca452b614a3900: Loading link 19402bb103d472ae55d1fdacc0598f85ba7bf77a526e8b9602082c834bdb7b5b
debug: |||| -> found link and previous; prev=null
debug: ---- c3abe592dc6eabcaebca452b614a3900: loaded signature chain
debug: --- loaded sig chain from local storage
debug: -- charlesportwood: loaded user from local storage -> null / [object Object]
debug: ++ charlesportwood: load user from server
debug: +++ merkle find_and_verify: uid undefined, username charlesportwood
debug: ++++ request to merkle/path (https://api.keybase.io:443/_/api/1.0/merkle/path.json?uid=&username=charlesportwood) (cookie=true)
debug: |||| Adding a custom CA for host api.keybase.io when tls=true
debug: ---- request to merkle/path -> null
debug: ++++ merkle get_merkle_pgp_key
debug: |||| Call to gpg2: { args: [ '-k', '--with-fingerprint', '--with-colons' ],
debug: quiet: true,
debug: no_options: true }
debug: |||| merkle key already found in keyring
debug: ---- merkle get_merkle_pgp_key
debug: ||| Load key /2A32340CEC8C9492 from master keyring (secret=undefined)
debug: ||| Call to gpg2: { args:
debug: [ '--export',
debug: '--export-options',
debug: 'export-local-sigs',
debug: '-a',
debug: '2A32340CEC8C9492' ] }
debug: ++++ lookup UID
debug: +++++ read_uids_from_keys 03E146CDAF8136680AD566912A32340CEC8C9492
debug: ||||| Call to gpg2: { args:
debug: [ '-k',
debug: '--with-fingerprint',
debug: '--with-colons',
debug: '03E146CDAF8136680AD566912A32340CEC8C9492' ],
debug: quiet: true,
debug: no_options: true }
debug: ||||| got: [{"username":"Keybase.io Merkle Signing","comment":"v1","email":"merkle@keybase.io"}]
debug: ----- read_uids_from_key -> null
debug: - Map 2A32340CEC8C9492 -> [object Object] via gpg
debug: ---- looked up UID
debug: ++++ Rollback check
debug: |||| DB put value kv:e2:049a8c2bd4034e7c356cfd8ba6fbac22289e82f0cd86bc412aae87d691b74e662949bfc087912808d9eda868075cf46607ffb952542e7ded4954ef470ed635e7
debug: |||| DB put lookup: lo:5:latest -> 61778ff98b2fb290b30e408a9d21894cf909b0228a0ed254b391c9b8c48dbbdd
debug: ---- Rollback check
debug: ||| id_version (53) and seqno (21) haven't changed.
debug: ++++ charlesportwood: verifying signatures
debug: ---- charlesportwood: verified signatures
debug: ++++ charlesportwood: storing signature chain
debug: ---- charlesportwood: stored signature chain
debug: --- charlesportwood: loaded user
debug: +++ charlesportwood: check public key
debug: --- charlesportwood: check_public_key: ret={}; err=undefined
debug: || Call to gpg2: { args: [ '-K', '--with-fingerprint', '--with-colons' ],
debug: quiet: true,
debug: no_options: true }
debug: || Load key charlesportwood/2875D7C7398ECFC4 from master keyring (secret=undefined)
debug: || Call to gpg2: { args:
debug: [ '--export',
debug: '--export-options',
debug: 'export-local-sigs',
debug: '-a',
debug: '2875D7C7398ECFC4' ] }
debug: +++ lookup UID
debug: ++++ read_uids_from_keys 77D4529F2CEFB65F878086F12875D7C7398ECFC4
debug: |||| Call to gpg2: { args:
debug: [ '-k',
debug: '--with-fingerprint',
debug: '--with-colons',
debug: '77D4529F2CEFB65F878086F12875D7C7398ECFC4' ],
debug: quiet: true,
debug: no_options: true }
debug: |||| got: [{"username":"Charles R. Portwood II","email":"charlesportwoodii@********.net"},{"username":"Charles R. Portwood II","email":"charlesportwoodii@********.com"}]
debug: ---- read_uids_from_key -> null
debug: ||| got back more than one UID; using the first: ([{"username":"Charles R. Portwood II","email":"charlesportwoodii@********.net"},{"username":"Charles R. Portwood II","email":"charlesportwoodii@********.com"}])
debug: - Map 2875D7C7398ECFC4 -> [object Object] via gpg
debug: --- looked up UID
error: no valid primary key self-signature
```
Contributor guide
No contributing guide indexed for this repository
Research direction
The report covers both the CLI and web interface and includes the `keybase -d push` trace plus GPG packet output. Begin by investigating the push validation for the ECC NIST P-521 key and compare the behavior with issue #1270; done means identifying why the key is rejected and confirming a working push or a precise actionable error.
Written by the indexing model from the issue text.
Assessment
- Domain
- cli, cryptography
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100