Certificat de signature de Code pour les projets open-source?

je veux publier une de mes applications en open-source et je veux signer numériquement les binaires que j'ai créé avec mon propre certificat. (Bien sûr, n'importe qui d'autre peut simplement télécharger le code et le construire eux-mêmes avec leur propre certificat. Je veux faire cela, donc n'importe qui peut vérifier que cette construction a été faite par moi, pas par quelqu'un d'autre. Je veux aussi créer un site Web sécurisé avec un certificat SSL valide afin que les visiteurs puissent créer leurs propres comptes d'une manière sûre afin qu'ils puissent contribuer à ce projet.

je pourrais créer un certificat auto-signé, mais je n'aime pas vraiment cette option. Ou je pourrais payer Verisign quelques pièces d'or pour obtenir les certificats qui serait valable pour quelques années. Je n'aime pas cette option non plus, puisque mon trésor est précieux pour moi.

alors, y a-t-il d'autres options? Par exemple, un fournisseur qui soutient des projets open-source en offrant des certificats à prix réduit? Il n'a pas besoin d'être libre, juste un beaucoup moins cher que Verisign...

(le projet est créé en C# avec Visual Studio 2008 . Plus un projet supplémentaire en ASP.NET qui veut SSL.)

82
demandé sur Edward Brey 2009-07-24 17:13:05

7 réponses

vous pouvez essayer CAcert . Avec cela, vous obtenez la certification D'autres utilisateurs de CAcert. Le CAcert a un système basé sur la réputation, donc si vous êtes certifié assez souvent, votre certificat est considéré comme valide.

vous devrez peut-être ajouter CAcert comme autorité de confiance sur le système cible. Auto-signature votre exécutable devrait être une option suffisante, mais vous devrez fournir le certificat public. Utiliser une autorité connue peut aider à vérifier le fichier, mais je pense il est over kill dans ce cas utilisez une somme de contrôle ou SHA2 hachage du fichier en combinaison avec votre certificat auto signé. Vous pouvez configurer une boîte linux comme CA mais ils devront faire confiance à votre certificat public.

7
répondu Mnementh 2015-01-06 03:36:24

Pour les développeurs open source, ius certum fournit des certificats de signature de code gratuitement *

entrez "open source developer" dans le champ" company " lorsque vous demande le certificat. C'est tout.

lien vers les certificats de signature de code source ouvert est ici

[ * ] à partir de 2016, le certificat de signature de Code Source ouvert n'est plus disponible pour gratuit. Il s'agit maintenant d'un service payant seulement.

36
répondu Stefan 2016-02-16 18:00:27

mise à jour: plus libre, maintenant €105,78 (à partir du 19 février 2017). Le coût est moindre si vous possédez déjà leur matériel crypto. FWIW, voici les instructions précédentes.


l'obtention d'un certificat de signature de code gratuit de Certum/Unizeto pour vous-même en tant qu'individu, suivez ces étapes. Utilisez Internet Explorer ou Safari, car ils prennent en charge le mécanisme d'échange de clés.

  1. parcourir jusqu'à tester L'ID et les certificats de signature de Code OpenSource , et soumettre le formulaire.

  2. le certificat apparaîtra sous activer les certificats . Cliquez Sur Pour Activer .

  3. passez par l'Assistant d'activation. Pour Organisation entrée Open Source Développeur . Pour unité organisationnelle , inscrivez édition de logiciels .

  4. vous recevrez un e-mail vous demandant une preuve d'identité. Répondre avec un lien vers le projet open source et une image de votre permis de conduire (ou un autre document accepté). Pour protéger votre vie privée, vous devriez crypter la réponse. * la façon de chiffrer varie selon le client de courriel. Pour Outlook, s'assurer vous avez un certificat e-mail ( librement disponible ), et activer le cryptage .

  5. dans la journée, vous devriez recevoir un courriel avec un lien pour recueillir votre certificat. Vous devez ouvrir le lien à partir du même ordinateur et de navigateur utilisé pour démarrer le processus.

* bien que L'email de vérification de Certum dit d'envoyer le preuve à ccp@certum.pl , Certum accepte également la preuve envoyée à l'adresse de réponse info@certum.pl , à laquelle vous pouvez envoyer un e-mail crypté.

28
répondu Edward Brey 2017-07-03 12:00:26

mise à jour 2016: StartCom a été acquis par WoSign dans des circonstances douteuses . Je ne ferais pas confiance à StartCom/WoSign. Considérez le texte ci-dessous comme une note historique sur la façon dont bon StartCom était jusqu'à début 2015 .

j'ai un certificat de signature de code de StartCom (StartSSL). Je suis très satisfait de leur service: Leur service client est très rapide, et leurs prix sont très raisonnables.

obtention du certificat de signature de code

pour obtenir un certificat de signature de code, il faut Validation D'identité de classe 2 . StartCom vous guide tout au long du processus (avec d'excellents taux de réponse, généralement dans les dix minutes selon mon expérience).

Si vous voulez obtenir les détails à la fois, lire ce billet de blog . J'ai été validé en moins d'une heure (pour un tarif de 59,90 $, via Paypal).

après validation, générer une nouvelle clé privée et une demande de signature de certificat (CSR). Notez que tous les champs sauf la clé publique sont ignorés . Toutes les informations contenues dans le certificat sont déduites des informations que vous fournissez lors de la validation de l'identité, et non votre CSR .

# Create key and CSR (key must be at least 2048 bit, per Policy Statement)
openssl req -nodes -newkey rsa:2048 -keyout codesigning.key -out codesigning.csr
# Add pass phrase to key (optional, but highly recommended)
openssl rsa -in codesigning.key -des3 -out codesigning2.key && \
    mv codesigning2.key codesigning.key

soumettre ce via l'interface web et vous obtiendrez rapidement un nouveau certificat qui est valide pour deux ans (j'ai eu le mien dans l'heure).

Problème: la durée de Vie de la Signature OID

les certificats de classe 2 de StartCom ont L'ensemble D'OID de signature à vie. En raison de ce bit, la signature du code signé deviendra invalide après l'expiration du certificat, même quand il est horodaté.

quand J'ai demandé à Eddy Nigg (COO / CTO de StartCom) pour la raison de cet OID, il m'a répondu:

il exige de nous de garder les LCR en opération pour un maximum de 20 ans après les certificats déjà expirés. C'est quelque chose que nous pouvons faire pour les certs de niveau EV (volume beaucoup plus faible, conditions de paiement différentes) mais augmenterait le prix de la classe 2 juste pour cet avantage (où la signature de code n'est qu'une partie de la options dans ce niveau).

Timestamping est donc seulement disponible après Validation prolongée (EV), qui est disponible seulement aux organisations légalement établies et les coûts 199.90 $. Ainsi, les développeurs individuels ne peuvent pas utiliser timestamping avec un certificat de signature de code de StartCom .

Pendant longtemps, j'ai considéré cette limitation comme un gros problème. Récemment, j'ai changé d'avis: Il ce n'est qu'une fois tous les deux ans que les utilisateurs soucieux de la sécurité pourraient être plus enclins à obtenir la dernière version de mon logiciel, et les anciennes versions du logiciel fonctionneront toujours (pour ceux qui veulent l'utiliser; bien que sans signature vérifiée).

Note: pointez toujours votre code, même si le drapeau à vie est placé ! Horodaté signatures restent valables jusqu'à la date d'expiration du certificat, même lorsque le certificat a été révoqué (évidemment, seulement si la signature a été créée avant que le certificat ne soit révoqué).

utilisation pratique du certificat

chez StartCom, vous ne payez que pour la validation. La validation d'identité est valable 350 jours, et pendant cette période, Vous pouvez demander des certificats de signature de code gratuitement. Vous ne pouvez avoir qu'un seul certificat de signature de code valide, et il peut être utilisé pour signer n'importe quel code (MSI, DLL, XPI, ...) mais pas le code du pilote (cela nécessite EV).

Pour modifier un attribut sur le certificat, le certificat précédent doit être révoqué une une nouvelle demande. La révocation d'un certificat coûte 29,90 $. Bien que quand j'ai changé mon email un jour après avoir obtenu un certificat de signature de code, ils ont exceptionnellement révoqué mon certificat sans frais (j'ai été positivement surpris)!

date d'Expiration

lorsque votre certificat est sur le point d'expirer (après presque deux ans), vous obtenez un avis (Deux semaines à l'avance). Si votre identité vérifiée est toujours valide (rappelez-vous que les validations expirent après 350 jours; alors vous devez confirmer votre identité à nouveau pour 59,90$), vous pouvez demander un nouveau certificat sans révoquer le précédent. N'oubliez pas de publier une nouvelle version de votre logiciel qui est signée avec ce nouveau certificat de signature de code, parce que les versions précédentes afficheront bientôt "(non vérifié)" ou quelque chose de similaire.

OCSP

lorsque j'ai reçu mon certificat, J'ai signé mon Firefox add-on. Cependant, il indiquait toujours "(auteur non vérifié)", même si mon fichier XPI était correctement signé. Il s'est avéré que Firefox n'a pas obtenu le statut de certificat actuel quand il a interrogé les serveurs OCSP de StartCom pour le statut de révocation de mon nouveau certificat. sujet du forum possiblement pertinent

Après environ une demi-journée, mon le certificat était connu des serveurs OCSP, et mon nom est apparu comme prévu. Leçon apprise: lorsque vous avez un nouveau certificat, attendez environ une journée avant de publier votre logiciel avec la nouvelle signature.

22
répondu Rob W 2016-09-28 07:10:51

vous pourriez avoir un regard le produit StartSSL .

8
répondu Frozenskys 2013-08-30 15:24:36

vous pouvez également consulter KSoftware . Ils revendent des certificats de signature codée Comodo pour 99 $ US / an.

7
répondu Joe Kuemerle 2018-04-10 14:33:54

Vous aurez besoin d'acheter un certificat de signature de code. Les moins chers sont de Comodo. J'ai publié le code source et les binaires, comme vous le prévoyez, et j'ai signé les binaires. Voir changeur de lots Date & heure pour les photos et autres fichiers .

2
répondu Michael Haephrati 2017-04-15 13:25:22