# Discourse Keybase Proof

**URL:** https://meta.discourse.org/t/discourse-keybase-proof/115239
**Category:** Feature
**Tags:** pr-welcome
**Created:** [April 16, 2019, 4:22pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239 "2019-04-16T16:22:48Z")
**Posts on this page:** 15
**Page:** 4

<div class="post-metadata">

### Author: ![kb\_xgess](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kb_xgess/32/148817_2.png) [@kb\_xgess](https://meta.discourse.org/u/kb_xgess)
#### Post date: [July 9, 2019, 4:31pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/61 "2019-07-09T16:31:11Z")

</div>

hell yeah! nice work.

---

<div class="post-metadata">

### Author: ![emanuele](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/emanuele/32/142687_2.png) [@emanuele](https://meta.discourse.org/u/emanuele)
#### Post date: [July 9, 2019, 4:31pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/62 "2019-07-09T16:31:42Z")

</div>

And you can see it in Discourse too! You might want to try to revoke it from there to see if it works (you should see a “Revoke” button too)

 ![04](https://global.discourse-cdn.com/meta/original/3X/f/8/f8c354ca6cc0bfeea6ce120e3d49a75c4b461af4.png)

---

<div class="post-metadata">

### Author: ![Avamander](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/avamander/32/138595_2.png) [@Avamander](https://meta.discourse.org/u/Avamander)
#### Post date: [July 9, 2019, 4:37pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/63 "2019-07-09T16:37:09Z")

</div>

Just mentioning that Privacy Badger blocks the Keybase proof status badge, so it would be nice if its alt-text could contain the status itself for those users.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [July 9, 2019, 4:37pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/64 "2019-07-09T16:37:39Z")

</div>

Revoking works, just tested and then re-did the proof. Amazing work!

I have a lot of feedback for both Keybase and the plugin, specially UX which is very rough all around.

I will take some time and write those down later today.

---

<div class="post-metadata">

### Author: ![Avamander](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/avamander/32/138595_2.png) [@Avamander](https://meta.discourse.org/u/Avamander)
#### Post date: [July 9, 2019, 4:45pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/65 "2019-07-09T16:45:01Z")

</div>

I also have to mention that unlike all the other proofs (for example GitHub) the current Discourse proof contains no nice description on how to verify the proof command-line. It just feels a bit too laconic.

---

<div class="post-metadata">

### Author: ![emanuele](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/emanuele/32/142687_2.png) [@emanuele](https://meta.discourse.org/u/emanuele)
#### Post date: [July 9, 2019, 6:25pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/66 "2019-07-09T18:25:29Z")

</div>

that would be good but it would require some refactoring and additions to the plugin 🙂 would you mind adding it to the issues of the GitHub repo so that we don’t lose track of it? thank you!

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [July 10, 2019, 4:52pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/67 "2019-07-10T16:52:28Z")

</div>

### Discourse plugin feedback

for @emanuele

The plugin should have _some_ discoverability in Discourse. Also, after the user does the identity dance, that should be visible for other users, as this is the plugin _raison d’être_, to show off that this user on this forum is thattwitterguy, thisredditaccount, thoseHNaccounts, etc.

The Keybase extension on Twitter adds this to a profile:

 ![image](https://global.discourse-cdn.com/meta/original/3X/f/0/f0b4800a2cecf9c451d7c3e34210aa67f9963008.png)

 ![image](https://global.discourse-cdn.com/meta/original/3X/6/a/6a619476bd7c79e647f664303f58c42e0f5c0af8.png)

We could do something similar for user-cards:

 ![image](https://global.discourse-cdn.com/meta/original/3X/4/d/4d3b50d5e23b43a17df3a75ad3b49b4e8fd59673.jpeg)

And, _behind a site setting_ to posts:

 ![image](https://global.discourse-cdn.com/meta/original/3X/2/2/22dc250ed35500a64c15da5541b01429f32d2fde.png)

Also, on the user profile we should remove the current UI:

 ![image](https://global.discourse-cdn.com/meta/original/3X/6/7/67925676b7677d7721cab71848814a8cae0a06a9.png)

And break it into two things,

First to show the identities:

 ![image](https://global.discourse-cdn.com/meta/original/3X/b/c/bc594b82019ff2c9f86bfab15cee8e221aa5dc10.png)

And then on profile to revoke proofs:

 ![image](https://global.discourse-cdn.com/meta/original/3X/c/b/cb6d262b819e3b25bf8256b5121b2b91a035d62a.png)

When the user doesn’t have a Keybase linked yet it should redirect the user to Keybase to start the process.

Which brings me to

### Keybase Feedback

for @kb_xgess

We desperately need a straightforward way to push the user to the appropriate place in Keybase where he can start the proof, aka this screen:

 ![image](https://global.discourse-cdn.com/meta/original/3X/3/4/3468feaa4861ab5cf1ede20fe655fcef2b1f890e.png)

Looks like you guys do all this on modals, that lack a proper URL and can’t be linked 😭

And we need to come up with a guide for Discourse admins about how they can submit their sites for Keybase approval.

---

<div class="post-metadata">

### Author: ![emanuele](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/emanuele/32/142687_2.png) [@emanuele](https://meta.discourse.org/u/emanuele)
#### Post date: [July 29, 2019, 4:54pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/68 "2019-07-29T16:54:40Z")

</div>

Hi @Falco,

as you might have noticed, I don’t have much time at the moment to work on this plugin anymore.

Anyone that has interest, please feel free to fork / provide PRs / create a new one.

Thanks for the feedback 🙂

---

<div class="post-metadata">

### Author: ![nealmcb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nealmcb/32/107350_2.png) [@nealmcb](https://meta.discourse.org/u/nealmcb)
#### Post date: [August 5, 2019, 9:15pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/69 "2019-08-05T21:15:16Z")

</div>

Thanks, @emanuele and everyone else for all your work here!

I just added three issues to the [Issues at etamponi/discourse-keybase-proofs-plugin](https://github.com/etamponi/discourse-keybase-proofs-plugin/issues). Two are simple attempts to capture a few of the issues raised here.  
The third is the one I’m most curious about. Can someone (here or there) document the current status, what works, how you try it out, what doesn’t work, etc? I.e.:  
[https://github.com/etamponi/discourse-keybase-proofs-plugin/issues/6](https://github.com/etamponi/discourse-keybase-proofs-plugin/issues/6)

---

<div class="post-metadata">

### Author: ![Avamander](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/avamander/32/138595_2.png) [@Avamander](https://meta.discourse.org/u/Avamander)
#### Post date: [August 18, 2019, 10:27am UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/70 "2019-08-18T10:27:31Z")

</div>

@kb_xgess

I think that if Keybase provided a way to link to the modal someone might have bigger interest in finishing this.

---

<div class="post-metadata">

### Author: ![kb\_xgess](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kb_xgess/32/148817_2.png) [@kb\_xgess](https://meta.discourse.org/u/kb_xgess)
#### Post date: [August 19, 2019, 7:34pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/71 "2019-08-19T19:34:03Z")

</div>

All right! We have implemented this in the recent release of the Keybase client and updated our docs appropriately. So, if you have Keybase installed on your device the following link should deeplink you right into the flow: [keybase://profile/new-proof/mastodon.social/megafauna](keybase://profile/new-proof/mastodon.social/megafauna)

---

<div class="post-metadata">

### Author: ![kb\_xgess](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kb_xgess/32/148817_2.png) [@kb\_xgess](https://meta.discourse.org/u/kb_xgess)
#### Post date: [August 19, 2019, 7:35pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/72 "2019-08-19T19:35:23Z")

</div>

@Avamander @nealmcb @emanuele please let me know if I can help with anything to push this over the finish line.

---

<div class="post-metadata">

### Author: ![nealmcb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nealmcb/32/107350_2.png) [@nealmcb](https://meta.discourse.org/u/nealmcb)
#### Post date: [December 24, 2019, 4:15pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/73 "2019-12-24T16:15:27Z")

</div>

Thanks, folks. To recap:

- What is the goal here? As we know the world is awash in **disinformation**. I see this all as an important step in helping Internet users know who stands behind content on the Internet. Keybase is getting a lot more visibility these days as a great way to establish identities and secure content, and so I hope folks can wrap up this plugin to help people claim their Discourse profiles and associated content via Keybase.
- @emanuele made a **[discourse-keybase-proofs-plugin](https://github.com/etamponi/discourse-keybase-proofs-plugin)** that mostly supports the necessary functionality, as tested by @Falco above. As noted in the github issues there, it needs some minor work on discoverability, documentation and testing.
- @kb_xgess demonstrated a new Keybase feature, as requested by @Falco, to help make it easier for a plugin to work with a user to establish a new proof: a Keybase URL to deeplink a user into the authentication flow. The example URL he provided is for user `megafauna` in the `mastodon.social` server. Just change the path elements to point to a user on a properly configrured and authorized Discourse server.

Emanuele is not actively working on the Discourse plugin any more, so we need someone to take that over, add the UX elements that Falco recommends, leveraging the new URL, and take over the test server.

In the meantime, note that the “old Keybase way” of proving ownership via one or more proofs in `yoursite.com/.well-known/keybase.txt` (as e.g. generated by the Keybase CLI: `keybase prove https meta.discourse.org`) can be used. Related to that is an optional enhancement for the plugin: add support for that generic http proof approach, to get around the need to get a particular Discourse server authorized (as discussed above at [Discourse Keybase Proof - #36 by pfaffman](https://meta.discourse.org/t/discourse-keybase-proof/115239/36)).

Thanks for engaging!

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [May 28, 2021, 7:47pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/74 "2021-05-28T19:47:21Z")

</div>

Going to close this off, as Keybase was acqu-hired by Zoom, and Keybase is now a zombie product with no clear future.

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [May 28, 2021, 7:47pm UTC](https://meta.discourse.org/t/discourse-keybase-proof/115239/75 "2021-05-28T19:47:24Z")

</div>



[Previous page](https://meta.discourse.org/t/discourse-keybase-proof/115239.md?page=3)
