Sun.misc.base64Encoder an Java.util.base64 MigrationsproblemJava

Java-Forum
Anonymous
 Sun.misc.base64Encoder an Java.util.base64 Migrationsproblem

Post by Anonymous »

Es gibt ein altes Projekt bei der Arbeit, das vor Java 8 in einer Version geschrieben wurde. Wir migrieren dieses Projekt auf Java 11. Im alten Projekt gibt es eine Methode, die eine Kennwortvariable aufnimmt und es in eine Base64 -String hasht. : < /p>

Code: Select all

            String password = "123456";
MessageDigest digest = MessageDigest.getInstance("SHA-1");
digest.reset();
BASE64Decoder decoder = new BASE64Decoder();
byte[] bytes = decoder.decodeBuffer(password);
digest.update(bytes);
byte[] input = /* some digest operations here */
BASE64Encoder encoder = new BASE64Encoder();
String result = encoder.encode(input);
< /code>
Da ich gebeten wurde, diesen Code genau so zu kopieren, übertrage ich ihn an das Java 11 -Projekt ohne Refactoring unter Verwendung der Java.util.base64 -Klassen wie folgt: < /p>
            String password = "123456";
MessageDigest digest = MessageDigest.getInstance("SHA-1");
digest.reset();
byte[] bytes = Base64.getDecoder().decode(password);
digest.update(bytes);
byte[] input = /* some digest operations here */
String result = Base64.getEncoder().encodeToString(input);
Das Problem hier ist Folgendes:
Bei altem Projekt, das von decoder.decodeBuffer (Passwort) erzeugte Byte -Array;
Der Betrieb ist wie folgt: [-41, 109, -8, -25, -83, -8]. Base64.GetDeCoder (). Decode (Passwort); Der Vorgang ist wie folgt: [-41, 109, -8, -25]. Während die alte Bibliothek ein 6-stelliges Array erstellt, erstellt die neue Bibliothek ein 4-stelliges Array. Obwohl diese vier Ziffern die gleichen sind wie die anderen, fehlen 2 Bytes. Dies führt dazu, dass die Basis64 -Zeichenfolge in den beiden Projekten unterschiedlich sein. Wie kann ich das lösen? Wie kann ich sicherstellen, dass der Dekodierungsbetrieb der neuen Base64 -Klasse das gleiche Ergebnis wie die Operation in der alten Klasse liefert? Sei gleich, kann es aber nicht erfolgen.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post