2

Android 用のネイティブ Java アプリで、公開鍵と秘密鍵のペアを使用してデータを暗号化および復号化したいと考えています。古い投稿やドキュメントを読み進めるのに苦労しています。

私の理解から:

  • Android の初期のバージョンでは、バウンシー キャッスル暗号化ライブラリの無効なバージョンが使用されていました。特に、楕円曲線法は含まれていませんでした。

  • 楕円曲線暗号は、モバイル デバイスで使用する方法です。鍵のサイズが小さいほど、計算量が減り、安全性が高くなるためです。

  • 人々は、パッケージの名前を変更することを除いて完全な機能を得るために、弾む城ライブラリの独自のコピーを含めることを提案しました(または、名前が変更されたパッケージで弾む城である海綿状の城を使用します)

  • Android の以降のバージョンでは、パッケージの名前を変更せずに弾む城を使用できるように変更されました。

  • それ以降のバージョンの Android でも、すべての機能を備えた弾む城が含まれるようになりました。

問題は、2014 年 6 月の時点で、Android でデータをどのように暗号化する必要があるかということです。

「正しい方法」で物事を行っているgithub上の単純なプロジェクトはありますか?

4

1 に答える 1

1

最近、暗号化について調べたところ、次の 3 つの方法にたどり着きました。

1)デフォルトのJava / Android実装(あなたが言及したものと思われます)、Java Crypto APIを使用します:http://docs.oracle.com/javase/7/docs/api/javax/crypto/package-summary.html + http://developer.android.com/reference/javax/crypto/package-summary.html

2) 最近利用可能になった Facebook ライブラリ Conceal を使用します: http://facebook.github.io/conceal/

3) OpenSSL API を使用します (NDK を使用): http://wiki.openssl.org/index.php/Android

最良のものを見つけることは、難しい/主観的な答えになります。

于 2014-06-02T22:31:29.840 に答える