2010-01-07 18 views
5

Je voudrais signer des enregistrements dans une base de données avec un horodatage sécurisé pour prouver qu'ils n'ont été modifiés par personne après cette date.Comment signer des données en toute sécurité avec un horodatage?

De quelles méthodes ou protocoles devrais-je tenir compte? RFC 3161? La plupart des sites Web que j'ai trouvé qui prétendent fournir ce service ne me paraissent vraiment pas très réputés.

Est-il possible de rouler le vôtre?

+0

Si vous cherchez un site Web de bonne réputation, ce site est généralement accepté: http://www.itconsult.co.uk/stamper/stampinf.htm, mais je ne pense pas que ce soit ce que vous voulez. –

Répondre

4

Si vous êtes à la recherche d'un serveur RFC3161 fonctionnel, alors le http://time.certum.pl/ en a été un que je connais déjà.

Si vous êtes à la recherche d'une plus grande solution qui ne dépend pas d'une boîte de timestamping base secrète unique (essentiellement quelque chose qui s'adapte bien) un coup d'oeil à http://www.guardtime.com

Techniquement, un horodatage est un horodatage UNIX :) Mais les propriétés que vous semblez attribuer à un horodatage sont un hachage et une "signature" (possibilité de vérifier que l'affirmation qu'un certain hachage existait à un certain moment). Tout ce qui a trait à la «confiance» est quelque chose que vous pouvez faire vous-même. De la même manière que vous pouvez lancer votre propre CA, de la même manière que vous pouvez lancer votre propre service basé sur des standards ou inventer votre propre système. Mais convaincre les autres parties de «faire confiance» à la chose que vous avez roulée peut être plus compliqué.

C'est pourquoi les gens paient pour les certificats de CA - ils sont pré-approuvés par les vendeurs de navigateurs. C'est pourquoi lorsque vous avez besoin d'une solution à laquelle les autres doivent faire confiance ou si vous êtes obligé d'horodater vos données, vous avez besoin d'une source d'horodatage certifiée.

+0

Il semble que vous pouvez obtenir un simple RFC3161 tsr gratuit à des fins non commerciales de simplement en prenant votre propre somme sha1 de votre document et faire une demande "GET" comme ceci: http://time.certum.pl/? sha1 = da39a3ee5e6b4b0d3255bfef95601890afd80709 Si vous l'enregistrez en tant que "download.tsr", vous pouvez l'inspecter avec la commande "openssl asn1parse -inform DER nealmcb

+0

@nealmcb - répondre à l'ancien message - si j'utilise time.certum.pl - où puis-je obtenir le cert/pubkey de time.certum.pl. c'est-à-dire quand je reviens données horodatées - j'aurais besoin de la clé publique de TSA pour la vérifier, droit - où pourrais-je obtenir ceci? – user93353

-2

Méthode simple serait d'ajouter les valeurs que vous voulez vous assurer que n'est pas falsifié, ajoutez-y un sel, puis md5 tout cela, et enregistrez le hachage md5.

Donc, si vous avez une table avec les colonnes: Nom d'utilisateur, Prénom, Nom, Hash

Vous faites un md5 (Nom d'utilisateur + + Prénom Nom + "MySuperSecretSalt") et d'enregistrer la valeur Hash.

Mais je dois dire que ça ressemble à une chose étrange à faire.