2013-10-28 95 views
0

您好我正在開發Android 4.2.2 sdk版本8到17,我需要使用私鑰, 因此,當我要生成此密鑰時,我使用以下代碼:安全提供程序在Android應用程序(SunEC)

Provider p = Security.getProvider("SunEC"); 
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("EC",p); 

但是p爲空。

相同代碼的工作,當我在一個Java項目運行,但不會在Android項目

我是否需要設置項目中一個lib?還是其他的東西?

謝謝

回答

0

看起來您在Android上使用無效的安全提供程序。

參見:What crypto algorithms does Android support?

+0

但如果我想添加它? –

+0

@eduardo_hito如果Oracle提供源代碼,則可以。你將不得不實施整個事情,因爲它不會出現在標準的Android開源項目中。 –

+0

謝謝,但我還真的需要de src代碼嗎?因爲我的.jar與.class .....我已經將jar添加到項目的構建路徑中,但是它不會將它導出到智能手機中的應用程序 –

0

您好我有解決這個問題,

由於@Morrison常不得不指出的是,我用的是不支持在Android還沒有供應商。

太陽提供商今年在jdk 1.7發佈,但Android系統仍然在1.6。

我試圖使用Bouncy Castle提供程序,它在沒有移動系統的情況下工作得很好。但他們有一個移動系統的版本,工作得很好

海綿城堡。 http://rtyley.github.io/spongycastle/

謝謝大家!