Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add cryptographic signature to the gem #312

Closed
cheald opened this issue Jan 31, 2013 · 2 comments
Closed

Add cryptographic signature to the gem #312

cheald opened this issue Jan 31, 2013 · 2 comments

Comments

@cheald
Copy link
Contributor

cheald commented Jan 31, 2013

In light of the recent Rubygems security issues, I think it would be prudent to add a signature to the gem and include it in releases. This isn't something I can issue a PR for, since you (the project owner) would need to own the cert files.

The how-to is here:

http://docs.rubygems.org/read/chapter/21

TL;DR:

  1. gem cert --build your@email.com

  2. Copy the private key somewhere safe

  3. Add the public key to the repo (git add gem-public_cert.pem)

  4. Update the gemspec with something like:

    s.signing_key = '/home/chris/.gemcert/gem-private_key.pem'
    s.cert_chain = ['gem-public_cert.pem']

  5. Push and rake release

While this would be a self-signed certificate, the presence of the pubkey in the canonical repo will allow people verify that the gem they installed from Rubygems (or where ever) was signed by the project maintainer, and has not been altered.

@pietern
Copy link
Collaborator

pietern commented Feb 7, 2013

Thanks for opening this issue. Definitely something to take care of in the short term.

@yaauie yaauie modified the milestones: v3.0.x, v3.2 Jun 4, 2014
@djanowski djanowski modified the milestones: v4.0, v3.2 Dec 11, 2014
@djanowski
Copy link
Collaborator

This method hasn't gained traction, and I still don't see major gems signed. Let's wait until a widely adopted method is in place.

@djanowski djanowski removed this from the v4.0 milestone Nov 23, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants