diff --git a/lib/chibi/snow/package.scm b/lib/chibi/snow/package.scm index f368e7de..ea38cac0 100644 --- a/lib/chibi/snow/package.scm +++ b/lib/chibi/snow/package.scm @@ -11,7 +11,7 @@ (else (call-with-output-string (lambda (out) (display x out)))))) (define (maybe-parse-hex x) - (if (string? x) (string->number x 16) x)) + (if (string? x) (hex-string->bytevector x) x)) ;; rsa key utils @@ -134,7 +134,7 @@ (maybe-parse-hex digest) (maybe-parse-hex sig))) `(sign: rsa-signature-invalid: digest: ,digest sig: ,sig - actual: ,(rsa-encrypt rsa-key digest))) + actual: ,(rsa-verify rsa-key (maybe-parse-hex digest)))) (else #f)))) (define (package-signature-ok? cfg pkg raw) diff --git a/lib/chibi/snow/package.sld b/lib/chibi/snow/package.sld index 42e8e6a2..d4ebd401 100644 --- a/lib/chibi/snow/package.sld +++ b/lib/chibi/snow/package.sld @@ -17,6 +17,7 @@ (import (chibi) (srfi 1) (chibi snow interface) + (chibi bytevector) (chibi config) (chibi crypto md5) (chibi crypto rsa)