diff --git a/pom.xml b/pom.xml
index 38a4a03b..f7fe3f7e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -86,6 +86,11 @@
dom4j
${dom4j.version}
+
+ com.itextpdf
+ itext-saslprep
+ 1.0.0
+
com.itextpdf
pdftest
diff --git a/src/main/java/com/itextpdf/rups/model/PdfFile.java b/src/main/java/com/itextpdf/rups/model/PdfFile.java
index 18ebfb21..2a44445e 100644
--- a/src/main/java/com/itextpdf/rups/model/PdfFile.java
+++ b/src/main/java/com/itextpdf/rups/model/PdfFile.java
@@ -48,6 +48,7 @@ This file is part of the iText (R) project.
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.ReaderProperties;
+import com.itextpdf.passwordprep.PdfPasswordUtil;
import javax.swing.*;
import java.io.*;
@@ -137,8 +138,8 @@ public void selectInitialValue() {
pane.createDialog(null, "Enter the User or Owner Password of this PDF file").setVisible(true);
- // TODO RES-427: SASLprep & truncate this
- return new String(passwordField.getPassword()).getBytes(StandardCharsets.UTF_8);
+ String passwordString = new String(passwordField.getPassword());
+ return PdfPasswordUtil.preparePasswordForOpen(passwordString);
}
/**