Genel anahtarlarla Node.JS (v0.4 +) uygulamasında imzaları doğrulamanın iyi bir yolu var mı?Düğümün doğrulanması için ortak anahtarın kullanılması Node.JS kripto
Geçerli kripto modülü bunu, sertifikalarla değil, ortak anahtarlarla sağlar. Örneğin: CERT
var crypto = require("crypto");
verifier = crypto.createVerifier("sha1");
verifier.update("signed data");
verifier.verify(CERT, signature);
Değişken ihtiyaçlarını ama elimde genel anahtar ve bir sertifika (Ben genel anahtar o çekilir tahmin) sertifikası imzalanacak. Bunu başarmak için
Sadece katı yolu bir doğrulamak için gereken dosyalar halinde veriler, ortak anahtar ve imza içeriğini damping ve openssl dgst
fs.writeFileSync("public.key", pubkey);
fs.writeFileSync("sig.sha1", signature);
fs.writeFileSync("data.txt", data);
exec("openssl dgst -sha1 -verify public.key -signature sig.sha1 data.txt", ...)
yürütmek Ama her defasında dosyaları oluşturma (ve silme) gibi görünüyor İmza toplam atık gibi görünüyor. bunu daha iyi nasıl yapılacağı
Herhangi iyi bir fikir?
GÜNCELLEME 2011-08-03
node.js v0.5 içinde Kripto modülü Neden sadece ortak anahtarınızı yapmayız both with certificates and public keys (RSA veya X.509)
Eh, openssl gitmek yoludur eminim. Uygulamaların dosyaları kullanmasına izin vermeli mi yoksa uygulama dosyalarını mı kullanmalı? Bunu ne sıklıkla yapacaksın? – jcolebrand
Düzenli olarak ama çok sık değil. Bu çözümle yaşayabilirim ama özellikle çok daha zarif crypto.verifier ile karşılaştırıldığında çok yanlış geliyor. Dosyaları kullanmamayı tercih ederim. – Andris
İlk argüman olarak bir ortak anahtarı geçmek istiyorum ama b64 kodlanmış dizgenin olması gerektiğinden emin değilim, '---- BEGIN KEY ----' ve '----- END ile sarılmış dize ANAHTAR ---- 'veya yeni Tampon (the_string,' base64 '). Hepsini denedim ama kripto hala SERTİFİKA arıyor. Nasıl anlatacağımı açık bir anahtardan doğrudan geçiyorum? Ben Openssl özel anahtar PEM'den gelen genel anahtarı ayıklanması üzerinde tükürür gördü ve hata mesajları gittiler olarak –