Генерация подписей RSA-SHA1 с помощью JavaScript

Я хотел бы генерировать подписи RSA-SHA1 с помощью библиотеки RSA-Sign JavaScript Library. В частности, я хотел бы использовать ее для подписи запросов OAuth.

Однако подпись, сгенерированная библиотекой JavaScript, выглядит иначе, чем та, которую я могу сгенерировать, например, с помощью

$ echo -n "x" | openssl dgst -sha1 -sign priv.key -binary | openssl base64 | xargs echo -n
eV0ZrD7ZrTsuzHHYSwLfUJhXuM96D6ZyIzD5FFphzHbKRaO4TMeTR7bJjkuPib+l
EccM7t6YNDvRgOHyXJDVZZQTg5G4D4jnGVmOgeuti1etCCpLsb1Rl3sfJF/rIlgA
AmejvBbrEG+n8L+GeD6Vd3cneW7k2Rksnh+/BWnnR3c=

В отличие от этого: Вот что генерирует библиотека (в кодировке base64):

Nzk1ZDE5YWMzZWQ5YWQzYjJlY2M3MWQ4NGIwMmRmNTA5ODU3YjhjZjdhMGZhNjcy
MjMzMGY5MTQ1YTYxY2M3Ng0KY2E0NWEzYjg0Y2M3OTM0N2I2Yzk4ZTRiOGY4OWJm
YTUxMWM3MGNlZWRlOTgzNDNiZDE4MGUxZjI1YzkwZDU2NQ0KOTQxMzgzOTFiODBm
ODhlNzE5NTk4ZTgxZWJhZDhiNTdhZDA4MmE0YmIxYmQ1MTk3N2IxZjI0NWZlYjIy
NTgwMA0KMDI2N2EzYmMxNmViMTA2ZmE3ZjBiZjg2NzgzZTk1Nzc3NzI3Nzk2ZWU0
ZDkxOTJjOWUxZmJmMDU2OWU3NDc3Nw==

(при условии одинакового входа и ключа, конечно)

Возможно ли, что это из-за используемой реализации SHA1? В таком случае, я могу попробовать использовать другую.

Я не эксперт в криптографии, но в OAuth RFC 5849 говорится, что нужно использовать RSASSA-PKCS1-V1_5-SIGN, что, похоже, и происходит в библиотеке.

Большое спасибо.

5
задан loomi 16 May 2012 в 00:11
поделиться