summaryrefslogtreecommitdiff
path: root/keystore/java/android/security/KeyStoreKeyConstraints.java
diff options
context:
space:
mode:
authorAlex Klyubin <klyubin@google.com>2015-04-09 16:12:08 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-04-09 16:12:09 +0000
commita482b0469cb98a5743603e1602aa6f37c65d1659 (patch)
treee20c94ea277160a71b2a3a5ff2284bba9af8e8fb /keystore/java/android/security/KeyStoreKeyConstraints.java
parentf324d245fdd07ac14ab312d1a5fa04a4e8dfcceb (diff)
parentf853f649981ed3cf2f1fbf1363a0932e9736daf6 (diff)
Merge "Require IND-CPA by default for new AndroidKeyStore keys."
Diffstat (limited to 'keystore/java/android/security/KeyStoreKeyConstraints.java')
-rw-r--r--keystore/java/android/security/KeyStoreKeyConstraints.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/keystore/java/android/security/KeyStoreKeyConstraints.java b/keystore/java/android/security/KeyStoreKeyConstraints.java
index 9321302c124b..7f691fb0c606 100644
--- a/keystore/java/android/security/KeyStoreKeyConstraints.java
+++ b/keystore/java/android/security/KeyStoreKeyConstraints.java
@@ -592,6 +592,14 @@ public abstract class KeyStoreKeyConstraints {
public static final int GCM = 1 << 3;
/**
+ * Set of block modes compatible with IND-CPA if used correctly.
+ *
+ * @hide
+ */
+ public static final @BlockModeEnum int IND_CPA_COMPATIBLE_MODES =
+ CBC | CTR | GCM;
+
+ /**
* @hide
*/
public static int toKeymaster(@BlockModeEnum int mode) {
@@ -670,6 +678,24 @@ public abstract class KeyStoreKeyConstraints {
/**
* @hide
*/
+ public static String allToString(@BlockModeEnum int modes) {
+ StringBuilder result = new StringBuilder("[");
+ boolean firstValue = true;
+ for (@BlockModeEnum int mode : getSetFlags(modes)) {
+ if (firstValue) {
+ firstValue = false;
+ } else {
+ result.append(", ");
+ }
+ result.append(toString(mode));
+ }
+ result.append(']');
+ return result.toString();
+ }
+
+ /**
+ * @hide
+ */
public static @BlockModeEnum int fromJCAMode(String mode) {
String modeLower = mode.toLowerCase(Locale.US);
if ("ecb".equals(modeLower)) {