I sistemi base-n hanno n simboli diversi nel loro alfabeto. Base 2 è solo uno e zero, base 10 ha da 0 a 9. Base 64 ha 64 caratteri univoci, come definito nel suo RFC.
Se vedi un campo di base64_custom_key
lungo di 64 caratteri, direi che è l'alfabeto che devi usare. Farò un esempio.
L'alfabeto normale è A-Z, a-z, 0-9, +
e ,
. Se base64_custom_key
contiene ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,
, non devi fare nulla perché quello è l'originale. Ma poiché l'originale non decodifica correttamente, suppongo che non sia così.
Se base64_custom_key
contiene ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123459876+,
(tutto normale, tranne la parte 9876
), potresti dover sostituire 9 con 6, 8 con 7, 7 con 8 e 6 con 9, quindi eseguire il decodificatore. La codifica base64 di zzz
è enp6
, ma con questa chiave personalizzata sarebbe enp9
. Per decodificarlo, dobbiamo sostituire il 9 con un 6 come descritto, e puoi decodificarlo normalmente.
Ha senso?
Potrebbe non funzionare, sto solo indovinando cosa potrebbe significare e come potrebbe essere necessario utilizzare quel campo personalizzato. È certamente un sistema non standard e non sicuro, se è stato concepito per la crittografia (anche se non riesco a immaginare un altro scopo).