2016-05-09 77 views
5

Node.js v6包含一個提供加密功能的模塊,包括符號和驗證功能。是否可以在Phonegap/Cordova App中生成數字簽名?

如果沒有辦法簽署或驗證簽名也許有辦法將Node.js模塊移植到Cordova或Phonegap?

基本上我需要的是簽署郵件和驗證從科爾多瓦應用簽名的方式。

https://nodejs.org/dist/latest-v6.x/docs/api/crypto.html#crypto_class_sign

+1

[本文](http://coenraets.org/blog/2014/01/browserify-sample-application-with-backbone-jquery-handlebars-and-cordova/)規定需要核心節點模塊(包括' crypto')應該在使用'--browserify'標誌時工作。 – daserge

回答

2

我發現我一直在尋找:

http://kjur.github.io/jsrsasign/

這裏如何生成,簽名和驗證密鑰的演示: http://kjur.github.io/jsrsasign/sample-ecdsa.html

令人難以置信,這是純粹的JavaScript。所以要在iOS和Android這兩個平臺上工作。

我唯一的擔心是知道如何安全使用這個密鑰生成庫。至少我可以生成密鑰並使用安全通道發送,之後使用App進行簽名/驗證。

0

這是不可能執行節點代碼科爾多瓦內部應用程序,只有在掛鉤,但在JavaScript的一些加密庫,這也許可以幫助你

檢查cryptojs,或this plugin爲cordova

+0

謝謝,這些插件都不支持簽名/驗證簽名。 –

+0

然後,如果您唯一的解決方案是使用節點,您必須創建一個服務器,它可以執行您的功能,並通過您的客戶端應用程序通過WS調用它 – Del

1

Android有一個類來簽名和驗證簽名,恰當地命名爲Signature。 IOS具有類似的功能。寫一個cordova plugin包裝這些類。

除了webview提供的一些基本功能外,cordova中的所有內容都是通過使用底層本機平臺的插件提供的。因此,可以簽署或驗證科爾多瓦的簽名。但它可能比你願意做的更努力。

相關問題