Skip to content

Commit 1405378

Browse files
authored
fix: Remove Base64 padding in DefaultPKCEProvider (#1375)
* fix: Remove Base64 padding in DefaultPKCEProvider Fixes #1373.
1 parent 3a546fb commit 1405378

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

oauth2_http/java/com/google/auth/oauth2/DefaultPKCEProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ private class CodeChallenge {
9090

9191
byte[] digest = md.digest();
9292

93-
this.codeChallenge = Base64.getUrlEncoder().encodeToString(digest);
93+
this.codeChallenge = Base64.getUrlEncoder().encodeToString(digest).replace("=", "");
9494
this.codeChallengeMethod = "S256";
9595
} catch (NoSuchAlgorithmException e) {
9696
this.codeChallenge = codeVerifier;

oauth2_http/javatests/com/google/auth/oauth2/DefaultPKCEProviderTest.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
package com.google.auth.oauth2;
3333

3434
import static org.junit.Assert.assertEquals;
35+
import static org.junit.Assert.assertFalse;
3536

3637
import java.security.MessageDigest;
3738
import java.security.NoSuchAlgorithmException;
@@ -52,10 +53,17 @@ public void testPkceExpected() throws NoSuchAlgorithmException {
5253

5354
byte[] digest = md.digest();
5455

55-
String expectedCodeChallenge = Base64.getUrlEncoder().encodeToString(digest);
56+
String expectedCodeChallenge = Base64.getUrlEncoder().encodeToString(digest).replace("=", "");
5657
String expectedCodeChallengeMethod = "S256";
5758

5859
assertEquals(pkce.getCodeChallenge(), expectedCodeChallenge);
5960
assertEquals(pkce.getCodeChallengeMethod(), expectedCodeChallengeMethod);
6061
}
62+
63+
@Test
64+
public void testNoBase64Padding() throws NoSuchAlgorithmException {
65+
PKCEProvider pkce = new DefaultPKCEProvider();
66+
assertFalse(pkce.getCodeChallenge().endsWith("="));
67+
assertFalse(pkce.getCodeChallenge().contains("="));
68+
}
6169
}

0 commit comments

Comments
 (0)