From 2393d58e719431a251f2691f3306e9351e2ddb78 Mon Sep 17 00:00:00 2001 From: leonard Date: Fri, 10 Nov 2017 17:52:18 -0800 Subject: [PATCH] (This commit resolves issue #315 (https://github.com/aws/aws-sdk-android/issues/315). The fix was that encodeBase64 required its flags to be updated to include Base64.NO_PADDING) --- .../com/amazonaws/mobileconnectors/cognitoauth/util/Pkce.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aws-android-sdk-cognitoauth/src/main/java/com/amazonaws/mobileconnectors/cognitoauth/util/Pkce.java b/aws-android-sdk-cognitoauth/src/main/java/com/amazonaws/mobileconnectors/cognitoauth/util/Pkce.java index 6cd7fe44188..b608b0c78cb 100644 --- a/aws-android-sdk-cognitoauth/src/main/java/com/amazonaws/mobileconnectors/cognitoauth/util/Pkce.java +++ b/aws-android-sdk-cognitoauth/src/main/java/com/amazonaws/mobileconnectors/cognitoauth/util/Pkce.java @@ -48,7 +48,7 @@ public final static String generateRandom() { public final static String generateHash(String data) throws Exception { String hashedData = data; try { - byte[] bytes = data.getBytes("US-ASCII"); + byte[] bytes = data.getBytes(StandardCharsets.US_ASCII); MessageDigest digest = MessageDigest.getInstance("SHA-256"); digest.update(bytes, 0, bytes.length); byte[] digestBytes = digest.digest(); @@ -69,6 +69,6 @@ public final static String encodeBase64(String str) { return null; } byte[] data = str.getBytes(Charset.forName("ISO-8859-1")); - return Base64.encodeToString(data, Base64.NO_PADDING); + return Base64.encodeToString(data, Base64.URL_SAFE | Base64.NO_WRAP | Base64.NO_PADDING); } }